0000950170-24-087850.txt : 20240730 0000950170-24-087850.hdr.sgml : 20240730 20240730160940 ACCESSION NUMBER: 0000950170-24-087850 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 83 CONFORMED PERIOD OF REPORT: 20240630 FILED AS OF DATE: 20240730 DATE AS OF CHANGE: 20240730 FILER: COMPANY DATA: COMPANY CONFORMED NAME: CECO ENVIRONMENTAL CORP CENTRAL INDEX KEY: 0000003197 STANDARD INDUSTRIAL CLASSIFICATION: INDUSTRIAL & COMMERCIAL FANS & BLOWERS & AIR PURIFYING EQUIP [3564] ORGANIZATION NAME: 06 Technology IRS NUMBER: 132566064 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 000-07099 FILM NUMBER: 241157443 BUSINESS ADDRESS: STREET 1: 14651 NORTH DALLAS PARKWAY STREET 2: SUITE 500 CITY: DALLAS STATE: TX ZIP: 75254 BUSINESS PHONE: (513) 458-2600 MAIL ADDRESS: STREET 1: 4625 RED BANK ROAD STREET 2: SUITE 200 CITY: CINCINNATI STATE: OH ZIP: 45227 FORMER COMPANY: FORMER CONFORMED NAME: API ENTERPRISES INC DATE OF NAME CHANGE: 19920703 FORMER COMPANY: FORMER CONFORMED NAME: ALARM PRODUCTS INTERNATIONAL INC DATE OF NAME CHANGE: 19851210 10-Q 1 ceco-20240630.htm 10-Q 10-Q
--12-31falseQ200000031970000003197ceco:KemcoSystemsCoLlcMember2024-01-012024-06-300000003197us-gaap:CommonStockMember2024-06-300000003197us-gaap:AdditionalPaidInCapitalMember2023-04-012023-06-300000003197us-gaap:RetainedEarningsMember2022-12-310000003197us-gaap:OperatingSegmentsMemberceco:EngineeredSystemsMember2023-04-012023-06-300000003197us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMemberceco:CreditAgreementMembersrt:MinimumMember2024-01-012024-06-300000003197us-gaap:OperatingSegmentsMember2024-01-012024-06-300000003197us-gaap:PensionPlansDefinedBenefitMember2024-04-012024-06-300000003197us-gaap:StandbyLettersOfCreditMember2024-06-300000003197us-gaap:OperatingSegmentsMemberus-gaap:IntersubsegmentEliminationsMember2023-01-012023-06-300000003197ceco:CreditAgreementMemberceco:EffoxFlextorMadderMember2022-03-070000003197us-gaap:NoncontrollingInterestMember2023-06-300000003197ceco:SeniorDebtMember2023-12-310000003197ceco:EngineeredSystemsMember2024-04-012024-06-300000003197ceco:TranscendSolutionMemberus-gaap:CustomerListsMember2024-06-300000003197us-gaap:DomesticCountryMember2024-01-012024-06-300000003197us-gaap:CorporateAndOtherMember2024-06-300000003197us-gaap:NoncontrollingInterestMember2024-06-300000003197us-gaap:CommonStockMember2024-03-310000003197ceco:BankGuaranteesMember2023-03-310000003197us-gaap:IntersegmentEliminationMemberceco:IndustrialProcessSolutionsMember2023-01-012023-06-300000003197ceco:IndustrialProcessSolutionsMember2023-04-012023-06-300000003197ceco:SeniorDebtMember2024-06-300000003197ceco:GeneralRubberLlcMember2024-01-012024-06-300000003197us-gaap:TechnologyBasedIntangibleAssetsMember2023-12-310000003197us-gaap:AdditionalPaidInCapitalMember2023-03-310000003197us-gaap:RetainedEarningsMember2023-06-300000003197us-gaap:IntersegmentEliminationMemberceco:EngineeredSystemsMember2024-04-012024-06-300000003197us-gaap:RetainedEarningsMember2023-04-012023-06-300000003197ceco:EuroDenominatedBankGuaranteeMemberceco:NetherlandsFacilityMember2024-06-300000003197srt:MinimumMember2024-06-300000003197us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-06-3000000031972023-01-012023-12-3100000031972024-04-012024-06-300000003197us-gaap:AdditionalPaidInCapitalMember2022-12-310000003197ceco:TermDebtMember2024-06-300000003197us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-3100000031972024-01-012024-06-300000003197ceco:TranscendSolutionMember2024-01-012024-06-300000003197ceco:TranscendSolutionMemberceco:TechnologyMember2024-06-300000003197us-gaap:CorporateAndOtherMember2023-04-012023-06-300000003197us-gaap:AdditionalPaidInCapitalMember2023-06-300000003197srt:DirectorMember2024-01-012024-06-300000003197us-gaap:OperatingSegmentsMemberceco:IndustrialProcessSolutionsMemberus-gaap:IntersubsegmentEliminationsMember2024-04-012024-06-300000003197us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-01-012024-03-310000003197us-gaap:IntersegmentEliminationMemberceco:IndustrialProcessSolutionsMember2023-04-012023-06-300000003197ceco:EngineeredSystemsMember2023-01-012023-06-300000003197us-gaap:NoncontrollingInterestMember2022-12-310000003197ceco:CreditAgreementMember2023-12-310000003197ceco:FederalFundsRateMember2024-01-012024-06-300000003197us-gaap:NoncontrollingInterestMember2023-01-012023-03-310000003197ceco:EffoxFlextorMadderMember2024-01-012024-06-300000003197us-gaap:TechnologyBasedIntangibleAssetsMember2024-06-300000003197ceco:GeneralRubberLlcMember2023-01-012023-06-300000003197us-gaap:OperatingSegmentsMemberus-gaap:IntersubsegmentEliminationsMember2023-04-012023-06-300000003197us-gaap:OperatingSegmentsMemberceco:EngineeredSystemsMember2024-01-012024-06-300000003197ceco:EffoxFlextorMadderMember2023-12-310000003197us-gaap:RestrictedStockUnitsRSUMember2024-01-012024-06-3000000031972024-07-180000003197ceco:TranscendSolutionMember2023-03-312023-03-310000003197us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-03-310000003197us-gaap:CustomerListsMember2024-06-300000003197us-gaap:OperatingSegmentsMemberceco:EngineeredSystemsMemberus-gaap:IntersubsegmentEliminationsMember2024-01-012024-06-300000003197ceco:CustomerListsAndTradeNameMemberceco:Ds21CoLtdMember2024-06-300000003197us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-12-310000003197us-gaap:BaseRateMembersrt:MaximumMember2024-01-012024-06-300000003197us-gaap:OperatingSegmentsMemberceco:EngineeredSystemsMemberus-gaap:IntersubsegmentEliminationsMember2024-04-012024-06-300000003197us-gaap:DebtInstrumentRedemptionPeriodThreeMemberceco:SeniorSecuredTermLoanMember2024-01-012024-06-300000003197us-gaap:CommonStockMember2024-04-012024-06-300000003197us-gaap:RetainedEarningsMember2024-03-310000003197ceco:BankGuaranteesMember2024-06-3000000031972023-03-310000003197us-gaap:RevolvingCreditFacilityMember2024-06-300000003197ceco:Ds21CoLtdMemberus-gaap:TradeNamesMember2024-06-300000003197ceco:IndustrialProcessSolutionsMember2023-01-012023-06-300000003197us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-03-310000003197us-gaap:RetainedEarningsMember2023-03-310000003197ceco:EngineeredSystemsMember2023-04-012023-06-300000003197us-gaap:OperatingSegmentsMember2023-01-012023-06-300000003197us-gaap:CustomerListsMember2023-12-310000003197us-gaap:AccruedLiabilitiesMember2024-06-300000003197ceco:IndustrialProcessSolutionsMember2024-06-300000003197ceco:SeniorSecuredTermLoanMember2023-12-310000003197us-gaap:RetainedEarningsMember2023-12-310000003197us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-04-012024-06-300000003197ceco:EffoxFlextorMadderMember2023-04-012023-06-300000003197us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMemberceco:CreditAgreementMembersrt:MaximumMember2024-01-012024-06-300000003197ceco:KemcoSystemsCoLlcMemberus-gaap:TradeNamesMember2024-06-300000003197ceco:CreditFacilityMember2023-12-310000003197us-gaap:RestrictedStockUnitsRSUMember2023-04-012023-06-300000003197us-gaap:DebtInstrumentRedemptionPeriodTwoMemberceco:SeniorSecuredTermLoanMember2024-01-012024-06-300000003197ceco:EuroDenominatedBankGuaranteeMemberceco:NetherlandsFacilityMember2023-12-3100000031972023-12-310000003197us-gaap:CommonStockMember2023-12-310000003197us-gaap:RestrictedStockUnitsRSUMember2024-04-012024-06-300000003197ceco:KemcoSystemsCoLlcMember2023-03-312023-03-3100000031972023-01-012023-03-310000003197ceco:StateAndForeignAuthoritiesMember2024-01-012024-06-300000003197us-gaap:AdditionalPaidInCapitalMember2024-03-310000003197us-gaap:AdditionalPaidInCapitalMember2024-04-012024-06-300000003197us-gaap:NoncontrollingInterestMember2024-04-012024-06-300000003197ceco:EffoxFlextorMadderMember2023-01-012023-06-300000003197us-gaap:TradeNamesMember2023-12-310000003197us-gaap:BaseRateMembersrt:MinimumMember2024-01-012024-06-300000003197us-gaap:CommonStockMember2023-01-012023-03-310000003197us-gaap:AdditionalPaidInCapitalMember2023-12-310000003197ceco:KemcoSystemsCoLlcMemberus-gaap:CustomerListsMember2024-06-300000003197us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-03-310000003197ceco:IndustrialProcessSolutionsMember2024-04-012024-06-300000003197us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMembersrt:MaximumMember2024-06-3000000031972024-01-012024-03-310000003197ceco:EngineeredSystemsMember2024-01-012024-06-300000003197us-gaap:StandbyLettersOfCreditMember2023-12-310000003197us-gaap:IntersegmentEliminationMemberceco:IndustrialProcessSolutionsMember2024-04-012024-06-300000003197ceco:KemcoSystemsCoLlcMember2023-08-232023-08-230000003197us-gaap:OtherPensionPlansPostretirementOrSupplementalPlansDefinedBenefitMember2024-01-012024-06-300000003197us-gaap:OtherPensionPlansPostretirementOrSupplementalPlansDefinedBenefitMember2023-04-012023-06-300000003197us-gaap:NoncontrollingInterestMember2023-03-310000003197us-gaap:PensionPlansDefinedBenefitMember2024-01-012024-06-300000003197us-gaap:CommonStockMember2023-06-300000003197ceco:GeneralRubberLlcMember2023-04-012023-06-300000003197ceco:CreditFacilityMember2024-06-300000003197us-gaap:TradeNamesMember2024-06-300000003197us-gaap:PensionPlansDefinedBenefitMember2023-04-012023-06-300000003197us-gaap:LineOfCreditMember2024-06-300000003197us-gaap:CorporateAndOtherMember2024-01-012024-06-300000003197us-gaap:OperatingSegmentsMemberceco:EngineeredSystemsMember2023-01-012023-06-3000000031972022-12-3100000031972022-05-100000003197us-gaap:RestrictedStockUnitsRSUMember2023-01-012023-06-300000003197ceco:IndustrialProcessSolutionsMember2024-01-012024-06-300000003197srt:DirectorMember2023-04-012023-06-300000003197us-gaap:PensionPlansDefinedBenefitMember2023-01-012023-06-300000003197us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2024-01-012024-06-3000000031972023-01-010000003197ceco:EffoxFlextorMadderMember2024-04-012024-06-300000003197ceco:ForeignCurrencyTranslationAdjustmentMember2023-12-310000003197us-gaap:OperatingSegmentsMemberceco:EngineeredSystemsMemberus-gaap:IntersubsegmentEliminationsMember2023-01-012023-06-300000003197us-gaap:OperatingSegmentsMemberceco:IndustrialProcessSolutionsMemberus-gaap:IntersubsegmentEliminationsMember2023-04-012023-06-300000003197us-gaap:OperatingSegmentsMemberus-gaap:IntersubsegmentEliminationsMember2024-01-012024-06-300000003197us-gaap:AdditionalPaidInCapitalMember2024-06-300000003197ceco:SeniorSecuredTermLoanMemberus-gaap:DebtInstrumentRedemptionPeriodOneMember2024-01-012024-06-300000003197us-gaap:OperatingSegmentsMemberus-gaap:IntersubsegmentEliminationsMember2024-04-012024-06-300000003197us-gaap:CorporateAndOtherMember2024-04-012024-06-300000003197ceco:SeniorSecuredTermLoanMember2024-06-300000003197us-gaap:RevolvingCreditFacilityMember2023-12-310000003197us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-04-012023-06-300000003197us-gaap:AsbestosIssueMember2023-12-310000003197srt:SubsidiariesMember2024-01-012024-06-300000003197us-gaap:RevolvingCreditFacilityMember2023-03-310000003197us-gaap:AccruedLiabilitiesMember2023-12-310000003197ceco:GeneralRubberLlcMember2024-04-012024-06-300000003197ceco:KemcoSystemsCoLlcMember2024-06-300000003197us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMembersrt:MinimumMember2024-06-300000003197us-gaap:OtherPensionPlansPostretirementOrSupplementalPlansDefinedBenefitMember2024-04-012024-06-300000003197us-gaap:NoncontrollingInterestMember2024-03-310000003197us-gaap:CommonStockMember2023-04-012023-06-300000003197us-gaap:NoncontrollingInterestMember2023-04-012023-06-300000003197us-gaap:OperatingSegmentsMemberceco:IndustrialProcessSolutionsMember2024-01-012024-06-300000003197us-gaap:OperatingSegmentsMember2024-04-012024-06-300000003197us-gaap:CommonStockMember2023-03-310000003197us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-06-300000003197ceco:KemcoSystemsCoLlcMember2023-08-230000003197ceco:IndustrialProcessSolutionsMember2023-12-310000003197us-gaap:AccruedLiabilitiesMember2023-01-010000003197ceco:EffoxFlextorMadderMember2024-06-300000003197us-gaap:AsbestosIssueMember2024-06-300000003197us-gaap:StandbyLettersOfCreditMemberceco:EffoxFlextorMadderMember2024-06-300000003197us-gaap:SubsequentEventMember2024-07-292024-07-290000003197ceco:EngineeredSystemsMember2024-06-300000003197us-gaap:AdditionalPaidInCapitalMember2024-01-012024-03-3100000031972023-06-300000003197us-gaap:CorporateAndOtherMember2023-12-310000003197us-gaap:CommonStockMember2022-12-310000003197us-gaap:CommonStockMember2024-01-012024-03-310000003197us-gaap:LineOfCreditMember2023-12-310000003197us-gaap:OperatingSegmentsMember2023-04-012023-06-300000003197us-gaap:CorporateAndOtherMember2023-01-012023-06-300000003197us-gaap:OperatingSegmentsMemberceco:IndustrialProcessSolutionsMemberus-gaap:IntersubsegmentEliminationsMember2024-01-012024-06-300000003197us-gaap:IntersegmentEliminationMemberceco:IndustrialProcessSolutionsMember2024-01-012024-06-300000003197ceco:MalvarEngineeringLimitedMember2023-01-100000003197ceco:MalvarEngineeringLimitedMember2023-01-102023-01-100000003197us-gaap:IntersegmentEliminationMemberceco:EngineeredSystemsMember2024-01-012024-06-300000003197ceco:EuroDenominatedBankGuaranteeMemberceco:BankGuaranteesMember2024-06-300000003197srt:SubsidiariesMember2023-01-012023-12-310000003197us-gaap:OperatingSegmentsMemberceco:IndustrialProcessSolutionsMember2023-04-012023-06-300000003197ceco:EuroDenominatedBankGuaranteeMemberceco:BankGuaranteesMember2023-12-310000003197us-gaap:OperatingSegmentsMemberceco:EngineeredSystemsMemberus-gaap:IntersubsegmentEliminationsMember2023-04-012023-06-300000003197ceco:BankGuaranteesMember2023-12-310000003197us-gaap:StandbyLettersOfCreditMemberceco:EffoxFlextorMadderMember2023-12-310000003197us-gaap:AdditionalPaidInCapitalMember2023-01-012023-03-310000003197srt:MaximumMember2024-06-300000003197us-gaap:OperatingSegmentsMemberceco:IndustrialProcessSolutionsMemberus-gaap:IntersubsegmentEliminationsMember2023-01-012023-06-300000003197us-gaap:NoncontrollingInterestMember2024-01-012024-03-310000003197ceco:EngineeredSystemsMember2023-12-310000003197us-gaap:RetainedEarningsMember2024-04-012024-06-3000000031972023-04-012023-06-300000003197us-gaap:OperatingSegmentsMemberceco:EngineeredSystemsMember2024-04-012024-06-300000003197srt:DirectorMember2023-01-012023-06-300000003197us-gaap:RetainedEarningsMember2023-01-012023-03-310000003197ceco:KemcoSystemsCoLlcMemberceco:TechnologyMember2024-06-300000003197ceco:MalvarEngineeringLimitedMemberus-gaap:CustomerListsMember2024-06-300000003197us-gaap:RetainedEarningsMember2024-01-012024-03-310000003197ceco:CreditAgreementMember2024-06-300000003197ceco:ForeignCurrencyTranslationAdjustmentMember2024-06-300000003197ceco:SeniorSecuredTermLoanMember2024-01-012024-06-300000003197ceco:TranscendSolutionMember2023-03-310000003197ceco:TermDebtMember2023-12-3100000031972023-01-012023-06-300000003197us-gaap:IntersegmentEliminationMemberceco:EngineeredSystemsMember2023-04-012023-06-300000003197ceco:MalvarEngineeringLimitedMember2024-01-012024-06-300000003197ceco:TranscendSolutionMemberus-gaap:TradeNamesMember2024-06-300000003197us-gaap:RetainedEarningsMember2024-06-300000003197srt:DirectorMember2024-04-012024-06-300000003197us-gaap:OperatingSegmentsMemberceco:IndustrialProcessSolutionsMember2024-04-012024-06-3000000031972024-03-310000003197us-gaap:OtherPensionPlansPostretirementOrSupplementalPlansDefinedBenefitMember2023-01-012023-06-300000003197us-gaap:OperatingSegmentsMemberceco:IndustrialProcessSolutionsMember2023-01-012023-06-300000003197us-gaap:NoncontrollingInterestMember2023-12-3100000031972024-06-300000003197us-gaap:IntersegmentEliminationMemberceco:EngineeredSystemsMember2023-01-012023-06-30iso4217:EURxbrli:purexbrli:sharesceco:Caseiso4217:USDiso4217:USDxbrli:shares

 

 

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

or

Transition Report Pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934

For the transition period from to

Commission File No. 0-07099

 

img58591874_0.jpg 

CECO ENVIRONMENTAL CORP.

(Exact name of registrant as specified in its charter)

 

 

Delaware

 

13-2566064

(State or other jurisdiction of

Incorporation or organization)

 

(IRS Employer

Identification No.)

 

14651 North Dallas Parkway

Suite 500

Dallas, Texas

 

 

 

75254

(Address of principal executive offices)

 

(Zip Code)

 

Registrant’s telephone number, including area code: (214) 357-6181

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

Title of each class

Trading Symbol

Name of each exchange on which registered

Common Stock, par value $0.01 per share

CECO

The NASDAQ Stock Market LLC

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

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

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

 

Large accelerated filer

Accelerated filer

 

 

 

 

Non-accelerated filer

Smaller reporting company

Emerging growth company

 

 

 

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

 

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

The number of shares outstanding of each of the issuer’s classes of common equity, as of the latest practical date: 34,960,522 shares of common stock, par value $0.01 per share, as of July 18, 2024.

 


 

CECO ENVIRONMENTAL CORP. AND SUBSIDIARIES

QUARTERLY REPORT ON FORM 10-Q

For the quarter ended June 30, 2024

Table of Contents

 

Part I –

Financial Information

 

2

 

 

Item 1. Financial Statements

 

2

 

 

Condensed Consolidated Balance Sheets as of June 30, 2024 and December 31, 2023

 

2

 

 

Condensed Consolidated Statements of Income for the three and six months ended June 30, 2024 and 2023

 

3

 

 

Condensed Consolidated Statements of Comprehensive Income for the three and six months ended June 30, 2024 and 2023

 

4

 

 

 

 

 

Condensed Consolidated Statements of Shareholders’ Equity for the six months ended June 30, 2024 and 2023

 

5

 

 

Condensed Consolidated Statements of Cash Flows for the six months ended June 30, 2024 and 2023

 

6

 

 

Notes to 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

 

27

 

 

Item 4. Controls and Procedures

 

28

 

 

Part II –

Other Information

 

30

 

 

Item 1. Legal Proceedings

 

30

 

 

Item 1A. Risk Factors

 

30

 

 

Item 2. Unregistered Sales of Equity Securities and Use of Proceeds

 

30

 

 

Item 3. Defaults Upon Senior Securities

 

30

 

 

Item 4. Mine Safety Disclosures

 

30

 

 

Item 5. Other Information

 

30

 

 

Item 6. Exhibits

 

31

 

 

Signatures

 

32

 

 

 

1


 

CECO ENVIRONMENTAL CORP. AND SUBSIDIARIES

PART I – FINANCIAL INFORMATION

 

ITEM 1. FINANCIAL STATEMENTS

 

CONDENSED CONSOLIDATED BALANCE SHEETS

 

(in thousands, except per share data)

 

(unaudited)
June 30, 2024

 

 

December 31, 2023

 

ASSETS

 

 

 

 

 

 

Current assets:

 

 

 

 

 

 

Cash and cash equivalents

 

$

36,523

 

 

$

54,779

 

Restricted cash

 

 

391

 

 

 

669

 

Accounts receivable, net allowances of $6,582 and $6,460

 

 

126,974

 

 

 

112,733

 

Costs and estimated earnings in excess of billings on uncompleted contracts

 

 

55,378

 

 

 

66,574

 

Inventories, net

 

 

38,475

 

 

 

34,089

 

Prepaid expenses and other current assets

 

 

20,414

 

 

 

11,769

 

Prepaid income taxes

 

 

3,215

 

 

 

824

 

Total current assets

 

 

281,370

 

 

 

281,437

 

Property, plant and equipment, net

 

 

30,290

 

 

 

26,237

 

Right-of-use assets from operating leases

 

 

14,137

 

 

 

16,256

 

Goodwill

 

 

211,144

 

 

 

211,326

 

Intangible assets – finite life, net

 

 

46,086

 

 

 

50,461

 

Intangible assets – indefinite life

 

 

9,522

 

 

 

9,570

 

Deferred income taxes

 

 

263

 

 

 

304

 

Deferred charges and other assets

 

 

5,321

 

 

 

4,700

 

Total assets

 

$

598,133

 

 

$

600,291

 

LIABILITIES AND SHAREHOLDERS’ EQUITY

 

 

 

 

 

 

Current liabilities:

 

 

 

 

 

 

Current portion of debt

 

$

10,580

 

 

$

10,488

 

Accounts payable

 

 

90,944

 

 

 

87,691

 

Accrued expenses

 

 

44,736

 

 

 

44,301

 

Billings in excess of costs and estimated earnings on uncompleted contracts

 

 

59,851

 

 

 

56,899

 

Notes payable

 

 

 

 

 

2,500

 

Income taxes payable

 

 

1,212

 

 

 

1,227

 

Total current liabilities

 

 

207,323

 

 

 

203,106

 

Other liabilities

 

 

11,196

 

 

 

12,644

 

Debt, less current portion

 

 

120,246

 

 

 

126,795

 

Deferred income tax liability, net

 

 

9,949

 

 

 

8,838

 

Operating lease liabilities

 

 

9,607

 

 

 

11,417

 

Total liabilities

 

 

358,321

 

 

 

362,800

 

Commitments and contingencies (See Note 14)

 

 

 

 

 

 

Shareholders’ equity:

 

 

 

 

 

 

Preferred stock, $.01 par value; 10,000 shares authorized, none issued

 

 

 

 

 

 

 Common stock, $.01 par value; 100,000,000 shares authorized, 34,923,701 and
34,835,293 shares issued and outstanding at June 30, 2024 and December 31, 2023, respectively

 

 

349

 

 

 

348

 

Capital in excess of par value

 

 

251,560

 

 

 

254,956

 

Accumulated loss

 

 

(394

)

 

 

(6,387

)

Accumulated other comprehensive loss

 

 

(16,476

)

 

 

(16,274

)

Total CECO shareholders' equity

 

 

235,039

 

 

 

232,643

 

Noncontrolling interest

 

 

4,773

 

 

 

4,848

 

Total shareholders' equity

 

 

239,812

 

 

 

237,491

 

Total liabilities and shareholders' equity

 

$

598,133

 

 

$

600,291

 

 

The notes to the condensed consolidated financial statements are an integral part of the above statements.

2


 

CONDENSED CONSOLIDATED STATEMENTS OF INCOME

(unaudited)

 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands, except per share data)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net sales

 

$

137,522

 

 

$

129,181

 

 

$

263,854

 

 

$

241,744

 

Cost of sales

 

 

88,475

 

 

 

89,364

 

 

 

169,675

 

 

 

167,034

 

Gross profit

 

 

49,047

 

 

 

39,817

 

 

 

94,179

 

 

 

74,710

 

Selling and administrative expenses

 

 

36,465

 

 

 

28,451

 

 

 

71,372

 

 

 

55,644

 

Amortization and earnout expenses

 

 

2,210

 

 

 

2,273

 

 

 

4,419

 

 

 

4,020

 

Acquisition and integration expenses

 

 

476

 

 

 

332

 

 

 

666

 

 

 

824

 

Executive transition expenses

 

 

 

 

 

158

 

 

 

 

 

 

158

 

Restructuring expenses

 

 

414

 

 

 

 

 

 

554

 

 

 

 

Asbestos litigation expenses

 

 

225

 

 

 

 

 

 

225

 

 

 

 

Income from operations

 

 

9,257

 

 

 

8,603

 

 

 

16,943

 

 

 

14,064

 

Other (expense) income, net

 

 

(679

)

 

 

121

 

 

 

(2,192

)

 

 

(453

)

Interest expense

 

 

(3,254

)

 

 

(3,750

)

 

 

(6,667

)

 

 

(6,158

)

Income before income taxes

 

 

5,324

 

 

 

4,974

 

 

 

8,084

 

 

 

7,453

 

Income tax expense

 

 

394

 

 

 

984

 

 

 

1,062

 

 

 

993

 

Net income

 

 

4,930

 

 

 

3,990

 

 

 

7,022

 

 

 

6,460

 

Noncontrolling interest

 

 

(445

)

 

 

(266

)

 

 

(1,029

)

 

 

(759

)

Net income attributable to CECO Environmental Corp.

 

$

4,485

 

 

$

3,724

 

 

$

5,993

 

 

$

5,701

 

Earnings per share:

 

 

 

 

 

 

 

 

 

 

 

 

Basic

 

$

0.13

 

 

$

0.11

 

 

$

0.17

 

 

$

0.17

 

Diluted

 

$

0.12

 

 

$

0.11

 

 

$

0.17

 

 

$

0.16

 

Weighted average number of common shares outstanding:

 

 

 

 

 

 

 

 

 

 

 

 

Basic

 

 

34,918,412

 

 

 

34,619,216

 

 

 

34,881,625

 

 

 

34,531,050

 

Diluted

 

 

36,302,664

 

 

 

35,143,782

 

 

 

36,239,331

 

 

 

35,171,727

 

 

The notes to the condensed consolidated financial statements are an integral part of the above statements.

 

3


 

CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME

(unaudited)

 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

2024

 

 

2023

 

 

2024

 

 

2023

 

Net income

$

4,930

 

 

$

3,990

 

 

$

7,022

 

 

$

6,460

 

Other comprehensive income, net of tax:

 

 

 

 

 

 

 

 

 

 

 

Foreign currency translation (loss) gain

 

(856

)

 

 

139

 

 

 

(202

)

 

 

905

 

Comprehensive income

$

4,074

 

 

$

4,129

 

 

$

6,820

 

 

$

7,365

 

 

The notes to the condensed consolidated financial statements are an integral part of the above statements.

 

4


 

CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS’ EQUITY

(unaudited)

 

 

 

Common Stock

 

 

Capital in
excess of

 

 

Accumulated

 

 

Accumulated
Other
Comprehensive

 

 

Non-controlling

 

 

Total
Shareholders'

 

 

 

Shares

 

 

Amount

 

 

par value

 

 

Loss

 

 

Loss

 

 

interest

 

 

Equity

 

Balance December 31, 2023

 

 

34,835

 

 

$

348

 

 

$

254,956

 

 

$

(6,387

)

 

$

(16,274

)

 

$

4,848

 

 

$

237,491

 

Net income for the three months ended March 31, 2024

 

 

 

 

 

 

 

 

 

 

 

1,508

 

 

 

 

 

 

585

 

 

 

2,093

 

Exercise of stock options

 

 

10

 

 

 

 

 

 

113

 

 

 

 

 

 

 

 

 

 

 

 

113

 

Restricted stock units issued

 

 

195

 

 

 

2

 

 

 

(2,204

)

 

 

 

 

 

 

 

 

 

 

 

(2,202

)

Share based compensation earned

 

 

12

 

 

 

 

 

 

1,808

 

 

 

 

 

 

 

 

 

 

 

 

1,808

 

Common stock repurchase and retirement

 

 

(144

)

 

 

(1

)

 

 

(3,000

)

 

 

 

 

 

 

 

 

 

 

 

(3,001

)

Translation gain

 

 

 

 

 

 

 

 

 

 

 

 

 

 

654

 

 

 

 

 

 

654

 

Noncontrolling interest distributions

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(804

)

 

 

(804

)

Balance March 31, 2024

 

 

34,908

 

 

$

349

 

 

$

251,673

 

 

$

(4,879

)

 

$

(15,620

)

 

$

4,629

 

 

$

236,152

 

Net income for the three months ended June 30, 2024

 

 

 

 

 

 

 

 

 

 

 

4,485

 

 

 

 

 

 

445

 

 

 

4,930

 

Exercise of stock options

 

 

10

 

 

 

 

 

 

161

 

 

 

 

 

 

 

 

 

 

 

 

161

 

Restricted stock units issued

 

 

92

 

 

 

1

 

 

 

(466

)

 

 

 

 

 

 

 

 

 

 

 

(465

)

Share based compensation earned

 

 

 

 

 

 

 

 

2,191

 

 

 

 

 

 

 

 

 

 

 

 

2,191

 

Common stock repurchase and retirement

 

 

(86

)

 

 

(1

)

 

 

(1,999

)

 

 

 

 

 

 

 

 

 

 

 

(2,000

)

Translation loss

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(856

)

 

 

 

 

 

(856

)

Noncontrolling interest distributions

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(301

)

 

 

(301

)

Balance June 30, 2024

 

 

34,924

 

 

$

349

 

 

$

251,560

 

 

$

(394

)

 

$

(16,476

)

 

$

4,773

 

 

$

239,812

 

 

 

 

 

Common Stock

 

 

Capital in
excess of

 

 

Accumulated

 

 

Accumulated
Other
Comprehensive

 

 

Non-controlling

 

 

Total
Shareholders'

 

 

 

Shares

 

 

Amount

 

 

par value

 

 

Loss

 

 

Loss

 

 

interest

 

 

Equity

 

Balance December 31, 2022

 

 

34,382

 

 

$

344

 

 

$

250,174

 

 

$

(19,298

)

 

$

(17,996

)

 

$

4,924

 

 

$

218,148

 

Net income for the three months ended March 31, 2023

 

 

 

 

 

 

 

 

 

 

 

1,978

 

 

 

 

 

 

491

 

 

 

2,469

 

Exercise of stock options

 

 

52

 

 

 

1

 

 

 

611

 

 

 

 

 

 

 

 

 

 

 

 

612

 

Restricted stock units issued

 

 

123

 

 

 

1

 

 

 

(622

)

 

 

 

 

 

 

 

 

 

 

 

(621

)

Share based compensation earned

 

 

 

 

 

 

 

 

808

 

 

 

 

 

 

 

 

 

 

 

 

808

 

Translation gain

 

 

 

 

 

 

 

 

 

 

 

 

 

 

766

 

 

 

 

 

 

766

 

Balance March 31, 2023

 

 

34,557

 

 

$

346

 

 

$

250,971

 

 

$

(17,320

)

 

$

(17,230

)

 

$

5,415

 

 

$

222,182

 

Net income for the three months ended June 30, 2023

 

 

 

 

 

 

 

 

 

 

 

3,724

 

 

 

 

 

 

266

 

 

 

3,990

 

Exercise of stock options

 

 

25

 

 

 

 

 

 

317

 

 

 

 

 

 

 

 

 

 

 

 

317

 

Restricted stock units issued

 

 

132

 

 

 

1

 

 

 

(271

)

 

 

 

 

 

 

 

 

 

 

 

(270

)

Share based compensation earned

 

 

24

 

 

 

 

 

 

1,389

 

 

 

 

 

 

 

 

 

 

 

 

1,389

 

Translation gain

 

 

 

 

 

 

 

 

 

 

 

 

 

 

139

 

 

 

 

 

 

139

 

Noncontrolling interest distributions

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(599

)

 

 

(599

)

Balance June 30, 2023

 

 

34,738

 

 

$

347

 

 

$

252,406

 

 

$

(13,596

)

 

$

(17,091

)

 

$

5,082

 

 

$

227,148

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The notes to the condensed consolidated financial statements are an integral part of the above statements.

 

5


 

CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS

(unaudited)

 

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

Cash flows from operating activities:

 

 

 

 

 

 

Net income

 

$

7,022

 

 

$

6,460

 

Adjustments to reconcile net income to net cash provided by (used in) operating activities:

 

 

 

 

 

 

Depreciation and amortization

 

 

6,973

 

 

 

5,650

 

Unrealized foreign currency gain (loss)

 

 

691

 

 

 

(863

)

Fair value adjustment to earnout liabilities

 

 

 

 

 

296

 

Gain on sale of property and equipment

 

 

126

 

 

 

78

 

Debt discount amortization

 

 

240

 

 

 

182

 

Share-based compensation expense

 

 

3,847

 

 

 

1,967

 

Bad debt expense (recoveries)

 

 

267

 

 

 

(23

)

Inventory reserve expense

 

 

669

 

 

 

551

 

Other

 

 

22

 

 

 

 

Changes in operating assets and liabilities, net of acquisitions:

 

 

 

 

 

 

Accounts receivable

 

 

(17,295

)

 

 

(39,181

)

Costs and estimated earnings in excess of billings on uncompleted contracts

 

 

10,610

 

 

 

9,596

 

Inventories

 

 

(5,151

)

 

 

(4,081

)

Prepaid expense and other current assets

 

 

(11,164

)

 

 

(8,319

)

Deferred charges and other assets

 

 

(412

)

 

 

(306

)

Accounts payable

 

 

13,719

 

 

 

6,594

 

Accrued expenses

 

 

1,566

 

 

 

(2,692

)

Billings in excess of costs and estimated earnings on uncompleted contracts

 

 

3,060

 

 

 

26,005

 

Income taxes payable

 

 

68

 

 

 

601

 

Other liabilities

 

 

(6,967

)

 

 

(3,126

)

Net cash provided by (used in) operating activities

 

 

7,891

 

 

 

(611

)

Cash flows from investing activities:

 

 

 

 

 

 

Acquisitions of property and equipment

 

 

(7,233

)

 

 

(3,919

)

Net cash received (paid) for acquisitions

 

 

422

 

 

 

(24,142

)

Net cash used in investing activities

 

 

(6,811

)

 

 

(28,061

)

Cash flows from financing activities:

 

 

 

 

 

 

Borrowings on revolving credit lines

 

 

21,700

 

 

 

65,300

 

Repayments on revolving credit lines

 

 

(23,200

)

 

 

(33,400

)

Repayments of long-term debt

 

 

(5,198

)

 

 

(1,652

)

Payments on finance leases and financing liability

 

 

(458

)

 

 

(450

)

Deferred consideration paid for acquisitions

 

 

(2,050

)

 

 

(857

)

Earnout payments

 

 

(1,672

)

 

 

 

Proceeds from employee stock purchase plan and exercise of stock options

 

 

418

 

 

 

1,156

 

Noncontrolling interest distributions

 

 

(1,105

)

 

 

(599

)

Common stock repurchased

 

 

(5,000

)

 

 

 

Net cash (used in) provided by financing activities

 

 

(16,565

)

 

 

29,498

 

Effect of exchange rate changes on cash, cash equivalents and restricted cash

 

 

(3,049

)

 

 

1,141

 

Net (decrease) increase in cash, cash equivalents and restricted cash

 

 

(18,534

)

 

 

1,967

 

Cash, cash equivalents and restricted cash at beginning of period

 

 

55,448

 

 

 

46,585

 

Cash, cash equivalents and restricted cash at end of period

 

$

36,914

 

 

$

48,552

 

Cash paid during the period for:

 

 

 

 

 

 

Interest

 

$

6,574

 

 

$

5,380

 

Income taxes

 

$

3,801

 

 

$

7,605

 

 

The notes to the condensed consolidated financial statements are an integral part of the above statements.

 

6


 

CECO ENVIRONMENTAL CORP. AND SUBSIDIARIES

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS

(unaudited)

1. Basis of Reporting for Consolidated Financial Statements

The accompanying unaudited condensed consolidated financial statements of CECO Environmental Corp. and its subsidiaries (the “Company,” “CECO,” “we,” “us,” or “our”) have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). Certain information and footnote disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“GAAP”) have been condensed or omitted pursuant to those rules and regulations. In the opinion of management, the accompanying unaudited condensed consolidated financial statements of the Company contain all adjustments, consisting only of normal recurring adjustments, necessary to present fairly the financial position as of June 30, 2024 and the results of operations, cash flows and shareholders’ equity for the three and six months ended June 30, 2024 and 2023. The results of operations for the three and six months ended June 30, 2024 are not necessarily indicative of the results to be expected for the full year. The balance sheet as of December 31, 2023 has been derived from the audited consolidated financial statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 as filed with the SEC on March 5, 2024 (the “Form 10-K”).

The preparation of financial statements in conformity with GAAP 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. Actual results could differ from those estimates.

These financial statements and accompanying notes should be read in conjunction with the audited financial statements and the notes thereto included in the Form 10-K.

Unless otherwise indicated, all balances within tables are in thousands, except per share amounts.

2. New Financial Accounting Pronouncements

Accounting Standards Adopted in Fiscal 2024

None.

Accounting Standards to be Adopted

In December 2023, the Financial Accounting Standards Board (the "FASB") issued Accounting Standards Update ("ASU") 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which addresses income tax disclosure requirements, primarily around the disclosure of the rate reconciliation and income taxes paid. The ASU is effective for fiscal years beginning after December 15, 2024. The Company is currently evaluating the impact the adoption of the standard will have on the Company’s consolidated financial statements.

 

In November 2023, the FASB issued ASU 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, which addresses segment disclosure requirements, primarily the disclosure of significant segment expenses. The ASU is effective for fiscal years beginning after December 15, 2023, and interim periods beginning after December 15, 2024. The Company is currently evaluating the impact the adoption of the standard will have on the Company’s consolidated financial statements.

3. Accounts Receivable

Accounts receivable as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Accounts receivable

 

$

133,556

 

 

$

119,193

 

Provision for credit losses

 

 

(6,582

)

 

 

(6,460

)

Total accounts receivable, net

 

$

126,974

 

 

$

112,733

 

Accounts receivable, net as of the beginning of the prior year period, or January 1, 2023, were $83.1 million.

7


 

Balances billed but not paid by customers under retainage provisions in contracts within the Condensed Consolidated Balance Sheets amounted to approximately $3.9 million and $3.2 million as of June 30, 2024 and December 31, 2023, respectively. Retainage receivables on contracts in progress are generally collected within a year or two subsequent to contract completion, and are recorded in either "Accounts receivable, net" or "Deferred charges and other assets" within the Condensed Consolidated Balance Sheets depending on timing of expected collection.

Amounts charged to (recovered from) the provision for credit losses was $0.7 million and $(0.1) million for the three months ended June 30, 2024 and 2023, respectively, and $0.3 million and zero for the six months ended June 30, 2024 and 2023, respectively.

4. Contract Assets and Liabilities

Contract assets and liabilities as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Costs and estimated earnings in excess of billings on uncompleted contracts

 

$

55,378

 

 

$

66,574

 

Billings in excess of costs and estimated earnings on uncompleted contracts

 

 

59,851

 

 

 

56,899

 

 

As of the beginning of the prior year period, or January 1, 2023, costs and estimated earnings in excess of billings on uncompleted contracts and billings in excess of costs and estimated earnings on uncompleted contracts were $71.0 million and $32.7 million, respectively. The contract liabilities recorded in “Accrued expenses” on the Condensed Consolidated Balance Sheets were $9.2 million, $7.9 million and $4.5 million as of June 30, 2024, December 31, 2023 and January 1, 2023, respectively. Approximately 70% of the Company's contract liabilities as of December 31, 2023 were recognized as revenue in the six months ended June 30, 2024.

 

5. Inventories

Inventories as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Raw materials

 

$

27,869

 

 

$

25,819

 

Work in process

 

 

11,732

 

 

 

9,710

 

Finished goods

 

 

2,905

 

 

 

2,368

 

Obsolescence allowance

 

 

(4,031

)

 

 

(3,808

)

Total inventories

 

$

38,475

 

 

$

34,089

 

Amounts credited to the allowance for obsolete inventory and charged to cost of sales amounted to $0.2 million and $0.4 million for the three months ended June 30, 2024 and 2023, respectively, and $0.7 million and $0.6 million for the six months ended June 30, 2024 and 2023, respectively.

8


 

6. Goodwill and Intangible Assets

Goodwill activity for the six months ended June 30, 2024 and the year ended December 31, 2023 was as follows:

(in thousands)

 

Six months ended June 30, 2024

 

 

Year ended December 31, 2023

 

Goodwill / Tradename

 

Goodwill

 

 

Tradename

 

 

Goodwill

 

 

Tradename

 

Balance at beginning of period

 

$

211,326

 

 

$

9,570

 

 

$

183,197

 

 

$

9,508

 

Acquisitions

 

 

110

 

 

 

 

 

 

27,152

 

 

 

 

Foreign currency translation

 

 

(292

)

 

 

(48

)

 

 

977

 

 

 

62

 

Balance at end of period

 

$

211,144

 

 

$

9,522

 

 

$

211,326

 

 

$

9,570

 

 

During the first quarter of 2024, the Company recorded measurement period adjustments related to the acquisition of Kemco Systems Co., LLC ("Kemco"), as discussed in Note 15, resulting in an increase to goodwill.

Finite life intangible assets as of June 30, 2024 and December 31, 2023 consisted of the following:

 

 

June 30, 2024

 

 

December 31, 2023

 

(in thousands)

 

Cost

 

 

Accum. Amort.

 

 

Cost

 

 

Accum. Amort.

 

Technology

 

$

16,508

 

 

$

14,388

 

 

$

16,517

 

 

$

14,061

 

Customer lists

 

 

103,471

 

 

 

66,721

 

 

 

103,471

 

 

 

63,420

 

Tradenames

 

 

14,094

 

 

 

5,688

 

 

 

14,094

 

 

 

5,001

 

Foreign currency adjustments

 

 

(1,397

)

 

 

(207

)

 

 

(1,083

)

 

 

56

 

Total intangible assets – finite life

 

$

132,676

 

 

$

86,590

 

 

$

132,999

 

 

$

82,538

 

Finite life intangible asset activity for the six months ended June 30, 2024 and 2023 was as follows:

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

Intangible assets – finite life, net at beginning of period

 

$

50,461

 

 

$

35,251

 

Amortization expense

 

 

(4,315

)

 

 

(3,430

)

Acquisitions

 

 

 

 

 

10,708

 

Foreign currency adjustments

 

 

(60

)

 

 

370

 

Intangible assets – finite life, net at end of period

 

$

46,086

 

 

$

42,899

 

Amortization expense of finite life intangible assets was $2.2 million and $1.7 million for the three months ended June 30, 2024 and 2023, respectively, and $4.3 million and $3.4 million for the six months ended June 30, 2024 and 2023, respectively. Amortization over the next five years for finite life intangibles is expected to be $4.3 million for the remainder of 2024, $7.6 million in 2025, $6.2 million in 2026, $6.0 million in 2027, and $5.6 million in 2028.

The Company completes its goodwill and indefinite life intangible asset impairment assessment annually in the fourth quarter, or more often if circumstances require. As a part of its impairment assessment, the Company first qualitatively assesses whether current events or changes in circumstances lead to a determination that it is more likely than not, defined as a likelihood of more than 50 percent, that the fair value of a reporting unit or indefinite life intangible asset is less than its carrying amount. If there is a qualitative determination that the fair value is more likely than not greater than the carrying value, the Company does not quantitatively test for impairment. If this qualitative assessment indicates a more likely than not potential that the asset may be impaired, the estimated fair value is calculated. If the estimated fair value is less than carrying value, an impairment charge is recorded.

As of June 30, 2024, the Company reviewed its previous forecasts and assumptions based on its current projections, which are subject to various risks and uncertainties, including projected revenue, projected operational profit, terminal growth rates, and the cost of capital. The Company did not identify any triggering events during the three or six months ended June 30, 2024 that would require an interim impairment assessment of goodwill or intangible assets.

The Company’s assumptions about future conditions important to its assessment of potential impairment of its goodwill and indefinite life intangible assets are subject to uncertainty, and the Company will continue to monitor these conditions in future periods as new information becomes available, and will update its analysis accordingly.

9


 

7. Accrued Expenses

Accrued expenses as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Compensation and related benefits

 

$

8,854

 

 

$

11,278

 

Accrued warranty

 

 

5,478

 

 

 

5,105

 

Contract liability

 

 

9,197

 

 

 

7,875

 

Short-term operating lease liability

 

 

3,950

 

 

 

4,278

 

Other

 

 

17,257

 

 

 

15,765

 

Total accrued expenses

 

$

44,736

 

 

$

44,301

 

 

8. Senior Debt

Debt as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Outstanding borrowings under Credit Facility (defined below)
     Term loan payable in
quarterly principal installments of $550 through September
     2023, $
2,232 through September 2025 and $2,977 thereafter with balance due upon
     maturity in December 2026

 

 

 

 

 

 

Term loan

 

$

107,959

 

 

$

112,424

 

Revolving credit facility

 

 

15,800

 

 

 

17,300

 

Total outstanding borrowings under the Credit Facility

 

 

123,759

 

 

 

129,724

 

Outstanding borrowings under the joint venture term debt

 

 

8,123

 

 

 

8,855

 

Unamortized debt discount

 

 

(1,056

)

 

 

(1,296

)

Total outstanding borrowings

 

 

130,826

 

 

 

137,283

 

   Less: current portion

 

 

(10,580

)

 

 

(10,488

)

Total debt, less current portion

 

$

120,246

 

 

$

126,795

 

Scheduled principal payments under the Credit Facility and joint venture term debt are $5.3 million for the remainder of 2024, $11.3 million in 2025, $111.4 million in 2026, $3.9 million in 2027, and zero in 2028.

Credit Facility

As of June 30, 2024 and December 31, 2023, $13.2 million and $13.3 million of letters of credit were outstanding, respectively. Total unused credit availability, in consideration of borrowing limitations, under the Company’s senior secured term loan and senior secured revolver loan with sub-facilities for letters of credit, swing-line loans and senior secured multi-currency loans (the "Credit Facility") was $111.0 million and $109.4 million at June 30, 2024 and December 31, 2023, respectively. Revolving loans may be borrowed, repaid and reborrowed until December 17, 2026, at which time all outstanding balances of the Credit Facility must be repaid.

At the Company’s option, revolving loans and the term loans accrue interest at a per annum rate based on (a) either the highest of (i) the federal funds rate plus 0.5%, or (ii) the prime lending rate of the Agent (as defined in the Credit Facility), (b) Daily Simple SOFR plus the Daily Simple SOFR Adjustment of 0.11% plus 1.0%, (c) 1.0%, plus a margin ranging from 1.75% to 3.25% depending on the Company’s Consolidated Leverage Ratio, or (d) a one/three/six-month Term SOFR Rate (as defined in the Credit Facility) plus the Term SOFR Adjustment ranging from 0.11% to 0.43% plus 1.75% to 3.25% depending on the Company’s Consolidated Leverage Ratio. Interest on swing line loans is the Base Rate.

Interest on Base Rate loans is payable quarterly in arrears on the last day of each calendar quarter and at maturity. Interest on Term SOFR rate loans is payable on the last date of each applicable Interest Period (as defined in the agreement), but in no event less than once every three months and at maturity. The weighted average stated interest rate on outstanding borrowings was 7.88% and 8.29% at June 30, 2024 and December 31, 2023, respectively. The effective interest rate was 8.12% and 7.70% at June 30, 2024 and December 31, 2023, respectively.

10


 

Under the terms of the Credit Facility, the Company is required to maintain certain financial covenants, including the maintenance of a Consolidated Net Leverage Ratio (as defined in the Credit Facility). In the third quarter of 2023, the Company entered into an Elevated Ratio Period resulting in a maximum Consolidated Net Leverage Ratio of 4.00 through June 30, 2024, after which time it decreased to 3.50 until the end of the term of the Credit Facility.

The Company has granted a security interest in substantially all of its assets to secure its obligations pursuant to the Credit Facility. The Company’s obligations under the Credit Facility are guaranteed by the Company’s domestic subsidiaries and such guaranty obligations are secured by a security interest on substantially all the assets of such subsidiaries, including certain real property. The Company’s obligations under the Credit Facility may also be guaranteed by the Company’s material foreign subsidiaries to the extent no adverse tax consequences would result to the Company.

As of June 30, 2024 and December 31, 2023, the Company was in compliance with all related financial and other restrictive covenants under the Credit Facility.

Joint Venture Debt

On March 7, 2022, the Company's Effox-Flextor-Mader, Inc. joint venture ("EFM JV"), for which the Company holds 63% of the equity, entered into a loan agreement secured by the assets of the EFM JV in the aggregate principal amount of $11.0 million for the acquisition of General Rubber, LLC ("GRC"). As of June 30, 2024 and December 31, 2023, $8.1 million and $8.9 million was outstanding under the loan, respectively. Principal will be paid back to the lender monthly with the final installment due by February 27, 2027. Interest is accrued at the per annum rate based on EFM JV's choice of the 1/3/6 month Term SOFR rate plus 3.25%, with a floor rate of 3.75%. Interest is paid monthly on the last day of each month. The interest rate at June 30, 2024 and December 31, 2023 was 8.52% and 8.70%, respectively. As of June 30, 2024 and December 31, 2023, the EFM JV was in compliance with all related financial and other restrictive covenants under this loan agreement. This loan balance does not impact the Company’s borrowing capacity or the financial covenants under the Credit Facility. As of June 30, 2024, there were $16.7 million in current assets, $26.1 million in long-lived assets, and $30.2 million in total liabilities related to the EFM JV included in the Condensed Consolidated Balance Sheets. As of December 31, 2023, there were $14.5 million in current assets, $26.7 million in long-lived assets, and $12.5 million in total liabilities related to the EFM JV included in the Consolidated Balance Sheets. For the three months ended June 30, 2024 and 2023, the EFM JV accounted for $13.2 million and $9.9 million in revenue, respectively, included in the Company's results. For the six months ended June 30, 2024 and 2023, the EFM JV accounted for $23.9 million and $19.3 million in revenue, respectively, included in the Company's results.

Foreign Debt

The Company has a number of bank guarantee facilities and bilateral lines of credit in various foreign countries currently supported by cash, letters of credit or pledged assets and collateral under the Credit Facility. In March 2023, the Company amended the Credit Facility, allowing letters of credit and bank guarantee issuances of up to $80.0 million from the bilateral lines of credit secured through pledged assets and collateral under the Credit Facility. As of June 30, 2024 and December 31, 2023, $48.3 million and $45.8 million in bank guarantees were outstanding, respectively, inclusive of $1.9 million and $1.3 million in outstanding bank guarantees as of June 30, 2024 and December 31, 2023, respectively, under a Euro-denominated bank guarantee agreement held by a subsidiary of the Company located in the Netherlands and secured by local assets, as well as $2.8 million and $2.3 million in outstanding bank guarantees as of June 30, 2024 and December 31, 2023, respectively, under Yuan-denominated bank guarantee agreements held by a subsidiary of the Company located in China and secured by local assets.

 

11


 

9. Earnings per Share

The computational components of basic and diluted earnings per share for the three months ended June 30, 2024 and 2023 are as follows:

 

 

Three months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

Numerator (for basic and diluted earnings per share)

 

 

 

 

 

 

 Net income attributable to CECO Environmental Corp.

 

$

4,485

 

 

$

3,724

 

 

 

 

 

 

 

 

Denominator

 

 

 

 

 

 

Basic weighted-average shares outstanding

 

 

34,918

 

 

 

34,619

 

Common stock equivalents arising from stock options and restricted stock awards

 

 

1,385

 

 

 

525

 

Diluted weighted-average shares outstanding

 

 

36,303

 

 

 

35,144

 

The computational components of basic and diluted earnings per share for the six months ended June 30, 2024 and 2023 are as follows:

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

Numerator (for basic and diluted earnings per share)

 

 

 

 

 

 

 Net income attributable to CECO Environmental Corp.

 

$

5,993

 

 

$

5,701

 

 

 

 

 

 

 

 

Denominator

 

 

 

 

 

 

Basic weighted-average shares outstanding

 

 

34,882

 

 

 

34,531

 

Common stock equivalents arising from stock options and restricted stock awards

 

 

1,357

 

 

 

641

 

Diluted weighted-average shares outstanding

 

 

36,239

 

 

 

35,172

 

Options and restricted stock units included in the computation of diluted earnings per share are calculated using the treasury stock method. For the three months ended June 30, 2024 and 2023, zero and 1.3 million, respectively, and for the six months ended June 30, 2024 and 2023, 0.1 million and 0.7 million, respectively, of outstanding options and restricted stock units were excluded from the computation of diluted earnings per share due to their having an anti-dilutive effect.

Once a restricted stock unit vests, it is included in the computation of weighted average shares outstanding for purposes of basic and diluted earnings per share.

Common Stock Repurchase

On May 10, 2022, the Company's Board of Directors authorized a share repurchase program under which the Company may purchase up to $20.0 million of its outstanding shares of common stock through April 30, 2025. The authorization permits the Company to repurchase shares in the open market, through accelerated share repurchases, block trades, Rule 10b5-1 trading plans or through privately negotiated transactions in accordance with applicable laws, rules and regulations. During the three and six months ended June 30, 2024, the Company repurchased approximately 86,000 and 230,000 shares under the program, respectively, for a cost of $2.0 million and $5.0 million, respectively. There were no shares repurchased under the program during the three or six months ended June 30, 2023.

10. Share-Based Compensation

The Company accounts for share-based compensation in accordance with Accounting Standards Codification (“ASC”) Topic 718, “Compensation – Stock Compensation,” which requires the Company to recognize compensation expense for share-based awards, measured at the fair value of the awards at the grant date. The Company recognized $2.2 million and $1.2 million of share-based compensation related expense during the three months ended June 30, 2024 and 2023, respectively, and $3.8 million and $2.0 million of share-based compensation related expense during the six months ended June 30, 2024 and 2023, respectively.

The Company granted approximately 57,000 and 50,000 restricted stock units during the three months ended June 30, 2024 and 2023, respectively, and approximately 341,000 and 390,000 restricted stock units during the six months ended June 30, 2024 and 2023, respectively. In addition, the Company granted approximately 25,000 and zero stock options during the six months

12


 

ended June 30, 2024 and 2023, respectively. No stock options were granted during the three months ended June 30, 2024 and 2023.

There were approximately 10,000 and 25,000 options exercised during the three months ended June 30, 2024 and 2023, respectively, for which the Company received $0.2 million and $0.3 million in cash, respectively, from employees and directors. The intrinsic value of options exercised was $0.1 million for each of the three months ended June 30, 2024 and 2023. There were approximately 20,000 and 77,000 options exercised during the six months ended June 30, 2024 and 2023, respectively, for which the Company received $0.3 million and $0.9 million in cash, respectively, from employees and directors. The intrinsic value of options exercised was $0.2 million for each of the six months ended June 30, 2024 and 2023.

11. Pension and Employee Benefit Plans

The Company sponsors a non-contributory defined benefit pension plan for certain union employees. The plan is funded in accordance with the funding requirements of the Employee Retirement Income Security Act of 1974.

The Company presents the components of net periodic benefit cost within “Other (expense) income, net” on the Condensed Consolidated Statements of Income.

Retirement plan expense is based on valuations performed by plan actuaries as of the beginning of each fiscal year. The components of the pension plan expense consisted of the following:

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Interest cost

 

$

304

 

 

$

318

 

 

$

608

 

 

$

637

 

Expected return on plan assets

 

 

(304

)

 

 

(285

)

 

 

(608

)

 

 

(571

)

Amortization of net actuarial loss

 

 

57

 

 

 

74

 

 

 

113

 

 

 

148

 

Net periodic benefit cost

 

$

57

 

 

$

107

 

 

$

113

 

 

$

214

 

The Company made contributions to its defined benefit plan of $0.2 million during the three and six months ended June 30, 2024. No contributions were made to the plan during the three and six months ended June 30, 2023. For the remainder of 2024, the Company expects to make contributions of $0.9 to fund the pension plan. The unfunded liability of the plan of $4.0 million and $4.1 million as of June 30, 2024 and December 31, 2023, respectively, is included in “Other liabilities” on the Condensed Consolidated Balance Sheets.

12. Income Taxes

The Company files income tax returns in various federal, state and local jurisdictions. Tax years from 2018 forward remain open for examination by Federal authorities. Tax years from 2017 forward remain open for all significant state and foreign authorities.

The Company accounts for uncertain tax positions pursuant to ASC Topic 740, “Income Taxes.” As of June 30, 2024 and December 31, 2023, the liability for uncertain tax positions totaled approximately $0.2 million, which is included in “Other liabilities” on the Condensed Consolidated Balance Sheets. The Company recognizes accrued interest related to uncertain tax positions and penalties, if any, in income tax expense within the Condensed Consolidated Statements of Income.

Certain of the Company’s undistributed earnings of our foreign subsidiaries are not permanently reinvested. Since foreign earnings have already been subject to United States income tax in 2017 as a result of the 2017 Tax Cuts and Jobs Act, the Company intends to repatriate foreign-held cash as needed. The Company records deferred income tax attributable to foreign withholding taxes that would become payable should it decide to repatriate cash held in our foreign operations. As of June 30, 2024 and December 31, 2023, the Company recorded deferred income taxes of approximately $0.8 million and $0.7 million, respectively, on the undistributed earnings of its foreign subsidiaries.

Income tax expense was $0.4 million and $1.0 million for the three months ended June 30, 2024 and 2023, respectively, and $1.1 million and $1.0 million for the six months ended June 30, 2024 and 2023, respectively. The effective income tax rate for the three months ended June 30, 2024 was 7.4% compared with 19.8% for the three months ended June 30, 2023, and the effective income tax rate for the six months ended June 30, 2024 was 13.1% compared with 13.3% for the six months ended June 30, 2023. The effective income tax rates for the three and six months ended June 30, 2024 and 2023 differ from the United States federal statutory rate. The Company's effective rate is affected by certain other permanent differences, including state income taxes, non-deductible incentive stock-based compensation and differences in tax rates among jurisdictions in which it

13


 

operates. Additionally, the Company received a tax indemnification payment of $0.5 million, related to a prior year acquisition, in the second quarter of 2024.

The Organization for Economic Co-operation and Development/G20 Inclusive Framework on Base Erosion and Profit Shifting published the Pillar Two model rules designed to address the tax challenges arising from the digitalization of the global economy which introduces a 15% global minimum corporate tax for companies with revenues above €750 million calculated on a country-by-country basis. On February 1, 2023, the FASB indicated that it believes the minimum tax imposed under Pillar Two is an alternative minimum tax, and, accordingly, deferred tax assets and liabilities associated with the minimum tax would not be recognized or adjusted for the estimated future effects of the minimum tax but would be recognized in the period incurred. Aspects of Pillar Two legislation have been enacted in certain jurisdictions in which the Company operates effective for accounting periods commencing on or after January 1, 2024. However, based on the current revenue threshold, the Company is currently not subject to Pillar Two taxes.

13. Financial Instruments

The Company's financial instruments consist primarily of investments in cash and cash equivalents, receivables and certain other assets, notes payable, foreign debt and accounts payable, which approximate fair value at June 30, 2024 and December 31, 2023, due to their short-term nature or variable, market-driven interest rates.

The fair value of the debt issued under the Credit Facility and joint venture term loan was $131.9 million and $138.6 million at June 30, 2024 and December 31, 2023, respectively. The fair value was determined considering market conditions, the Company's credit worthiness and the current terms of our debt, which is considered Level 2 on the fair value hierarchy.

At June 30, 2024 and December 31, 2023, the Company had cash and cash equivalents of $36.5 million and $54.8 million, respectively, of which $28.6 million and $38.5 million, respectively, was held outside of the United States, principally in the Netherlands, India, United Kingdom, and China.

14. Commitments and Contingencies

Asbestos cases

The Company's subsidiary, Met-Pro Technologies LLC (“Met-Pro”), beginning in 2002, has been named in asbestos-related lawsuits filed against a large number of industrial companies including, in particular, those in the pump and fluid handling industries. In management’s opinion, the complaints typically have been vague, general and speculative, alleging that Met-Pro, along with the numerous other defendants, sold unidentified asbestos-containing products and engaged in other related actions which caused injuries (including death) and loss to the plaintiffs. Counsel has advised that more recent cases typically allege more serious claims of mesothelioma. The Company’s insurers have hired attorneys who, together with the Company, are vigorously defending these cases. Many cases have been dismissed after the plaintiff fails to produce evidence of exposure to Met-Pro’s products. In those cases, where evidence has been produced, the Company’s experience has been that the exposure levels are low and the Company’s position has been that its products were not a cause of death, injury or loss. The Company has been dismissed from or settled a large number of these cases. Cumulative settlement payments from 2002 through June 30, 2024 for cases involving asbestos-related claims were $6.8 million which together with all legal fees other than corporate counsel expenses have substantially been paid by the Company’s insurers. The average cost per settled claim, excluding legal fees, was approximately $33,000. As of June 30, 2024 and December 31, 2023, the amount recorded within "Accrued expenses" on the Condensed Consolidated Balance Sheets was $0.2 million and zero, respectively, related to asbestos litigation.

Based upon the most recent information available to the Company regarding such claims, there were a total of 333 cases pending against the Company as of June 30, 2024 with Illinois, New York, Pennsylvania and West Virginia having the largest number of cases, as compared with 313 cases that were pending as of December 31, 2023. During the six months ended June 30, 2024, 94 new cases were filed against the Company, and the Company was dismissed from 50 cases and settled 24 cases. Most of the pending cases have not advanced beyond the early stages of discovery, although a number of cases are on schedules leading to or scheduled for trial. The Company believes that its insurance coverage is adequate for the cases currently pending against the Company and for the foreseeable future, assuming a continuation of the current volume, nature of cases and settlement amounts. However, the Company has no control over the number and nature of cases that are filed against it, nor as to the financial health of its insurers or their position as to coverage. The Company also presently believes that none of the pending cases will have a material adverse impact upon the Company’s results of operations, liquidity or financial condition.

14


 

Other

The Company is also a party to routine contract and employment-related litigation matters, warranty claims and routine audits of state and local tax returns arising in the ordinary course of its business.

The final outcome and impact of open matters, and related claims and investigations that may be brought in the future, are subject to many variables, and cannot be predicted. The Company records accruals for estimated losses relating to claims and lawsuits when available information indicates that a loss is probable and the amount of the loss, or range of loss, can be reasonably estimated. The Company expenses legal costs as they are incurred.

The Company is not aware of any pending claims or assessments, other than as described above, which may have a material adverse impact on its liquidity, financial position, results of operations, or cash flows.

15. Acquisitions

Kemco Systems Co., LLC

On August 23, 2023, the Company acquired 100% of the equity interests of Kemco for $24.0 million in cash, which was financed with a draw on the Company’s revolving credit facility. During the three months ended March 31, 2024, the Company received $0.4 million from the former owners of Kemco as a working capital adjustment, reducing the purchase price to $23.6 million. As additional consideration, the former owners of Kemco are entitled to earnout payments up to $4.0 million based upon specified financial results through August 31, 2026, of which $1.7 million was paid during the second quarter of 2024. Based on projections at the acquisition date, the Company estimated the fair value of the earnout to be $2.2 million, which was subsequently adjusted to $2.7 million in the first quarter of 2024. This fair value measurement is based on inputs not observable in the market, which is considered Level 3 on the fair value hierarchy. As of June 30, 2024, the earnout liability recorded in “Accrued expenses” on the Condensed Consolidated Balance Sheets is $1.1 million. Kemco designs and manufactures energy and water conservation systems and equipment for applications regarding wastewater reuse and recycle, heat recovery, water heating, and vapor energy. This acquisition advances the Company's position within the North American water and wastewater treatment market within the Engineered Systems segment. The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.

(in thousands)

 

 

 

Current assets (including accounts receivable of $2,328)

 

$

8,902

 

Property and equipment

 

 

341

 

Right-of-use assets from operating leases

 

 

1,602

 

Intangible - finite life

 

 

11,610

 

Goodwill

 

 

11,115

 

Other assets

 

 

16

 

Total assets acquired

 

 

33,586

 

Current liabilities assumed

 

 

(6,853

)

Other liabilities assumed

 

 

(404

)

Net assets acquired

 

$

26,329

 

The Company acquired technology, customer lists and tradename intangible assets valued at $1.4 million, $8.7 million and $1.5 million, respectively. These assets were determined to have useful lives of 7, 10 and 10 years, respectively.

Transcend Solutions

On March 31, 2023, the Company acquired 100% of the equity interests of Transcend Solutions, LLC ("Transcend") for $22.4 million, including $20.0 million in cash, which was financed with a draw on the Company’s revolving credit facility, $2.4 million of deferred cash consideration, consisting of $0.4 million of holdback paid within one year and $2.0 million of notes payable due in equal installments over two years, of which $1.0 million was paid during the first quarter of 2024. Transcend is a process filtration solution design and manufacturing company with applications in hydrocarbon and chemical processing. This acquisition improves the Company's short-cycle and long-cycle mix and expands the Company's reach into midstream oil and gas, liquified natural gas, hydrocarbon processing, and chemical processing applications within the Engineered Systems segment. The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.

15


 

(in thousands)

 

 

 

Current assets (including cash of $52 and accounts receivable of $1,493)

 

$

2,614

 

Property and equipment

 

 

1,153

 

Intangible - finite life

 

 

8,930

 

Goodwill

 

 

10,839

 

Other assets

 

 

231

 

Total assets acquired

 

 

23,767

 

Current liabilities assumed

 

 

(1,203

)

Deferred tax liability

 

 

(168

)

Net assets acquired

 

$

22,396

 

The Company acquired technology, customer lists and tradename intangible assets valued at $0.6 million, $7.6 million and $0.7 million, respectively. These assets were determined to have useful lives of 7, 10 and 10 years, respectively.

Malvar Engineering Limited

On January 10, 2023, the Company acquired 100% of the equity interests of Malvar Engineering Limited, including its subsidiaries Arkanum Management Limited and Wakefield Acoustics Limited (collectively, "Wakefield"), for $4.1 million in cash, which was financed with a draw on the Company’s revolving credit facility, and $0.4 million of deferred cash consideration. As additional consideration, the former owners are entitled to earn-out payments based upon specified financial results through July 31, 2023. Based on projections at the acquisition date, the Company estimated the fair value of the earn-out to be $0.6 million. A payment of $0.6 million, representing the fully earned amount, was made in the fourth quarter of 2023. Wakefield is a producer of industrial engineered noise control solutions, including custom acoustical gen-set packages, ambient air baffles, acoustical louvres, and skid enclosures, primarily serving server farms for data centers, standby and emergency power generation, oil and gas, petrochemical, commercial construction, infrastructure, and general manufacturing industries. This acquisition advances the Company's position within the industrial silencing and noise attenuation market by adding a range of solutions and access to new geographic markets within the Engineered Systems segment. The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.

(in thousands)

 

 

 

Current assets (including accounts receivable of $2,467)

 

$

3,240

 

Property and equipment

 

 

635

 

Intangible - finite life

 

 

1,778

 

Goodwill

 

 

5,296

 

Total assets acquired

 

 

10,949

 

Current liabilities assumed

 

 

(4,860

)

Deferred income tax liability

 

 

(961

)

Net assets acquired

 

$

5,128

 

The Company acquired customer lists and tradename intangible assets valued at $1.5 million and $0.3 million, respectively. These assets were determined to have useful lives of 10 years.

The Company has finalized the valuation of assets acquired and liabilities assumed related to the acquisition of Wakefield and Transcend. The purchase accounting related to the Kemco acquisition is subject to final adjustment, primarily for the valuation of intangible assets pending final valuation results for such assets and tax balances for the further assessment of the acquiree’s tax positions. These preliminary estimates and assumptions could change significantly during the purchase price measurement period as the Company finalizes the valuation of assets acquired and liabilities assumed. These changes could result in material variances in the Company's future financial results, including variances in the estimated purchase price, fair values recorded and expenses associated with these items.

Goodwill recognized represents value the Company expects to be created by combining the various operations of the acquired businesses with the Company’s operations, including the expansion into markets within existing business segments, access to new customers and potential cost savings and synergies. Goodwill related to this acquisition is not deductible for tax purposes.

Acquisition and integration expenses on the Condensed Consolidated Statements of Income are related to acquisition activities, which include retention, legal, accounting, banking, and other expenses.

The following unaudited pro forma financial information represents the Company’s results of operations as if these acquisitions had occurred at the beginning of the fiscal year prior to the acquisition:

16


 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands, except per share data)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net sales

 

$

137,522

 

 

 

135,260

 

 

$

263,854

 

 

 

257,455

 

Net income attributable to CECO Environmental Corp.

 

 

4,485

 

 

 

4,292

 

 

 

5,993

 

 

 

7,019

 

Earnings per share:

 

 

 

 

 

 

 

 

 

 

 

 

Basic

 

$

0.13

 

 

$

0.12

 

 

$

0.17

 

 

$

0.20

 

Diluted

 

$

0.12

 

 

$

0.12

 

 

$

0.17

 

 

$

0.20

 

The pro forma results have been prepared for informational purposes only and include adjustments to amortize acquired intangible assets with finite life, reflect additional interest expense on debt used to fund the acquisition, and to record the income tax consequences of the pro forma adjustments. These pro forma results do not purport to be indicative of the results of operations that would have occurred had the purchase been made as of the beginning of the periods presented or of the results of operations that may occur in the future.

16. Business Segment Information

The Company’s operations are organized and reviewed by management along with its solutions or end markets that the segment serves and presented in two reportable segments. The results of the segments are reviewed through the “Income from operations” line on the Condensed Consolidated Statements of Income.

The Company’s reportable segments are organized as groups of similar products and services, as described as follows:

Engineered Systems segment: The Engineered Systems segment serves the power generation, hydrocarbon processing, water/wastewater treatment, oily water separation and treatment, marine and naval vessels, and midstream oil and gas sectors. The Company seeks to address the global demand for environmental and equipment protection solutions with its highly engineered platforms including emissions management, fluid bed cyclones, thermal acoustics, separation and filtration, and dampers and expansion joints.

Industrial Process Solutions segment: The Industrial Process Solutions segment serves the broad industrial sector with solutions for air pollution and contamination control, fluid handling, and process filtration in applications such as aluminum beverage can production, automobile production, food and beverage processing, semiconductor fabrication, electronics production, steel and aluminum mill processing, wood manufacturing, desalination, and aquaculture markets. The Company assists customers in maintaining clean and safe operations for employees, reducing energy consumption, minimizing waste for customers, and meeting regulatory standards for toxic emissions, fumes, volatile organic compounds and odor elimination through its platforms including duct fabrication and installation, industrial air, and fluid handling.

The financial segment information is as follows:

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net sales (less intra-, inter-segment sales)

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

97,392

 

 

$

87,522

 

 

$

186,741

 

 

$

161,977

 

Industrial Process Solutions segment

 

 

40,130

 

 

 

41,659

 

 

 

77,113

 

 

 

79,767

 

Total net sales

 

$

137,522

 

 

$

129,181

 

 

$

263,854

 

 

$

241,744

 

 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Income from operations

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

19,330

 

 

$

14,089

 

 

$

35,607

 

 

$

23,894

 

Industrial Process Solutions segment

 

 

5,669

 

 

 

4,586

 

 

 

12,769

 

 

 

10,131

 

Corporate and Other(1)

 

 

(15,742

)

 

 

(10,072

)

 

 

(31,433

)

 

 

(19,961

)

Total income from operations

 

$

9,257

 

 

$

8,603

 

 

$

16,943

 

 

$

14,064

 

(1)
Includes corporate compensation, professional services, information technology, and other general and administrative corporate expenses.

 

17


 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Property and equipment additions

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

890

 

 

$

444

 

 

$

2,027

 

 

$

688

 

Industrial Process Solutions segment

 

 

429

 

 

 

312

 

 

 

1,035

 

 

 

1,711

 

Corporate and Other

 

 

2,804

 

 

 

1,406

 

 

 

4,171

 

 

 

1,520

 

Total property and equipment additions

 

$

4,123

 

 

$

2,162

 

 

$

7,233

 

 

$

3,919

 

 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Depreciation and amortization

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

1,814

 

 

$

1,274

 

 

$

3,599

 

 

$

2,486

 

Industrial Process Solutions segment

 

 

1,131

 

 

 

949

 

 

 

2,250

 

 

 

2,107

 

Corporate and Other

 

 

516

 

 

 

542

 

 

 

1,124

 

 

 

1,057

 

Total depreciation and amortization

 

$

3,461

 

 

$

2,765

 

 

$

6,973

 

 

$

5,650

 

 

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Identifiable assets

 

 

 

 

 

 

Engineered Systems segment

 

$

427,732

 

 

$

432,098

 

Industrial Process Solutions segment

 

 

144,132

 

 

 

147,740

 

Corporate and Other(2)

 

 

26,269

 

 

 

20,453

 

Total identifiable assets

 

$

598,133

 

 

$

600,291

 

(2)
Corporate and Other assets consist primarily of cash and income tax related assets.

 

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Goodwill

 

 

 

 

 

 

Engineered Systems segment

 

$

142,058

 

 

$

142,229

 

Industrial Process Solutions segment

 

 

69,086

 

 

 

69,097

 

Total goodwill

 

$

211,144

 

 

$

211,326

 


Intra-segment and Inter-segment Revenues

The Company has multiple divisions that sell to each other within segments (intra-segment sales) and between segments (inter-segment sales), as follows:

 

 

Three months ended June 30, 2024

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

102,141

 

 

$

(4,553

)

 

$

(196

)

 

$

 

 

$

97,392

 

Industrial Process Solutions segment

 

 

44,673

 

 

 

(4,440

)

 

 

 

 

 

(103

)

 

 

40,130

 

Total net sales

 

$

146,814

 

 

$

(8,993

)

 

$

(196

)

 

$

(103

)

 

$

137,522

 

 

 

 

Three months ended June 30, 2023

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

95,880

 

 

$

(7,995

)

 

$

(363

)

 

$

 

 

$

87,522

 

Industrial Process Solutions segment

 

 

44,641

 

 

 

(2,806

)

 

 

 

 

 

(176

)

 

 

41,659

 

Total net sales

 

$

140,521

 

 

$

(10,801

)

 

$

(363

)

 

$

(176

)

 

$

129,181

 

 

18


 

 

 

Six months ended June 30, 2024

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

194,659

 

 

$

(7,635

)

 

$

(283

)

 

$

 

 

$

186,741

 

Industrial Process Solutions segment

 

 

84,252

 

 

 

(6,975

)

 

 

 

 

 

(164

)

 

 

77,113

 

Total net sales

 

$

278,911

 

 

$

(14,610

)

 

$

(283

)

 

$

(164

)

 

$

263,854

 

 

 

 

Six months ended June 30, 2023

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

171,970

 

 

$

(9,533

)

 

$

(460

)

 

$

 

 

$

161,977

 

Industrial Process Solutions segment

 

 

83,682

 

 

 

(3,641

)

 

 

 

 

 

(274

)

 

 

79,767

 

Total net sales

 

$

255,652

 

 

$

(13,174

)

 

$

(460

)

 

$

(274

)

 

$

241,744

 

 

17. Subsequent Events

On July 29, 2024, the Company completed its acquisition of EnviroCare International (“EnviroCare"), based in American Canyon, California. EnviroCare is a leading, international designer and provider of industrial exhaust air contamination treatment and control systems, solutions and services across a wide range of industrial and municipal applications. This acquisition advances the Company's leadership position within the industrial processing solutions segment by adding a range of solutions and access to new geographic markets and industrial segments. The purchase price was approximately $17 million and financed using a combination of cash on the balance sheet and borrowings under the Company’s existing Credit Facility. The impact of this acquisition is not included in the Company's results for the three or six months ended June 30, 2024. The initial accounting for the acquisition was not complete at the time the financial statements were issued due to the timing of the acquisition and the filing of this Quarterly Report on Form 10-Q. As a result, complete disclosures as required under ASC 805, Business Combinations cannot be made at this time.

19


 

CECO ENVIRONMENTAL CORP. AND SUBSIDIARIES

MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION

AND RESULTS OF OPERATIONS

 

 

ITEM 2. Management’s Discussion and Analysis of Financial Condition and Results of Operations

The Company’s Condensed Consolidated Statements of Income for the three and six months ended June 30, 2024 and 2023 reflect the consolidated operations of the Company and its subsidiaries.

CECO Environmental Corp. (“CECO,” “we,” “us,” or the “Company”) is a leading environmentally focused, diversified industrial company, serving the broad landscape of industrial air, industrial water and energy transition markets globally providing innovative technology and application expertise. CECO helps companies grow their business with safe, clean, and more efficient solutions that help protect people, the environment and industrial equipment. CECO solutions improve air and water quality, optimize emissions management, and increase the energy and process efficiency for highly engineered applications in power generation, midstream and downstream hydrocarbon processing and transport, chemical processing, electric vehicle production, polysilicon fabrication, semiconductor and electronics production, battery production and recycling, specialty metals, aluminum and steel production, beverage can manufacturing, and industrial and produced water and wastewater treatment, and a wide range of other industrial end markets.

Market Pressures

The senior management team monitors and manages the Company’s ability to operate effectively as the result of market pressures. We are monitoring key materials market indexes and trends and adjusting our material procurement strategies accordingly. We have secured raw materials from existing and alternate suppliers and have taken other mitigating actions to mitigate supply disruptions; however, we cannot guarantee that we will be able to continue to do so in the future. If we are unable to mitigate the effects of supply disruptions, our business, results and financial condition could be adversely affected.

Note Regarding Use of Non-GAAP Financial Measures

The Company’s unaudited condensed consolidated financial statements are prepared in accordance with accounting principles generally accepted in the United States of America (“GAAP”). These GAAP financial statements include certain charges the Company believes are not indicative of its core ongoing operational performance.

As a result, the Company provides financial information in this Management’s Discussion and Analysis that was not prepared in accordance with GAAP and should not be considered as an alternative to the information prepared in accordance with GAAP. The Company provides this non-GAAP financial information because the Company’s management utilizes it to evaluate its ongoing financial performance and the Company believes it provides greater transparency to investors as supplemental information to its GAAP results.

The Company has provided the non-GAAP financial measures of non-GAAP operating income and non-GAAP operating margin as a result of items that the Company believes are not indicative of its ongoing operations. These include transactions associated with the Company’s acquisitions and the items described below in “Consolidated Results.” The Company believes that evaluation of its financial performance compared with prior and future periods can be enhanced by a presentation of results that exclude the impact of these items. The Company has incurred substantial expense and income associated with acquisitions. While the Company cannot predict the exact timing or amounts of such charges, it does expect to treat the financial impact of these transactions as special items in its future presentation of non-GAAP results.

20


 

Results of Operations

Consolidated Results

Our Condensed Consolidated Statements of Income for the three and six months ended June 30, 2024 and 2023 are as follows:

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in millions, except ratios)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net sales

 

$

137.5

 

 

$

129.2

 

 

$

263.9

 

 

$

241.7

 

Cost of sales

 

 

88.5

 

 

 

89.4

 

 

 

169.7

 

 

 

167.0

 

Gross profit

 

$

49.0

 

 

$

39.8

 

 

$

94.2

 

 

$

74.7

 

Percent of sales

 

 

35.6

%

 

 

30.8

%

 

 

35.7

%

 

 

30.9

%

Selling and administrative expenses

 

 

36.4

 

 

 

28.4

 

 

 

71.4

 

 

 

55.6

 

Percent of sales

 

 

26.5

%

 

 

22.0

%

 

 

27.1

%

 

 

23.0

%

Amortization and earnout expenses

 

 

2.2

 

 

 

2.3

 

 

 

4.4

 

 

 

4.0

 

Acquisition and integration expenses

 

 

0.5

 

 

 

0.3

 

 

 

0.7

 

 

 

0.8

 

Restructuring expenses

 

 

0.4

 

 

 

 

 

 

0.6

 

 

 

 

Executive transition expenses

 

 

 

 

 

0.2

 

 

 

 

 

 

0.2

 

Asbestos litigation expenses

 

 

0.2

 

 

 

 

 

 

0.2

 

 

 

 

Operating income

 

$

9.3

 

 

$

8.6

 

 

$

16.9

 

 

$

14.1

 

Operating margin

 

 

6.8

%

 

 

6.7

%

 

 

6.4

%

 

 

5.8

%

Other (income) expense, net

 

$

(0.7

)

 

$

0.1

 

 

$

(2.2

)

 

$

(0.5

)

Interest expense

 

 

(3.3

)

 

 

(3.7

)

 

 

(6.7

)

 

 

(6.2

)

Income before income taxes

 

$

5.3

 

 

$

5.0

 

 

$

8.0

 

 

$

7.4

 

Income tax expense

 

 

0.4

 

 

 

1.0

 

 

 

1.1

 

 

 

1.0

 

Net income

 

$

4.9

 

 

$

4.0

 

 

$

6.9

 

 

$

6.4

 

Noncontrolling interest

 

 

(0.4

)

 

 

(0.3

)

 

 

(1.0

)

 

 

(0.8

)

Net income attributable to CECO Environmental Corp.

 

$

4.5

 

 

$

3.7

 

 

$

5.9

 

 

$

5.6

 

To compare operating performance between the three and six months ended June 30, 2024 and 2023, the Company has adjusted GAAP operating income to exclude (1) amortization of intangible assets, and earnout expenses, (2) acquisition and integration expenses, which include legal, accounting, and other expenses, (3) executive transition expenses, including fees and expenses incurred in the search for and hiring of new executives, (4) restructuring expenses primarily relating to severance, facility exits, and associated legal expenses, and (5) asbestos litigation expenses, related to expected future settlement payments.

The following table presents the reconciliation of GAAP operating income and GAAP operating margin to non-GAAP operating income and non-GAAP operating margin:

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in millions, except ratios)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Operating income as reported in accordance with GAAP

 

$

9.3

 

 

$

8.6

 

 

$

16.9

 

 

$

14.1

 

Operating margin in accordance with GAAP

 

 

6.8

%

 

 

6.7

%

 

 

6.4

%

 

 

5.8

%

Amortization and earnout expenses

 

 

2.2

 

 

 

2.3

 

 

 

4.4

 

 

 

4.0

 

Acquisition and integration expenses

 

 

0.5

 

 

 

0.3

 

 

 

0.7

 

 

 

0.8

 

Restructuring expenses

 

 

0.4

 

 

 

 

 

 

0.6

 

 

 

 

Executive transition expenses

 

 

 

 

 

0.2

 

 

 

 

 

 

0.2

 

Asbestos litigation expenses

 

 

0.2

 

 

 

 

 

 

0.2

 

 

 

 

Non-GAAP operating income

 

$

12.6

 

 

$

11.4

 

 

$

22.8

 

 

$

19.1

 

Non-GAAP operating margin

 

 

9.2

%

 

 

8.8

%

 

 

8.6

%

 

 

7.9

%

Orders booked decreased $22.1 million, or 13.6%, to $140.8 million during the three months ended June 30, 2024 compared with $162.9 million in the three months ended June 30, 2023. The decrease is primarily driven by a decrease related to emissions management, offset by an increase related to our separation, filtration and industrial water technologies. Of the $140.8 million in orders booked during the three months ended June 30, 2024, $12.2 million is attributable to acquisitions that occurred during the preceding twelve month period.

Orders booked decreased $22.9 million, or 7%, to $286.1 million during the six months ended June 30, 2024 compared with $309.0 million in the six months ended June 30, 2023. The decrease is primarily driven by a decrease related to emissions management, offset

21


 

by an increase related to our separation, filtration and industrial water technologies. Of the $286.1 million in orders booked during the six months ended June 30, 2024, $21.0 million is attributable to acquisitions that occurred during the preceding twelve month period.

Net sales for the three months ended June 30, 2024 increased $8.3 million, or 6.4%, to $137.5 million compared with $129.2 million for the three months ended June 30, 2023. The increase is broad-based, led by an increase of $5.2 million related to our separation, filtration and industrial water technologies. Approximately 97%, or $132.8 million, of net sales for the three months ended June 30, 2024 is attributable to organic revenue, defined as revenue recorded subsequent to the twelve month period post-acquisition date.

Net sales for the six months ended June 30, 2024 increased $22.2 million, or 9.2%, to $263.9 million compared with $241.7 million for the six months ended June 30, 2023. The increase is broad-based, led by an increase of $17.8 million related to separation, filtration, and industrial water technologies. Approximately 94% or $249.2 million, of net sales for the six months ended June 30, 2024 is attributable to organic revenue.

Gross profit increased $9.2 million, or 23.1%, to $49.0 million in the three months ended June 30, 2024 compared with $39.8 million in the three months ended June 30, 2023. The increase in gross profit is primarily attributable to sales mix, project execution and flow through from higher booked margins, as well as continued benefits from sourcing and value engineering. Gross profit as a percentage of sales increased to 35.6% in the three months ended June 30, 2024 compared with 30.8% in the three months ended June 30, 2023.

Gross profit increased $19.5 million, or 26.1%, to $94.2 million in the six months ended June 30, 2024 compared with $74.7 million in the six months ended June 30, 2023. The increase in gross profit is primarily attributable to sales mix, project execution and flow through from higher booked margins, as well as continued benefits from sourcing and value engineering. Gross profit as a percentage of sales increased to 35.7% in the six months ended June 30, 2024 compared with 30.9% in the six months ended June 30, 2023.

Selling and administrative expenses were $36.4 million for the three months ended June 30, 2024 compared with $28.4 million for the three months ended June 30, 2023. The increase is primarily attributable to acquisitions during the prior year, workforce merit and other annual compensation adjustments, and investments in functional support for sourcing and manufacturing benefits.

Selling and administrative expenses were $71.4 million for the six months ended June 30, 2024 compared with $55.6 million for the six months ended June 30, 2023. The increase is primarily attributable to acquisitions during the prior year, workforce merit and other annual compensation adjustments, and investments in functional support for sourcing and manufacturing benefits.

Amortization and earnout expense was $2.2 million for the three months ended June 30, 2024, compared with $2.3 million for the three months ended June 30, 2023.

Amortization and earnout expense was $4.4 million for the six months ended June 30, 2024 compared with $4.0 million for the six months ended June 30, 2023. The increase in expense is attributable to an increase of $0.7 million in earnout expense and an increase of $0.4 million in definite lived asset amortization due to increased intangible assets attributable to prior year acquisitions.

Operating income increased $0.7 million to $9.3 million for the three months ended June 30, 2024 compared with operating income of $8.6 million for the three months ended June 30, 2023. The increase in operating income is primarily attributable to the increase in net sales.

Operating income increased $2.8 million to $16.9 million for the six months ended June 30, 2024 compared with operating income of $14.1 million for the six months ended June 30, 2023. The increase in operating income is primarily attributable to the increase in net sales.

Non-GAAP operating income was $12.6 million for the three months ended June 30, 2024 compared with $11.4 million for the three months ended June 30, 2023. Non-GAAP operating income as a percentage of sales increased to 9.2% for the three months ended June 30, 2024 from 8.8% for the three months ended June 30, 2023.

Non-GAAP operating income was $22.8 million for the six months ended June 30, 2024 compared with $19.1 million for the six months ended June 30, 2023. Non-GAAP operating income as a percentage of sales increased to 8.6% for the three months ended June 30, 2024 from 7.9% for the six months ended June 30, 2023.

Interest expense decreased to $3.3 million in the three months ended June 30, 2024 compared with interest expense of $3.8 million for the three months ended June 30, 2023. The decrease in interest expense is primarily due to reduction of the debt balance.

22


 

Interest expense increased to $6.7 million in the six months ended June 30, 2024 compared with interest expense of $6.2 million for the six months ended June 30, 2023. The increase in interest expense is primarily due to rising interest rates.

Income tax expense was $0.4 million for the three months ended June 30, 2024 compared with income tax expense of $1.0 million for the three months ended June 30, 2023. Income tax expense was $1.1 million for the six months ended June 30, 2024 compared with income tax expense of $1.0 million for the six months ended June 30, 2023. The effective income tax rate for the three months ended June 30, 2024 was 7.4% compared with 19.8% for the three months ended June 30, 2023. The effective income tax rate for the six months ended June 30, 2024 was 13.1% compared with 13.3% for the six months ended June 30, 2023. The effective income tax rates for the three and six months ended June 30, 2024 differ from the United States federal statutory rate. Our effective tax rate is affected by certain other permanent differences, including state income taxes, non-deductible incentive stock-based compensation, and differences in tax rates among the jurisdictions in which we operate. Additionally, we received a tax indemnification payment of $0.5 million, related to a prior year acquisition, in the second quarter of 2024.

Business Segments

The Company’s operations are organized and reviewed by management along its product lines or end market that the segment serves and are presented in two reportable segments. The results of the segments are reviewed through “Income from operations” on the unaudited Condensed Consolidated Statements of Income.

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net Sales (less intra- and inter-segment sales)

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

97,392

 

 

$

87,522

 

 

$

186,741

 

 

$

161,977

 

Industrial Process Solutions segment

 

 

40,130

 

 

 

41,659

 

 

 

77,113

 

 

 

79,767

 

Total net sales

 

$

137,522

 

 

$

129,181

 

 

$

263,854

 

 

$

241,744

 

 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Income from Operations

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

19,330

 

 

$

14,089

 

 

$

35,607

 

 

$

23,894

 

Industrial Process Solutions segment

 

 

5,669

 

 

 

4,586

 

 

 

12,769

 

 

 

10,131

 

Corporate and Other(1)

 

 

(15,742

)

 

 

(10,072

)

 

 

(31,433

)

 

 

(19,961

)

Total income from operations

 

$

9,257

 

 

$

8,603

 

 

$

16,943

 

 

$

14,064

 

(1) Includes corporate compensation, professional services, information technology and other general and administrative corporate expenses.

Engineered Systems Segment

Our Engineered Systems segment orders booked decreased $3.4 million, or 3.2%, to $100.6 million during the three months ended June 30, 2024 compared with $103.9 million in the three months ended June 30, 2023. The decrease is primarily driven by a decrease related to emissions management, offset by an increase related to dampers and expansion joints. Of the $100.6 million in orders booked during the three months ended June 30, 2024, $12.2 million is attributable to acquisitions that occurred during the preceding twelve month period.

Our Engineered Systems segment orders booked were $200.0 million during the six months ended June 30, 2024 compared with $200.5 million in the six months ended June 30, 2023. Of the $200.0 million in orders booked during the six months ended June 30, 2024, $21.0 million is attributable to acquisitions that occurred during the preceding twelve month period.

Our Engineered Systems segment net sales increased $9.9 million to $97.4 million for the three months ended June 30, 2024 compared with $87.5 million for the three months ended June 30, 2023. The increase is led by an increase of $5.2 million related to our separation, filtration, and industrial water technologies. Approximately 95%, or $92.7 million, of net sales for the three months ended June 30, 2024 is attributable to organic revenue.

Our Engineered Systems segment net sales increased $24.7 million to $186.7 million for the six months ended June 30, 2024 compared with $162.0 million for the six months ended June 30, 2023. The increase is led by an increase of $17.8 million related to our separation, filtration, and industrial water technologies. Approximately 92%, or $172.1 million, of net sales for the six months ended June 30, 2024 is attributable to organic revenue.

23


 

Operating income for the Engineered Systems segment increased $5.2 million to $19.3 million for the three months ended June 30, 2024 compared with $14.1 million for the three months ended June 30, 2023. The increase is primarily attributable to increased net sales, partially offset by an increase in direct costs.

Operating income for the Engineered Systems segment increased $11.7 million to $35.6 million for the six months ended June 30, 2024 compared with $23.9 million for the six months ended June 30, 2023. The increase is primarily attributable to increased net sales, partially offset by an increase in direct costs.

Industrial Process Solutions Segment

Our Industrial Process Solutions segment orders booked decreased $18.7 million, or 31.8%, to $40.2 million during the three months ended June 30, 2024 compared with $58.9 million in the three months ended June 30, 2023. The decrease is primarily driven by a decrease related to industrial air end markets, offset by an increase related to duct fabrication and installation.

Our Industrial Process Solutions segment orders booked decreased $23.0 million, or 21.2%, to $85.5 million during the six months ended June 30, 2024 compared with $108.5 million in the six months ended June 30, 2023. The decrease is primarily driven by a decrease related to industrial air end markets, offset by an increase related to duct fabrication and installation.

Our Industrial Process Solutions segment net sales were $40.1 million for the three months ended June 30, 2024 compared with $41.7 million for the three months ended June 30, 2023. All sales for the three months ended June 30, 2024 represent organic revenue.

Our Industrial Process Solutions segment net sales were $77.1 million for the six months ended June 30, 2024 compared with $79.8 million for the six months ended June 30, 2023. All sales for the six months ended June 30, 2024 represent organic revenue.

Operating income for the Industrial Process Solutions segment increased $1.1 million to $5.7 million for the three months ended June 30, 2024 compared with $4.6 million for the three months ended June 30, 2023. The increase is primarily attributable to a decrease in direct costs, partially offset by a decrease in net sales.

Operating income for the Industrial Process Solutions segment increased $2.7 million to $12.8 million for the six months ended June 30, 2024 compared with $10.1 million for the six months ended June 30, 2023. The increase is primarily attributable to increased sales, partially offset by an increase in direct costs.

Corporate and Other Segment

Operating expense for the Corporate and Other segment increased $5.6 million to $15.7 million for the three months ended June 30, 2024 compared with $10.1 million for the three months ended June 30, 2023. The increase is primarily attributable to investments made to support growth inclusive of acquisition and integration expenses, and inflationary increases for wages and services.

Operating expense for the Corporate and Other segment increased $11.4 million to $31.4 million for the six months ended June 30, 2024 compared with $20.0 million for the six months ended June 30, 2023. The increase is primarily attributable to investments made to support growth inclusive of acquisition and integration expenses, and inflationary increases for wages and services.

Backlog

Backlog (i.e., unfulfilled or remaining performance obligations) represents the sales we expect to recognize for our products and services for which control has not yet transferred to the customer. Backlog increased to $390.9 million as of June 30, 2024 from $370.9 million as of December 31, 2023. Our customers may have the right to cancel a given order. Historically, cancellations have not been common. Backlog is adjusted on a quarterly basis for adjustments in foreign currency exchange rates. Substantially all backlog is expected to be delivered within 12 to 18 months. Backlog is not defined by GAAP and our methodology for calculating backlog may not be consistent with methodologies used by other companies.

New Accounting Pronouncements

For information regarding recent accounting pronouncements, see Note 2 to the unaudited condensed consolidated financial statements within Item 1 of this Quarterly Report on Form 10-Q.

24


 

Liquidity and Capital Resources

When we undertake large jobs, our working capital objective is to make these projects self-funding. We work to achieve this by obtaining customer down payments, progress billing contracts, when possible, utilizing extended payment terms from material suppliers, and paying sub-contractors after payment from our customers, which is an industry practice. Our investment in net working capital is funded by cash flow from operations and by our revolving line of credit under our Credit Facility (as defined below).

At June 30, 2024, the Company had working capital of $74.1 million, compared with $78.3 million at December 31, 2023. The ratio of current assets to current liabilities was 1.36 to 1.00 on June 30, 2024, as compared with a ratio of 1.39 to 1.00 on December 31, 2023. The decrease in the ratio was driven by timing of cash receipts and payments to suppliers.

At June 30, 2024 and December 31, 2023, cash and cash equivalents totaled $36.5 million and $54.8 million, respectively. As of June 30, 2024 and December 31, 2023, $28.6 million and $38.5 million, respectively, of our cash and cash equivalents were held by certain non-United States subsidiaries, as well as being denominated in foreign currencies.

Debt consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Outstanding borrowings under Credit Facility (defined below)
     Term loan payable in quarterly principal installments of $550 through September
     2023, $2,232 through September 2025 and $2,977 thereafter with balance due upon
     maturity in December 2026

 

 

 

 

 

 

Term loan

 

$

107,959

 

 

$

112,424

 

Revolving credit facility

 

 

15,800

 

 

 

17,300

 

Total outstanding borrowings under the Credit Facility

 

 

123,759

 

 

 

129,724

 

Outstanding borrowings under the joint venture term debt

 

 

8,123

 

 

 

8,855

 

Unamortized debt discount

 

 

(1,056

)

 

 

(1,296

)

Total outstanding borrowings

 

 

130,826

 

 

 

137,283

 

   Less: current portion

 

 

(10,580

)

 

 

(10,488

)

Total debt, less current portion

 

$

120,246

 

 

$

126,795

 

Credit Facility

The Company’s outstanding borrowings in the United States consist of a senior secured term loan and a senior secured revolver loan with sub-facilities for letters of credit, swing-line loans and multi-currency loans (collectively, the “Credit Facility”). As of June 30, 2024 and December 31, 2023, the Company was in compliance with all related financial and other restrictive covenants under the Credit Facility.

See Note 8 to the unaudited condensed consolidated financial statements within Item 1 of this Quarterly Report on Form 10-Q for further information on the Company’s debt facilities.

Total unused credit availability under our existing Credit Facility is as follows:

(in millions)

 

June 30, 2024

 

 

December 31, 2023

 

Credit Facility, revolving loans

 

$

140.0

 

 

$

140.0

 

Draw down

 

 

(15.8

)

 

 

(17.3

)

Letters of credit open

 

 

(13.2

)

 

 

(13.3

)

Total unused credit availability

 

$

111.0

 

 

$

109.4

 

Amount available based on borrowing limitations

 

$

111.0

 

 

$

99.8

 

 

25


 


Overview of Cash Flows and Liquidity

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

Net cash provided by (used in) operating activities

 

$

7,891

 

 

$

(611

)

Net cash used in investing activities

 

 

(6,811

)

 

 

(28,061

)

Net cash (used in) provided by financing activities

 

 

(16,565

)

 

 

29,498

 

Effect of exchange rate changes on cash and cash equivalents

 

 

(3,049

)

 

 

1,141

 

Net (decrease) increase in cash

 

$

(18,534

)

 

$

1,967

 

Operating Activities

For the six months ended June 30, 2024, $7.9 million of cash was provided by operating activities compared with $0.6 million used in operations in the prior year period, representing $8.5 million additional cash generated. Cash flow from operating activities in the first six months of 2024 increased year-over-year primarily due to timing of costs and billings on uncompleted contracts, and improved management of payments to suppliers.

Investing Activities

For the six months ended June 30, 2024, net cash used in investing activities was $6.8 million compared with $28.1 million used in investing activities in the prior year period. For the six months ended June 30, 2024, the $6.8 million cash used in investing activities was primarily the result of acquisitions of property and equipment. In the prior year period, the $28.1 million cash used in investing activities was the result of $24.1 million used for acquisitions as described in Note 15 and $3.9 million for the acquisition of property and equipment.

Financing Activities

For the six months ended June 30, 2024, $16.6 million was used in financing activities compared with $29.5 million provided by financing activities in the prior year period, for a decrease of $12.9 million. For the six months ended June 30, 2024, the primary uses of cash for financing activities were $6.7 million to repay long-term debt, $5.0 million to repurchase common stock, $2.1 million of deferred consideration paid for acquisitions, $1.7 million for earnout payments and $1.1 million on distributions to the noncontrolling interest. In the prior year period, the Company used $31.9 million for net borrowings on the Company’s revolving credit lines, primarily used to finance acquisitions, $1.7 million in repayment on long-term debt, $0.9 million on deferred payments for acquisitions, and $0.6 million on distributions to the noncontrolling interest. The Company also received $1.2 million of proceeds from the exercise of stock options and the employee stock purchase plan.

Critical Accounting Policies and Estimates

Management’s discussion and analysis of the Company’s financial condition and results of operations are based upon the Company’s condensed consolidated financial statements. The preparation of these financial statements requires management to make estimates and assumptions about future events. These estimates and the underlying assumptions affect the amounts of assets and liabilities reported, disclosures about contingent assets and liabilities and reported amounts of revenues and expenses. Such estimates include revenue recognition, the valuation of trade receivables, inventories, goodwill, intangible assets, other long-lived assets, legal contingencies, guarantee obligations and assumptions used in the calculation of income taxes, assumptions used in business combination accounting and related balances, and pension and post-retirement benefits, among others. These estimates and assumptions are based on management’s best estimates and judgment. Management evaluates its estimates and assumptions on an ongoing basis using historical experience and other factors. Management monitors economic conditions and other factors and will adjust such estimates and assumptions when facts and circumstances dictate. As future events and their effects cannot be determined with precision, actual results could differ significantly from these estimates.

Management believes there have been no changes during the six months ended June 30, 2024 to the items that the Company disclosed as its critical accounting policies and estimates in Management’s Discussion and Analysis of Financial Condition and Results of Operations in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023.

Forward-Looking Statements

This Quarterly Report on Form 10-Q includes forward-looking statements within the meaning of Section 27A of the Securities Act of 1933 and Section 21E of the Securities Exchange Act of 1934, both as amended, which are intended to be covered by the safe harbor

26


 

for “forward-looking statements” provided by the Private Securities Litigation Reform Act of 1995. Any statements contained in this Quarterly Report on Form 10-Q, other than statements of historical fact, including statements about management’s beliefs and expectations, are forward-looking statements and should be evaluated as such. These statements are made on the basis of management’s views and assumptions regarding future events and business performance. We use words such as “believe,” “expect,” “anticipate,” “intends,” “estimate,” “forecast,” “project,” “will,” “plan,” “should” and similar expressions to identify forward-looking statements. Forward-looking statements involve risks and uncertainties that may cause actual results to differ materially from any future results, performance or achievements expressed or implied by such statements. Potential risks and uncertainties, among others, that could cause actual results to differ materially are discussed under “Item 1A. Risk Factors” of this Quarterly Report on Form 10-Q and in the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2023, and include, but are not limited to:

the sensitivity of our business to economic and financial market conditions generally and economic conditions in CECO’s service areas;
dependence on fixed price contracts and the risks associated therewith, including actual costs exceeding estimates and method of accounting for revenue;
the effect of growth on CECO’s infrastructure, resources and existing sales;
the ability to expand operations in both new and existing markets;
the potential for contract delay or cancellation as a result of on-going or worsening supply chain challenges;
liabilities arising from faulty services or products that could result in significant professional or product liability, warranty or other claims;
changes in or developments with respect to any litigation or investigation;
failure to meet timely completion or performance standards that could result in higher cost and reduced profits or, in some cases, losses on projects;
the potential for fluctuations in prices for manufactured components and raw materials, including as a result of tariffs and surcharges, and rising energy costs;
inflationary pressures relating to rising raw material costs and the cost of labor;
the substantial amount of debt incurred in connection with our strategic transactions and our ability to repay or refinance it or incur additional debt in the future;
the impact of federal, state or local government regulations;
our ability to repurchase shares of our common stock and the amounts and timing of repurchases;
our ability to successfully realize the expected benefits of our restructuring program;
economic and political conditions generally;
our ability to successfully identify acquisition targets, integrate acquired businesses and realize the synergies from strategic transactions; and
unpredictability and severity of catastrophic events, including cybersecurity threats, acts of terrorism or outbreak of war or hostilities or public health crises, as well as management’s response to any of the aforementioned factors.

Many of these risks are beyond management’s ability to control or predict. Should one or more of these risks or uncertainties materialize, or should any related assumptions prove incorrect, actual results may vary in material aspects from those currently anticipated. Investors are cautioned not to place undue reliance on such forward-looking statements as they speak only to our views as of the date the statement is made. Furthermore, the forward-looking statements speak only as of the date they are made. Except as required under the federal securities laws or the rules and regulations of the Securities and Exchange Commission (the “SEC”), we undertake no obligation to update or review any forward-looking statements, whether as a result of new information, future events or otherwise.

ITEM 3. QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK

We are exposed to certain market risks, primarily changes in interest rates. Market risk is the potential loss arising from adverse changes in market rates and prices, such as foreign currency exchange and interest rates. For the Company, these exposures are

27


 

primarily related to changes in interest rates. We do not currently hold any derivatives or other financial instruments purely for trading or speculative purposes.

The carrying value of the Company’s total long-term debt and current maturities of long-term debt at June 30, 2024 was $131.9 million. Market risk was estimated as the potential decrease (increase) in future earnings and cash flows resulting from a hypothetical 10% increase (decrease) in the Company’s estimated weighted average borrowing rate at June 30, 2024. Most of the interest on the Company’s debt is indexed to SOFR market rates. The estimated annual impact of a hypothetical 10% change in the estimated weighted average borrowing rate at June 30, 2024 is $1.0 million.

The Company has wholly-owned subsidiaries in several countries, including in the Netherlands, Canada, the People’s Republic of China, Mexico, United Kingdom, Singapore, India, United Arab Emirates and South Korea. In the past, we have not hedged our foreign currency exposure, and fluctuations in exchange rates have not materially affected our operating results. Future changes in exchange rates may positively or negatively impact our revenues, operating expenses and earnings. Transaction gains included in “Other (expense) income, net” line of the Condensed Consolidated Statements of Income were $0.5 million and $0.3 million for the three months ended June 30, 2024 and 2023, respectively, and $1.6 million and $0.8 million for the six months ended June 30, 2024 and 2023, respectively.

ITEM 4. CONTROLS AND PROCEDURES

Evaluation of Disclosure Controls and Procedures

 

The Company maintains disclosure controls and procedures (as defined in Rule 13a-15(e) of the Securities Exchange Act of 1934 (the “Exchange Act”)) that are designed to ensure that information required to be disclosed by the Company in reports that it files or submits under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in the SEC’s rules and forms, and that such information is accumulated and communicated to the Company’s management, including its principal executive officer and principal financial officer, as appropriate, to allow timely decisions regarding required disclosure.

 

The Company’s management, with the participation of the Company’s Chief Executive Officer and Chief Financial Officer, evaluated the effectiveness of the Company’s disclosure controls and procedures as of the end of the period covered by this Quarterly Report on Form 10-Q. Based on that evaluation, our management, including our Chief Executive Officer and Chief Financial Officer, concluded that our disclosure controls and procedures were effective as of June 30, 2024, as the result of the remediation of the material weaknesses in our internal control over financial reporting discussed below, which were previously reported.

 

Management believes that the condensed consolidated financial statements included in this report present fairly, in all material respects, the Company’s financial condition, results of operations and cash flows for each of the periods presented in this report in conformity with accounting principles generally accepted in the United States of America.

 

Previously Reported Material Weaknesses in Internal Control over Financial Reporting

 

Revenue Recognition

As previously reported, we identified a material weakness in internal control over financial reporting relating to management’s review of its revenue recognition for contracts recognized over time isolated to our Engineered Systems segment, which was remediated as of June 30, 2024. Specifically, management did not retain appropriate documentation supporting the review of over time revenue recognition for customer contracts within the Engineered Systems segment. This material weakness did not result in any material misstatement in our interim financial statements or disclosures, and there were no changes required to any of our previously released interim or audited consolidated financial statements.

Balance Sheet Reconciliations

As previously reported, we identified a material weakness in internal control over financial reporting relating to management’s review of balance sheet reconciliations for certain divisions within our Engineered Systems segment, which was remediated as of March 31, 2024. Specifically, management did not review the reconciliations prepared for balance sheet accounts for certain divisions within the Engineered Systems segment as required by Company policy. This material weakness did not result in any material misstatement in our interim financial statements or disclosures, and there were no changes required to any of our previously released interim or audited consolidated financial statements.

Remediation Efforts to Address Material Weaknesses

28


 

Management is committed to maintaining a strong internal control environment. In response to the identified material weaknesses, management, with the oversight of the Audit Committee of the Board of Directors, has taken actions toward the remediation of the material weaknesses in internal control over financial reporting, including reinforcing the importance of adherence to Company policies regarding control performance and related documentation with control owners, strengthening existing training programs for control owners, and developing monitoring activities to validate the performance of controls by control owners. Management has reinforced policies through training sessions as well as ongoing communications, and implemented incremental monitoring activities. As of June 30, 2024, these remediation efforts are complete.

Changes in Internal Control Over Financial Reporting

 

Other than the remediation of the previous period material weaknesses as described above, there were no changes in the Company’s internal control over financial reporting (as defined in Rule 13a-15(f) of the Exchange Act) during the quarter ended June 30, 2024 that materially affected, or are reasonably likely to materially affect, the Company’s internal control over financial reporting.

 

Limitations on the Effectiveness of Controls

 

Control systems, no matter how well conceived and operated, are designed to provide a reasonable, but not an absolute, level of assurance that the objectives of the control system are met. Further, the design of a control system must reflect the fact that there are resource constraints, and the benefits of controls must be considered relative to their costs. Because of the inherent limitations in all control systems, no evaluation of controls can provide absolute assurance that all control issues and instances of fraud, if any, within the Company have been detected. Because of the inherent limitations in a cost-effective control system, misstatements due to error or fraud may occur and not be detected. The Company conducts periodic evaluations of its internal controls to enhance, where necessary, its procedures and controls.

 

29


 

PART II – OTHER INFORMATION

See Note 14 to the unaudited Condensed Consolidated Financial Statements contained in Part I, Item 1 of this Quarterly Report on Form 10-Q for information regarding legal proceedings in which the Company is involved.

ITEM 1A. RISK FACTORS

There have been no material changes in the Company’s risk factors that were disclosed in “Part I – Item 1A. Risk Factors” of the Company's Annual Report on Form 10-K for the year ended December 31, 2023.

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

Purchases of Equity Securities by the Issuer and Affiliated Purchasers

The following table provides information about our purchases of the Company's equity securities for the three months ended June 30, 2024:

 

 

Issuer's Purchases of Equity Securities

 

(in thousands, except per share data)
Period

 

Total Number of Shares Purchased 1

 

 

Average Price Paid per Share

 

 

Total Number of Shares Purchased as Part of Publicly Announced Plans or Programs

 

 

Approximate Dollar Value of Shares That May Yet Be Purchased Under the Plans or Programs

 

April 1, 2024 - April 30, 2024

 

 

 

$

 

 

 

 

$

10,000

 

May 1, 2024 - May 31, 2024

 

 

48,102

 

 

 

23.09

 

 

 

48,102

 

 

 

8,889

 

June 1, 2024 - June 30, 2024

 

 

38,251

 

 

 

23.25

 

 

 

38,251

 

 

 

8,000

 

Total

 

 

86,353

 

 

$

23.16

 

 

 

86,353

 

 

 

 

(1) On May 10, 2022, the Board of Directors authorized a $20.0 million share repurchase program as described within Note 9 to the unaudited Condensed Consolidated Financial Statements. The program expires on April 30, 2025.

ITEM 3. DEFAULTS UPON SENIOR SECURITIES

None.

ITEM 4. MINE SAFETY DISCLOSURES

Not applicable.

ITEM 5. OTHER INFORMATION

(c)

Rule 10b5-1 Trading Plans

During the three months ended June 30, 2024, no director or Section 16 officer of the Company adopted or terminated a “Rule 10b5-1 trading arrangement,” or “non-Rule 10b5-1 trading arrangement,” as each term is defined in Item 408(a) of Regulation S-K.

 

 

30


 

ITEM 6. EXHIBITS

 

3.1

 

Certificate of Amendment to the Certificate of Incorporation of CECO Environmental Corp. (incorporated by reference to Exhibit 3.1 to the Company’s Current Report on Form 8-K filed with the SEC on May 22, 2024)

 

 

 

31.1

Rule 13(a)/15d-14(a) Certification by Chief Executive Officer

31.2

Rule 13(a)/15d-14(a) Certification by Chief Financial Officer

32.1

Certification of Chief Executive Officer (18 U.S. Section 1350)

32.2

Certification of Chief Financial Officer (18 U.S. Section 1350)

101.INS

Inline XBRL Instance Document

101.SCH

Inline XBRL Taxonomy Extension Schema Document with Embedded Linkbase Documents

104

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

 

31


 

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.

CECO Environmental Corp.

 

 

 

 

By:

/s/ Kiril Kovachev

 

Kiril Kovachev

 

Chief Accounting Officer

(principal accounting officer and duly authorized officer)

Date: July 30, 2024

 

32


EX-31.1 2 ceco-ex31_1.htm EX-31.1 EX-31.1

 

Exhibit 31.1

Certification of Chief Executive Officer

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

I, Todd Gleason, certify that:

1. I have reviewed this Quarterly Report on Form 10-Q of CECO Environmental Corp.;

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

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

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

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

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

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

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

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

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

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

 

/s/ Todd Gleason

Todd Gleason

Chief Executive Officer

 

Date: July 30, 2024

 


EX-31.2 3 ceco-ex31_2.htm EX-31.2 EX-31.2

 

Exhibit 31.2

Certification of Chief Financial Officer

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

I, Peter Johansson, certify that:

1. I have reviewed this Quarterly Report on Form 10-Q of CECO Environmental Corp.;

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

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

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

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

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

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

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

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

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

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

 

/s/ Peter Johansson

Peter Johansson

Chief Financial and Strategy Officer

 

Date: July 30, 2024

 


EX-32.1 4 ceco-ex32_1.htm EX-32.1 EX-32.1

 

Exhibit 32.1

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the Quarterly Report of CECO Environmental Corp. (the “Company”) on Form 10-Q for the quarter ended June 30, 2024 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Todd Gleason, Chief Executive Officer of the Company, certify, pursuant to 18 U.S.C. § 1350, as adopted pursuant to § 906 of the Sarbanes-Oxley Act of 2002, to the best of my knowledge and belief, that:

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

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

 

/s/ Todd Gleason

Todd Gleason

Chief Executive Officer

Date: July 30, 2024

 


EX-32.2 5 ceco-ex32_2.htm EX-32.2 EX-32.2

 

Exhibit 32.2

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the Quarterly Report of CECO Environmental Corp. (the “Company”) on Form 10-Q for the quarter ended June 30, 2024 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Peter Johansson, Chief Financial Officer of the Company, certify, pursuant to 18 U.S.C. § 1350, as adopted pursuant to § 906 of the Sarbanes-Oxley Act of 2002, to the best of my knowledge and belief, that:

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

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

 

/s/ Peter Johansson

Peter Johansson

Chief Financial and Strategy Officer

Date: July 30, 2024

 


GRAPHIC 6 img58591874_0.jpg GRAPHIC begin 644 img58591874_0.jpg M_]C_X 02D9)1@ ! @ 0 ! #_VP!# @&!@<&!0@'!P<)"0@*#!0-# L+ M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7& MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$ P$! 0$! M 0$! 0 $" P0%!@<("0H+_\0 M1$ @$"! 0#! <%! 0 0)W $" M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$ MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4 MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,! (1 Q$ /P#W'5=8L-$L MS=:AK'T ZDUQK_%W0UFVI:WC1Y^_M4?IFN.U^2Y\:_$?^S/-*P1S& MWC]$1?O-]3@G\J])C^'OAB.R^S'34?Y<&5F.\GUSFNGDITTN?5LRYI2?NFIH M?B'3?$-J;C3K@2!>'1AAD/N*J2^+],AF>)Q/N1BIP@[?C5G0?#FG>'+,V]A# MMW'+R-R[GW-<3:_8/^$CG_M(XMM[YZ]>W3FO-QE5TY)4]GW&Y221UB^,M+=@ MH$^2$7F18V!=F 48DZ_E69\5M9FT[0H+"W />NV2HJ\=;B7.]3?NKJ"RMI+FYF M2&&,9=W. !7$7GQ9T&"8I!%=7 !QO50H/TR6:7=T5!DDE)(SW '84*$(14I]0Z M'K\ZVT$[0W+?=BG&TM]#T-=/7C?Q$\&6N@1P:MI(:&(R!'C#$[&Z@J>HZ5Z) MX*UB37/"MG=SMNG ,K*<9_$8/XTJE./*IPV'&3ORR/++B4^#_ (I27-TC M" 7#29 ZQOGD>N,_I7LZ:MISV/VU;ZW-MMW>;Y@VX^M9WB7PGIOBBW5+Q62: M/_5SQ\,OM[CVK@7^#=UYN(]9B,6>K0G/Y9JW*G52#;'PK#)Y,CS7,H M DF?C(] .PJK<>"//N9)OM^W>Q;'E=,_C7EXVDYRC[-72*:DTKHGB\/Z##,D MJW0W(P8?OEZCFN<^+^G27&E6.H1@LD#LCD=@V,'\Q^M;(\"8.?[0/_?K_P"O M752V<%Q8M9W,:RPLFQT8<,,5I@W*G*[ARARW35K'*_#[Q)9:GX:M+0SQI=VD M8B>)FP2%X##U&,5NGQ)HZZPNE&_A^V,N1'N_3/3/MUKA-4^#\,EPTFEZD8$) MR(IDW8^C U/H7PFMK&\CN=3O3=&-@RQ1KM7(]3G)_2N^4:+O+F$G-:6,#XI6 M?R%"E"I!1D[-!:49 M-K6Y)\5?$ME/8Q:+:3)--Y@DF*'(0#.!GUYKJOA[ILNF>#+..92LDNZ8J>H# M'C],5CZ!\*M/TVY2ZU&Y-](ARL>S;'GW'.:]!Z5-2<5!0@.,7?FD8$4&&Q2SX^X.@ V]<]35;3Y]26YL(IVF>*:1WWG/ 8;6_($5U%%]^I7*8%O\ VANNHI7EVVD;JCYYE)Y4^^!BJMS)J)FM62294$,&]\GY23R2 M._O74T4.C=6N'*ZE,K7,@B1##&7)4LP/&/KCZ5NT4U1\PY3FH[J_ATJ2*Y%PL\$ D\9+D99HRP)Z9SW%=#!,EQ"LL9)1NF01^AJ2BKA!QZW&E8__9 end EX-101.SCH 7 ceco-20240630.xsd XBRL TAXONOMY EXTENSION SCHEMA WITH EMBEDDED LINKBASES DOCUMENT 100000 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 100010 - Statement - Condensed Consolidated Balance Sheets (Unaudited) link:presentationLink link:calculationLink link:definitionLink 100020 - Disclosure - Accrued Expenses - Summary of Accrued Expenses (Detail) 2 link:presentationLink link:calculationLink link:definitionLink 100030 - Disclosure - Earnings per Share - Number of Shares Outstanding for Calculation of Earnings Per Share (Detail) 2 link:presentationLink link:calculationLink link:definitionLink 100040 - Disclosure - Senior Debt - Summary of Debt (Detail) 2 link:presentationLink link:calculationLink link:definitionLink 100050 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 100060 - Disclosure - Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Detail) 3 link:presentationLink link:calculationLink link:definitionLink 100070 - Statement - Condensed Consolidated Statements of Income (Unaudited) link:presentationLink link:calculationLink link:definitionLink 100080 - Statement - Condensed Consolidated Statements of Comprehensive Income (Unaudited) link:presentationLink link:calculationLink link:definitionLink 100090 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited) link:presentationLink link:calculationLink link:definitionLink 100100 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited) link:presentationLink link:calculationLink link:definitionLink 100110 - Disclosure - Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Detail) 7 link:presentationLink link:calculationLink link:definitionLink 995455 - Disclosure - Basis of Reporting for Consolidated Financial Statements link:presentationLink link:calculationLink link:definitionLink 995465 - Disclosure - New Financial Accounting Pronouncements link:presentationLink link:calculationLink link:definitionLink 995475 - Disclosure - Accounts Receivable link:presentationLink link:calculationLink link:definitionLink 995485 - Disclosure - Contract Assets and Liabilities link:presentationLink link:calculationLink link:definitionLink 995495 - Disclosure - Inventories link:presentationLink link:calculationLink link:definitionLink 995505 - Disclosure - Goodwill and Intangible Assets link:presentationLink link:calculationLink link:definitionLink 995515 - Disclosure - Accrued Expenses link:presentationLink link:calculationLink link:definitionLink 995525 - Disclosure - Senior Debt link:presentationLink link:calculationLink link:definitionLink 995535 - Disclosure - Earnings per Share link:presentationLink link:calculationLink link:definitionLink 995545 - Disclosure - Share-Based Compensation link:presentationLink link:calculationLink link:definitionLink 995555 - Disclosure - Pension and Employee Benefit Plans link:presentationLink link:calculationLink link:definitionLink 995565 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 995575 - Disclosure - Financial Instruments link:presentationLink link:calculationLink link:definitionLink 995585 - Disclosure - Commitments and Contingencies - Legal Matters link:presentationLink link:calculationLink link:definitionLink 995595 - Disclosure - Acquisitions link:presentationLink link:calculationLink link:definitionLink 995605 - Disclosure - Business Segment Information link:presentationLink link:calculationLink link:definitionLink 995615 - Disclosure - Subsequent Events link:presentationLink link:calculationLink link:definitionLink 995625 - Disclosure - New Financial Accounting Pronouncements (Policies) link:presentationLink link:calculationLink link:definitionLink 995635 - Disclosure - Accounts Receivable (Tables) link:presentationLink link:calculationLink link:definitionLink 995645 - Disclosure - Contract Assets and Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 995655 - Disclosure - Inventories (Tables) link:presentationLink link:calculationLink link:definitionLink 995665 - Disclosure - Goodwill and Intangible Assets (Tables) link:presentationLink link:calculationLink link:definitionLink 995675 - Disclosure - Accrued Expenses (Tables) link:presentationLink link:calculationLink link:definitionLink 995685 - Disclosure - Senior Debt (Tables) link:presentationLink link:calculationLink link:definitionLink 995695 - Disclosure - Earnings per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 995705 - Disclosure - Pension and Employee Benefit Plans (Tables) link:presentationLink link:calculationLink link:definitionLink 995715 - Disclosure - Acquisitions (Tables) link:presentationLink link:calculationLink link:definitionLink 995725 - Disclosure - Business Segment Information (Tables) link:presentationLink link:calculationLink link:definitionLink 995735 - Disclosure - Accounts Receivable - Summary of Accounts Receivable (Detail) link:presentationLink link:calculationLink link:definitionLink 995745 - Disclosure - Accounts Receivable - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 995755 - Disclosure - Contract Assets and Liabilities - Summary of Contract Assets and Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 995765 - Disclosure - Contract Assets and Liabilities (Additional Information) (Details) link:presentationLink link:calculationLink link:definitionLink 995775 - Disclosure - Inventories - Summary of Inventories (Detail) link:presentationLink link:calculationLink link:definitionLink 995785 - Disclosure - Inventories - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 995795 - Disclosure - Goodwill and Intangible Assets - Goodwill / Tradename (Detail) link:presentationLink link:calculationLink link:definitionLink 995805 - Disclosure - Goodwill and Intangible Assets - Intangible Assets - Finite Life (Detail) link:presentationLink link:calculationLink link:definitionLink 995815 - Disclosure - Goodwill and Intangible Assets - Finite Lived Intangible Assets Amortization Expense (Detail) link:presentationLink link:calculationLink link:definitionLink 995825 - Disclosure - Goodwill and Intangible Assets - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 995835 - Disclosure - Accrued Expenses - Summary of Accrued Expenses (Detail) link:presentationLink link:calculationLink link:definitionLink 995845 - Disclosure - Senior Debt - Summary of Debt (Detail) link:presentationLink link:calculationLink link:definitionLink 995855 - Disclosure - Senior Debt - Summary of Debt (Parenthetical) (Detail) link:presentationLink link:calculationLink link:definitionLink 995865 - Disclosure - Senior Debt - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 995875 - Disclosure - Earnings per Share - Number of Shares Outstanding for Calculation of Earnings Per Share (Detail) link:presentationLink link:calculationLink link:definitionLink 995885 - Disclosure - Earnings per Share - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 995895 - Disclosure - Share-Based Compensation - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 995905 - Disclosure - Pension and Employee Benefit Plans - Components of Pension and Employee Benefit Expenses (Detail) link:presentationLink link:calculationLink link:definitionLink 995915 - Disclosure - Pension and Employee Benefit Plans - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 995925 - Disclosure - Income Taxes - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 995935 - Disclosure - Financial Instruments - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 995945 - Disclosure - Commitments and Contingencies - Legal Matters - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 995955 - Disclosure - Acquisitions - Additional Information (Detail) link:presentationLink link:calculationLink link:definitionLink 995965 - Disclosure - Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Detail) link:presentationLink link:calculationLink link:definitionLink 995975 - Disclosure - Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Parenthetical) (Detail) link:presentationLink link:calculationLink link:definitionLink 995985 - Disclosure - Acquisitions - Schedule of Unaudited Pro Forma Financial Information (Details) link:presentationLink link:calculationLink link:definitionLink 995995 - Disclosure - Business Segment Information - Net Sales and Income from Operation by Business Segment (Detail) link:presentationLink link:calculationLink link:definitionLink 996005 - Disclosure - Business Segment Information - Property and Equipment Additions, Depreciation and Amortization and Identifiable Assets (Detail) link:presentationLink link:calculationLink link:definitionLink 996015 - Disclosure - Business Segment Information - Goodwill (Detail) link:presentationLink link:calculationLink link:definitionLink 996025 - Disclosure - Business Segment Information - Intra-Segment and Inter-Segment Revenues (Detail) link:presentationLink link:calculationLink link:definitionLink 996035 - Disclosure - Subsequent Events (Additional Information) (Details) link:presentationLink link:calculationLink link:definitionLink Accounts Receivable, before Allowance for Credit Loss, Current Accounts receivable Borrowings on revolving credit lines Borrowings On Revolving Line Of Credit Borrowings on revolving line of credit. Collaborative Arrangement and Arrangement Other than Collaborative Collaborative Arrangement and Arrangement Other than Collaborative [Domain] Document Transition Report Document Transition Report Defined Benefit Plan Disclosure [Line Items] Defined Benefit Plan Disclosure [Line Items] Deferred consideration paid for acquisitions Deferred Consideration Paid For Acquisitions Deferred Consideration Paid For Acquisitions Kemco Systems Co Llc [Member] Kemco Systems Co Llc [Member] Noncontrolling Interest [Member] Noncontrolling Interest [Member] Contract receivables Receivables, Long-Term Contracts or Programs Receivables, Long-term Contracts or Programs, Total Other liabilities Other Liabilities, Noncurrent Other Liabilities, Noncurrent, Total Schedule Of Segment Reporting Information By Segment [Table] Schedule of Segment Reporting Information, by Segment [Table] Prepaid expense and other current assets Increase (Decrease) in Prepaid Expense and Other Assets Increase (Decrease) in Prepaid Expense and Other Assets, Total Restricted Stock Units [Member] Restricted Stock Units (RSUs) [Member] Amortization expense of finite life intangibles for 2026 Finite-Lived Intangible Asset, Expected Amortization, Year Two Receivable Type Receivable Type [Axis] Net sales Net sales Revenue from Contract with Customer, Excluding Assessed Tax DS21 Co., Ltd. DS21 Co., Ltd. [Member] DS21 Co., Ltd. [Member] Compass Water Solutions, Inc [Member] Compass Water Solutions, Inc [Member] Short-Term Debt, Type [Axis] Number of claims pending Loss Contingency, Pending Claims, Number Loss Contingency, Pending Claims, Number, Beginning Balance Loss Contingency, Pending Claims, Number, Ending Balance Schedule Of Business Acquisitions By Acquisition [Table] Schedule of Business Acquisitions, by Acquisition [Table] Noncatastrophic Event [Axis] Trade accounts payable, including amounts due to subcontractors Accounts Payable, Trade, Current Billings in excess of costs and estimated earnings on uncompleted contracts Contract with Customer, Liability, Current Interest Income (Expense), Net Interest Income (Expense), Net, Total Net income attributable to CECO Environmental Corp. Title of Individual Title of Individual [Domain] Subsequent Events Subsequent Events [Text Block] Disclosure Text Block [Abstract] Purchase Price Payments for Previous Acquisition Restricted stock units issued, Shares Stock Issued During Period, Shares, Issued for Services Payments on finance leases and financing liability Payments On Finance Leases And Financing Liability Payments on finance leases and financing liability. Operating lease liabilities Operating Lease, Liability, Noncurrent Common stock repurchase and retirement, Shares Stock Repurchased During Period, Shares Repurchase of common stock (in shares) Unfunded liability plans Liability, Defined Benefit Pension Plan, Noncurrent Net Income (Loss) Attributable to Noncontrolling Interest Net Income (Loss) Attributable to Noncontrolling Interest, Total Non-controlling interest Noncontrolling interest Expected return on plan assets Defined Benefit Plan, Expected Return (Loss) on Plan Assets Unamortized debt discount Debt Instrument, Unamortized Discount Debt Instrument, Unamortized Discount, Total Malvar Engineering Limited [Member] Malvar Engineering Limited [Member] Malvar Engineering Limited [Member] Schedule Of Accounts Notes Loans And Financing Receivable [Table] Schedule of Accounts, Notes, Loans and Financing Receivable [Table] Total current assets Assets Current Assets, Current EIS revenue Deferred Revenue, Revenue Recognized Total liabilities and shareholders' equity Liabilities and Equity Entity Address, State or Province Entity Address, State or Province Deferred Income Tax Assets, Net, Total Deferred Income Tax Assets, Net Deferred income taxes Finite-Lived Intangible Assets, Purchase Accounting Adjustments Acquisition Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value Weighted-average fair value of stock options granted Inventories Inventory Disclosure [Text Block] Trading Symbol Trading Symbol Debt Instrument, Redemption, Period Debt Instrument, Redemption, Period [Axis] Common stock, shares issued Common Stock, Shares, Issued Common Stock, Shares, Issued, Total Long-Term Debt, Maturity, Year Two Credit facility principal payments 2025 Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current Consolidated Entities Consolidated Entities [Domain] Net Income (Loss) Attributable to Parent [Abstract] Numerator (for basic and diluted earnings per share) Debt Instrument [Table] Schedule of Long-Term Debt Instruments [Table] Beginning Balance, Shares Ending Balance, Shares Shares, Outstanding Accumulated Other Comprehensive Loss [Member] AOCI Attributable to Parent [Member] Acquisitions and Joint Ventures Business Combination Disclosure [Text Block] Less: current portion Current portion of debt Long-Term Debt, Current Maturities Long-term Debt, Current Maturities, Total Foreign currency translation (loss) gain Translation gain (loss) Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent, Total Foreign currency translation (loss) gain Entity Address, City or Town Entity Address, City or Town Long-Term Debt, Maturity, Remainder of Fiscal Year Credit facility principal payments 2023 Income taxes payable Increase (Decrease) in Income Taxes Payable Senior Debt Debt Disclosure [Text Block] Subsequent Event [Member] Subsequent Event [Member] Subsequent Event Type [Axis] Capital in Excess of Par Value [Member] Additional Paid-in Capital [Member] Raw materials Inventory, Raw Materials, Gross Inventory, Raw Materials, Gross, Total Current liabilities: Liabilities, Current [Abstract] Current assets: Assets, Current [Abstract] Accounts receivable, net allowances Accounts Receivable, Allowance for Credit Loss, Current Provision for credit losses Counterparty Name Counterparty Name [Axis] Preferred stock, par value Preferred Stock, Par or Stated Value Per Share Statement of Stockholders' Equity [Abstract] Term loans, year of maturity Debt Instrument, Maturity Date Total outstanding borrowings under the Credit Facility Long-Term Debt Property, plant and equipment, net Property, Plant and Equipment, Net Property, Plant and Equipment, Net, Total Property, Plant and Equipment, Net, Beginning Balance Property, Plant and Equipment, Net, Ending Balance Goodwill, Purchase Accounting Adjustments Goodwill, Acquisitions Restructuring Charges Restructuring Charges, Total Restructuring expenses Western Air Ducts Ltd [Member] Western Air Ducts Ltd [Member] Secured Debt, Total Secured Debt Secured Debt Bad debt expense (recoveries) Accounts Receivable, Credit Loss Expense (Reversal) Acquired intangible assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Indefinite-Lived Intangible Assets Contingent consideration Business Combination, Contingent Consideration, Liability Business Combination, Contingent Consideration, Liability, Total Statement of Comprehensive Income [Abstract] Scenario Scenario [Domain] Collaborative Arrangement and Arrangement Other than Collaborative Collaborative Arrangement and Arrangement Other than Collaborative [Axis] Treasury stock, shares Treasury Stock, Common, Shares Entity Central Index Key Entity Central Index Key Accounts Receivable Loans, Notes, Trade and Other Receivables Disclosure [Text Block] Percentage of equity hold in joint venture Percentage Of Equity Hold In Joint Venture Percentage of equity hold in joint venture. Goodwill Schedule of Goodwill [Table Text Block] Total current liabilities Liabilities, Current Entity Tax Identification Number Entity Tax Identification Number Pre tax loss Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Income before income taxes Industrial Process Solutions Segment [Member] Industrial Process Solutions [Member] Industrial process solutions member. Increase (Decrease) in Operating Capital [Abstract] Changes in operating assets and liabilities, net of acquisitions: Accrued Liabilities [Member] Bank Guarantees [Member] Bank Guarantees [Member] Bank guarantees. Financial Instruments [Domain] Denominator Weighted Average Number of Shares Outstanding Reconciliation [Abstract] Line Of Credit Facility [Table] Line of Credit Facility [Table] Investment, Name [Axis] Warehouse Agreement Borrowings, Total Warehouse Agreement Borrowings Outstanding borrowing under the joint venture term debt General rubber llc . General Rubber LLC [Member] Identifiable assets Total assets Assets Operating Lease, Right-of-Use Asset Right-of-use assets from operating leases Right-of-use assets from operating leases Line Of Credit Facility [Line Items] Line of Credit Facility [Line Items] Accrued expenses Increase (Decrease) in Accrued Liabilities and Other Operating Liabilities Liability for uncertain tax positions Liability for Uncertainty in Income Taxes, Noncurrent Entity Registrant Name Entity Registrant Name Related Party, Type [Domain] Accumulated loss Retained Earnings (Accumulated Deficit) Retained Earnings (Accumulated Deficit), Total Retained Earnings (Accumulated Deficit), Beginning Balance Retained Earnings (Accumulated Deficit), Ending Balance Cash received from employee stock option exercised Proceeds from Stock Plans Supplemental Cash Flow Information [Abstract] Cash paid during the period for: additional consideration Earn Out additional consideration Accumulated Loss [Member] Retained Earnings [Member] Corporate and Other [Member] Total shareholders' equity Beginning Balance Ending Balance Equity, Including Portion Attributable to Noncontrolling Interest Fair Value Of Financial Instruments [Line Items] Fair Value Of Financial Instruments [Line Items] Fair value of financial instruments. Deferred income tax liability, net Deferred Income Tax Liabilities, Net Deferred Income Tax Liabilities, Net, Total Minimum [Member] Minimum [Member] Revenues Revenues Revenues, Total Scenario Forecast [Member] Forecast [Member] Income taxes payable Accrued Income Taxes, Current Equity Component Equity Component [Domain] Segments Segments [Axis] Accounts Payable and Other Accrued Liabilities Accounts payable and accrued expenses Defined benefit plan contributions Defined Benefit Plan, Plan Assets, Contributions by Employer Receivables [Abstract] Adjustments to reconcile net income to net cash provided by (used in) operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Goodwill, foreign currency translation Goodwill, Foreign Currency Translation Gain (Loss) Debt Disclosure [Abstract] Debt instrument, basis spread on variable rate Debt Instrument, Basis Spread on Variable Rate Entity Current Reporting Status Entity Current Reporting Status Common stock, shares authorized Common Stock, Shares Authorized Customer Lists and Tradename [Member] Customer Lists And Trade Name [Member] Customer lists and trade name. Unrealized foreign currency gain (loss) Fair value adjustment to earnout liabilities Unrealized Gain (Loss), Foreign Currency Transaction, before Tax ASSETS Assets [Abstract] Engineered Systems Segment [Member] Engineered Systems [Member] Engineered systems member. Amortization expense Amortization expense of finite life intangible assets Amortization of Intangible Assets Amortization of Intangible Assets, Total Base Rate [Member] Base Rate [Member] Customer Lists [Member] Customer Lists [Member] Common stock, $.01 par value; 100,000,000 shares authorized, 34,923,701 and 34,835,293 shares issued and outstanding at June 30, 2024 and December 31, 2023, respectively Common Stock, Value, Issued Common Stock, Value, Issued, Total Common Stock, Value, Issued, Beginning Balance Common Stock, Value, Issued, Ending Balance Repayments of long-term debt Repayments of Long-Term Debt Repayments of Long-term Debt, Total Diluted Income (Loss) from Continuing Operations, Per Diluted Share Other Other Other Noncash Income (Expense) Other Noncash Income (Expense), Total Euro-Denominated Bank Guarantee [Member] Euro Denominated Bank Guarantee [Member] Euro-denominated bank guarantee. Net proceeds from sale of assets Proceeds from Sale of Property, Plant, and Equipment Proceeds from Sale of Property, Plant, and Equipment, Total Accrued expenses Accrued Liabilities, Current Accrued expenses Total accrued expenses Payment for Pension Benefits Cash, Current assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents Current Fiscal Year End Date Current Fiscal Year End Date Share-based compensation expense Share-Based Payment Arrangement, Noncash Expense Share-based Payment Arrangement, Noncash Expense, Total Income from operations Operating Income (Loss) Income from operations Deferred income taxes on undistributed earnings Deferred Income Tax Expense (Benefit) Deferred Income Tax Expense (Benefit), Total Deferred income tax benefit Income tax expense Income tax expense Income Tax Expense (Benefit) Income Tax Expense (Benefit), Total Deferred Compensation Cash-Based Arrangements, Liability, Current Deferred cash consideration Outstanding borrowings, quarterly principal installments payable amount Line of Credit Facility, Periodic Payment, Principal Long-Term Debt, Maturity, Year Four Credit facility principal payments 2027 Share based compensation arrangement by share based payments award fair value assumptions weighted average expected term Share Based Compensation Arrangement By Share Based Payments Award Fair Value Assumptions Weighted Average Expected Term Weighted-average expected term Asbestos litigation expenses Asbestos Litigation Expenses Asbestos Litigation Expenses Federal Funds Rate [Member] Federal Funds Rate [Member] Federal Funds Rate [Member] Accounts Payable and Accrued Liabilities Disclosure [Text Block] Accrued Expenses Recognized share-based compensation awards Share-Based Payment Arrangement, Expense Intangible assets – finite life, net Intangible assets – finite life, net at beginning of period Intangible assets – finite life, net at end of period Finite-Lived Intangible Assets, Net Finite-Lived Intangible Assets, Net, Total Net Sales and Income from Operation by Business Segment Schedule of Segment Reporting Information, by Segment [Table Text Block] Finite-lived intangible asset, fair value Indefinite-Lived Intangible Assets (Excluding Goodwill), Fair Value Disclosure Other Non Investees [Member] Other Non Investees [Member] Effect of exchange rate changes on cash, cash equivalents and restricted cash Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents, Total Assessment regarding Loss contingency impact Description Loss Contingency, Management's Assessment and Process Subsegments [Domain] Contract Assets and Liabilities [Line Items] Fair Value, off-Balance-Sheet Risks, Disclosure Information [Line Items] Other Nonoperating Income (Expense) Other Nonoperating Income (Expense), Total Other (expense) income, net Tax indemnification received Lessor, Operating Lease, Indemnification Payment Received Subsequent Events [Abstract] Other comprehensive income, net of tax: Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract] Commitments and Contingencies Disclosure [Abstract] Schedule Of Goodwill And Other Intangible Assets [Line Items] Schedule Of Goodwill And Other Intangible Assets [Line Items] Schedule Of Goodwill And Other Intangible Assets [Line Items] Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross Number of Options, Granted Intersegment Eliminations [Member] Inter-Segment Elimination [Member] Other Accrued Liabilities, Current Other State and Foreign Authorities [Member] State And Foreign Authorities [Member] State and foreign authorities. Interest Interest Paid, Excluding Capitalized Interest, Operating Activities Amortization expense of finite life intangibles for 2028 Finite-Lived Intangible Asset, Expected Amortization, Year Four Amortization expense of finite life intangibles for 2025 Finite-Lived Intangible Asset, Expected Amortization, Year One Short-term operating lease liability Lease Liabilities Current Lease liabilities, current. Retirement Plan Type Retirement Plan Type [Domain] Inventory, Net [Abstract] Shareholders’ equity: Equity, Attributable to Parent [Abstract] Interest cost Defined Benefit Plan, Interest Cost Schedule Of Goodwill And Other Intangible Assets [Table] Schedule Of Goodwill And Other Intangible Assets [Table] Schedule Of Goodwill And Other Intangible Assets [Table] Gain on sale of property and equipment Gain (Loss) on Disposition of Property Plant Equipment Gain (Loss) on Disposition of Property Plant Equipment, Total Bank guarantee issuance under bilateral lines and collateral Line of Credit Facility, Maximum Borrowing Capacity Cost of sales Cost of Goods and Services Sold Cost of Goods and Services Sold, Total Earnings Per Share [Abstract] Earnings per share: Loss Contingencies [Table] Credit Agreement [Member] Credit Agreement [Member] Credit agreement. Weighted average interest rate on outstanding borrowings Debt, Weighted Average Interest Rate Investment, Name [Domain] Segments Segments [Domain] Asbestos Issue [Member] Foreign currency adjustments Finite-Lived Intangible Assets, Foreign Currency Translation Gain (Loss) Foreign currency adjustments Scenario Scenario [Axis] Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Schedule of Unaudited Pro Forma Financial Information Business Acquisition, Pro Forma Information [Table Text Block] Debt Instrument, Interest Rate, Effective Percentage Debt Instrument, Interest Rate, Effective Percentage Noncontrolling interest distribution Noncontrolling Interest, Decrease from Distributions to Noncontrolling Interest Holders Revolving Credit Loan [Member] Revolving Credit Facility [Member] Basic Earnings Per Share, Basic Earnings Per Share, Basic, Total Amounts credited to the allowance for obsolete inventory Inventory Write-down Commitments and contingencies (See Note 14) Commitments and Contingencies Business Combinations [Abstract] Net sales Gain (Loss) on Sales of Loans, Net Gain (Loss) on Sales of Loans, Net, Total Income Statement [Abstract] Amortization of net actuarial loss Defined Benefit Plan, Amortization of Gain (Loss) Related Party, Type [Axis] Accounts payable Increase (Decrease) in Accounts Payable and Accrued Liabilities Increase (Decrease) in Accounts Payable and Accrued Liabilities, Total Intangible assets – indefinite life Tradename, beginning balance Tradename, ending balance Indefinite-Lived Intangible Assets (Excluding Goodwill) Indefinite-lived Intangible Assets (Excluding Goodwill), Total Company Received Working Capital Company Received Working Capital Summary of Contract Assets and Liabilities Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] Fair value adjustment to earnout liabilities Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability Retirement Benefits [Abstract] Average cost per settled claim excluding legal fees Average Cost Per Settled Claim The weighted average cost per settled claim based on the number of claims settled and the amount paid in aggregate for asbestos related claims. Statistical Measurement [Domain] Net cash provided by (used in) operating activities Net Cash Provided by (Used in) Operating Activities Document Period End Date Document Period End Date Statistical Measurement [Axis] Commitments and Contingencies Disclosure [Text Block] Commitments and Contingencies - Legal Matters Accounts, Notes, Loans and Financing Receivable [Line Items] Accounts, Notes, Loans and Financing Receivable [Line Items] Debt Instrument, Redemption, Through June 2023 [Member] Debt Instrument, Redemption, Period Two [Member] Contract Assets and Liabilities Schedule of Regulatory Assets and Liabilities [Text Block] Executive transition expenses. Executive Transition Expenses Executive transition expenses Diluted Earnings Per Share, Diluted Earnings Per Share, Diluted, Total Voting Interest In Joint Venture Voting interest in joint venture. Voting interest in joint venture Term Debt [Member] Term Debt [Member] Term debt. Retainage receivables on contracts period Retainage Receivables On Contracts Period Retainage receivables on contracts period. Account receivable, net Payments to Noncontrolling Interests Noncontrolling interest distributions Debt Instrument, Name Debt Instrument, Name [Domain] Open tax years Open Tax Year Income Taxes [Line Items] Income Taxes [Line Items] Income taxes. Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Weighted Average Volatility Rate Weighted-average volatility rate Health Care Plan [Member] Other Pension, Postretirement and Supplemental Plans [Member] Deferred charges and other assets Increase Decrease In Deferred Charges And Other Assets Increase (decrease) in deferred charges and other assets. Capital in excess of par value Additional Paid in Capital, Common Stock Additional Paid in Capital, Common Stock, Beginning Balance Additional Paid in Capital, Common Stock, Ending Balance Pension Plan [Member] Pension Plan [Member] Certain Tradenames [Member] Certain Trade Names [Member] Certain trade names. New Accounting Standards Not Yet Adopted Policy [Text Block] New accounting standards not yet adopted policy. Accounting Standards to be Adopted Common stock repurchase Common stock repurchase Payments for Repurchase of Common Stock Equity, Attributable to Noncontrolling Interest Stockholders' Equity Attributable to Noncontrolling Interest, Total Stockholders' Equity Attributable to Noncontrolling Interest, Beginning Balance Stockholders' Equity Attributable to Noncontrolling Interest, Ending Balance Non-controlling interest Finite-Lived Intangible Assets, Major Class Name Finite-Lived Intangible Assets, Major Class Name [Domain] Exercise of stock options, Shares Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period LIABILITIES AND SHAREHOLDERS’ EQUITY Liabilities and Equity [Abstract] Environmental Integrated Solutions [Member] Environmental Integrated Solutions [Member] Environmental Integrated Solutions. Entity Address, Postal Zip Code Entity Address, Postal Zip Code Entity Interactive Data Current Entity Interactive Data Current Transfers from indefinite life classification Transfers From Indefinite Life Classification Transfers from indefinite life classification. Current liabilities assumed Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Other Amortization expense of finite life intangibles for 2027 Finite-Lived Intangible Asset, Expected Amortization, Year Three Credit Facility Credit Facility [Domain] Net revenue Interest Revenue (Expense), Net Interest Revenue (Expense), Net, Total Repayments on revolving credit lines Proceeds from (Repayments of) Lines of Credit Proceeds from (Repayments of) Lines of Credit, Total Number of restricted stock awards granted Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Equity Components Equity Components [Axis] Accounts receivable Increase (Decrease) in Accounts Receivable Accounts Receivable, Net Current Assets Other liabilities Increase (Decrease) in Other Operating Liabilities Increase (Decrease) in Other Operating Liabilities, Total Pension and Employee Benefit Plans Retirement Benefits [Text Block] Inventory Disclosure [Abstract] New Financial Accounting Pronouncements Accounting Standards Update and Change in Accounting Principle [Text Block] Local Phone Number Local Phone Number Obsolescence allowance Inventory Valuation Reserves Inventory Valuation Reserves, Beginning Balance Inventory Valuation Reserves, Ending Balance Goodwill Goodwill, beginning balance Goodwill, ending balance Goodwill Goodwill, Total Tradename, foreign currency translation Indefinite-Lived Intangible Assets, Foreign Currency Translation Gain (Loss) Restricted cash Restricted Cash, Current Statement of Cash Flows [Abstract] Non-Employee Director [Member] Director [Member] Income Tax Authority Income Tax Authority [Domain] Organization, Consolidation and Presentation of Financial Statements [Abstract] Accumulated other comprehensive loss Accumulated Other Comprehensive Income (Loss), Net of Tax Accumulated Other Comprehensive Income (Loss), Net of Tax, Total Segment Reporting Information [Line Items] Segment Reporting Information [Line Items] Gross profit Gross Profit Common stock, par value Common Stock, Par or Stated Value Per Share Schedule Of Share Based Compensation Arrangements By Share Based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Contract Liability Current Contract liability current. Contract liability Maximum [Member] Maximum [Member] Credit Facility [Member] Credit Facility [Member] Credit facility. Consolidation Items Consolidation Items [Domain] Property and equipment additions Segment, Expenditure, Addition to Long-Lived Assets Basis of Reporting for Consolidated Financial Statements Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block] Short-Term Debt, Type [Domain] Ownership [Domain] Net (decrease) increase in cash, cash equivalents and restricted cash Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Earn out, Fair value Earn out, Fair value Payables and Accruals [Abstract] Assets, Noncurrent Assets, Noncurrent Assets, Noncurrent, Total Purchase Price Purchase Price Maximum consolidated leverage ratio Maximum Consolidated Leverage Ratio Maximum consolidated leverage ratio. Common stock equivalents arising from stock options and restricted stock awards Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements Incremental Common Shares Attributable to Share-based Payment Arrangements, Total Accrued Liabilities, Total Accrued Liabilities Accrued expenses Operating Segments [Member] Operating Segments [Member] Intra-Segment and Inter-Segment Revenues Intra Segment And Inter Segment Elimination By Revenue Table [Text Block] Intra segment and inter segment elimination by revenue. Summary of Inventories Schedule of Inventory, Current [Table Text Block] Business Segment Information Segment Reporting Disclosure [Text Block] Effox Flextor Madder [Member] Effox Flextor Madder [Member] EFM JV [Member] City Area Code City Area Code Total inventories Inventories, net Inventory, Net Cash flows from operating activities: Net Cash Provided by (Used in) Operating Activities [Abstract] Consolidation Items Consolidation Items [Axis] Property and Equipment Additions, Depreciation and Amortization and Identifiable Assets Segment, Reconciliation of Other Items from Segments to Consolidated [Table Text Block] Proceeds from Issuance of Long-term Debt, Total Proceeds from Issuance of Long-Term Debt Borrowing on long-term debt Business Acquisition [Line Items] Business Acquisition [Line Items] Basic weighted-average shares outstanding Basic Weighted Average Number of Shares Outstanding, Basic Weighted Average Number of Shares Outstanding, Basic, Total Prepaid income taxes Prepaid Taxes Other Commitments [Line Items] Work in process Inventory, Work in Process, Gross Cash flows from financing activities: Net Cash Provided by (Used in) Financing Activities [Abstract] Statement [Table] Statement [Table] Document Fiscal Period Focus Document Fiscal Period Focus Joint Venture Agreement [Member] Joint venture agreement. Joint Venture Agreement [Member] Senior Debt [Member] Senior Debt [Member] Senior Debt [Member] Financial Instruments Financial Instruments Disclosure [Text Block] Statement [Line Items] Statement [Line Items] Net assets acquired Net assets acquired Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net Inventory reserve expense Inventory Reserve Expense Benefit Inventory reserve expense benefit. Equity, Fair Value Adjustment Fair value of noncontrolling interest equity (see Note 14) Fair value of noncontrolling interest equity Deferred charges and other assets Deferred Costs and Other Assets Payments of Financing Costs, Total Payments of Financing Costs Deferred financing fees paid Deferred financing fees paid Fair value of debt issued Debt Instrument, Fair Value Disclosure Debt Instrument, Fair Value Disclosure, Total Anti-dilutive options and restricted stock units outstanding Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Schedule of Revenues from External Customers and Long-Lived Assets [Table] Subsequent Event [Line Items] Aggregate principal amount outstanding under the credit facilities Letters of Credit Outstanding, Amount Accounts receivable, net allowances of $6,582 and $6,460 Accounts receivable, net allowances Accounts Receivable, after Allowance for Credit Loss, Current Total accounts receivable, net Common Stock [Member] Common Stock [Member] Debt Instrument [Line Items] Debt Instrument [Line Items] Holdback Payble Holdback Payble Holdback Payble Cash and cash equivalents Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Cash and Cash Equivalents, at Carrying Value, Total Cash and Cash Equivalents, at Carrying Value, Beginning Balance Cash and Cash Equivalents, at Carrying Value, Ending Balance Common stock repurchase and retirement Common stock repurchase Stock Repurchased During Period, Value Repurchase of common stock Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Installments Paid Installments Paid Costs and estimated earnings in excess of billings on uncompleted contracts Contract With Customer Asset Increase Decrease In Cost In Excess Of Billing On Uncompleted Contract Contract with customer asset, increase decrease in cost in excess of billing on uncompleted contract. Trade Accounts Receivable [Member] Trade Accounts Receivable [Member] Property and equipment Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment, Total Finished goods Inventory, Finished Goods, Gross Inventory, Finished Goods, Gross, Total Unused credit availability under credit facility Debt Instrument, Unused Borrowing Capacity, Amount Table Text Block [Abstract] Summary of Debt Schedule of Debt [Table Text Block] Cover [Abstract] Selling and administrative expenses Selling, General and Administrative Expense Selling, General and Administrative Expense, Total Document Fiscal Year Focus Document Fiscal Year Focus Accrued warranty Product Warranty Accrual, Current Earn Out Liability Earn Out Liability Earn-out liability. Amount billed but not received under retainage provisions in contracts Contract Receivable Retainage1 Contract receivable retainage1. Income taxes Income Taxes Paid, Net Income Taxes Paid, Net, Total Weighted-average fair value of restricted stock unit granted Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value Earnout payments Earnout payments Additional payments of contingent consideration related to acquisitions operating activities. Additional Payments of Contingent Consideration Related to Acquisitions Operating Activities Additional Payments of Contingent Consideration Related to Acquisitions Financing Activities Additional Payments of Contingent Consideration Related to Acquisitions Financing Activities Earnout payments Earnout payments Proceeds from employee stock purchase plan and exercise of stock options Proceeds, Issuance of Shares, Share-Based Payment Arrangement, Including Option Exercised Proceeds, Issuance of Shares, Share-based Payment Arrangement, Including Option Exercised, Total Segment Reporting [Abstract] Security Exchange Name Security Exchange Name Federal Authorities [Member] Domestic Tax Authority [Member] Summary of Finite Lived Intangible Assets Activities Finite-Lived Intangible Assets Amortization Expense [Table Text Block] Accounting Standards Adopted in Fiscal 2024 New Accounting Pronouncements, Policy [Policy Text Block] Preferred stock, shares issued Preferred Stock, Shares Issued Preferred Stock, Shares Issued, Total Preferred stock, shares authorized Preferred Stock, Shares Authorized Cash held outside United States, principally in Netherlands, United Kingdom, China, and Canada Cash Held Outside Domestic Territory Cash held outside domestic territory. Schedule Of Finite Lived Intangible Assets [Table] Schedule of Finite-Lived Intangible Assets [Table] Notes Payable, Total Notes Payable Business Acquisition, Acquiree Business Acquisition, Acquiree [Domain] Financial Instrument [Axis] Weighted average number of common shares outstanding: Weighted Average Number of Shares Outstanding, Diluted [Abstract] Exercise of stock options Stock Issued During Period, Value, Stock Options Exercised Entity Emerging Growth Company Entity Emerging Growth Company Option exercised, intrinsic value Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value Acquisition of equity Business Acquisition, Percentage of Voting Interests Acquired Amendment Flag Amendment Flag Schedule of Accrued Liabilities [Table Text Block] Summary of Accrued Expenses Billings in excess of costs and estimated earnings on uncompleted contracts Contract With Customer Liability Increase Decrease In Billing In Excess Of Cost Of Earnings Contract with customer, liability increase decrease in billing in excess of cost of earnings. Subsidiary, Ownership Percentage, Parent Subsidiary, Ownership Percentage, Parent Technology [Member] Technology-Based Intangible Assets [Member] Percentage of equity method investment in joint venture Equity Method Investment, Ownership Percentage Earnings And Dividends Per Share [Abstract] Earnings and dividends per share. Earnout Payments Earnout Payments Earnout payments. Investments, All Other Investments [Abstract] Foreign Subsidiaries [Member] Subsidiaries [Member] Variable Rate [Domain] Indefinite-Lived Intangible Assets, Purchase Accounting Adjustments Tradename, Acquisitions Entity File Number Securities Act File Number Goodwill and Intangible Assets Disclosure [Abstract] Contract Liabilities Recognized As Revenue Contract Liabilities Recognized As Revenue Other Liabilities, Total Other Liabilities Other liabilities Assumed Total debt, less current portion Long-Term Debt, Excluding Current Maturities Long-term Debt, Excluding Current Maturities, Total Debt, less current portion Transcend Solution [Member] Transcend Solution [Member] Transcend Solution [Member] Other Assets Other Assets Other Assets, Total Share-Based Payment Arrangement [Abstract] Accounts Payable, Current, Total Accounts Payable, Current Accounts payable Debt Instrument Debt Instrument [Axis] Goodwill / Tradename Schedule of Intangible Assets and Goodwill [Table Text Block] Long-Term Debt, Maturity, Year One Credit facility principal payments 2024 Entity Address, Address Line Two Entity Address, Address Line Two Schedule Of Defined Benefit Plans Disclosures [Table] Schedule of Defined Benefit Plans Disclosures [Table] Preferred stock, $.01 par value; 10,000 shares authorized, none issued Preferred Stock, Value, Issued Preferred Stock, Value, Issued, Total Preferred Stock, Value, Issued, Beginning Balance Preferred Stock, Value, Issued, Ending Balance Entity Small Business Entity Small Business Entity Shell Company Entity Shell Company Title of Individual Title of Individual [Axis] Intersubsegment Eliminations [Member] Intra-Segment Sales [Member] Earnings per Share Earnings Per Share [Text Block] Foreign Currency Adjustments [Member] Foreign Currency Translation Adjustment [Member] Foreign currency translation adjustment. Entity Address, Address Line One Entity Address, Address Line One Net cash received (paid) for acquisitions Payments for (Proceeds from) Investments Payments for (Proceeds from) Investments, Total Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Weighted Average Risk-Free Interest Rate Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Weighted Average Risk-Free Interest Rate Weighted-average risk free interest rate Netherlands Facility [Member] Netherlands Facility [Member] Netherlands facility. Intangible - finite life Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill, Total Schedule Of Fair Value Of Financial Instruments [Table] Schedule Of Fair Value Of Financial Instruments [Table] Schedule Of Fair Value Of Financial Instruments [Table] Business Acquisition Contingent Consideration [Line Items] Business Acquisition, Contingent Consideration [Line Items] Cost Finite-Lived Intangible Assets, Gross Finite-Lived Intangible Assets, Gross, Total Subsequent Event Type [Domain] Long-Term Debt, Maturity, Year Three Credit facility principal payments 2026 Debt discount amortization Amortization of Debt Discount (Premium) Tradename, Impairment charge Impairment of Intangible Assets, Indefinite-Lived (Excluding Goodwill) Net income Net Income (Loss), Including Portion Attributable to Noncontrolling Interest Net income (loss) Net income Deferred Tax Assets, Deferred Income Deferred income taxes Provision for Other Credit Losses Provision for credit losses Mader Holdings L P [Member] Mader holdings. Mader Holdings L.P. [Member] Frequency of periodic payment Debt Instrument, Frequency of Periodic Payment Depreciation and amortization Depreciation, Depletion and Amortization Depreciation, Depletion and Amortization, Total Title of 12(b) Security Title of 12(b) Security Contract with Customer, Asset, after Allowance for Credit Loss, Current [Abstract] Accumulated Amortization Finite-Lived Intangible Assets, Accumulated Amortization Share based compensation earned Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture, Total Intangible Assets - Finite Life Schedule of Finite-Lived Intangible Assets [Table Text Block] Effective Income Tax Rate Reconciliation, Tax Settlement, Foreign, Percent Effective Income Tax Rate Reconciliation, Tax Settlement, Foreign, Percent Fair value Assets, Fair Value Adjustment Accounting Changes and Error Corrections [Abstract] Cash flows from investing activities: Net Cash Provided by (Used in) Investing Activities [Abstract] Bank guarantee agreement outstanding amount Long-Term Line of Credit Long-term Line of Credit, Total Revolving credit facility Subsequent Event [Table] Inventories Increase (Decrease) in Inventories Increase (Decrease) in Inventories, Total Noncurrent Assets Long-Lived Assets Receivable Receivable [Domain] Amortization expense of finite life intangibles for 2024 Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year Purchase of outstanding shares of common stock Stock Repurchase Program, Remaining Authorized Repurchase Amount Common Stock, shares outstanding Common Stock, Shares, Outstanding Common Stock, Shares, Outstanding, Beginning Balance Common Stock, Shares, Outstanding, Ending Balance Share-Based Compensation Share-Based Payment Arrangement [Text Block] Summary of Accounts Receivable Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block] Retirement Plan Type Retirement Plan Type [Axis] Document Type Document Type Ownership [Axis] Line of Credit [Member] Line Of Credit [Member] Noncatastrophic Event [Domain] Acquisition and integration expenses Business Combination, Integration Related Costs Cumulative settlement payments for cases involving asbestos-related claims Litigation Settlement, Amount Awarded from Other Party Net cash used in investing activities Net Cash Provided by (Used in) Investing Activities Document Quarterly Report Document Quarterly Report Components of Pension and Employee Benefit Expenses Schedule of Net Benefit Costs [Table Text Block] Counterparty Name Counterparty Name [Domain] Goodwill and Intangible Assets Goodwill and Intangible Assets Disclosure [Text Block] Net cash (used in) provided by financing activities Net Cash Provided by (Used in) Financing Activities Debt Instrument, Redemption, Period Debt Instrument, Redemption, Period [Domain] Entity Filer Category Entity Filer Category Variable Rate [Axis] Tradename [Member] Trade Names [Member] Debt Instrument, Redemption, Thereafter [Member] Debt Instrument, Redemption, Period Three [Member] Total liabilities Liabilities Liabilities Notes payable Notes Payable Current is the part of Total Debt Notes Payable Current1 Intangible assets, Useful Life Intangible assets, Useful Life Finite-Lived Intangible Asset, Useful Life Total CECO shareholders' equity Equity, Attributable to Parent Stockholders' Equity Attributable to Parent, Beginning Balance Stockholders' Equity Attributable to Parent, Ending Balance Subsegments [Axis] Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] Consolidated Entities Consolidated Entities [Axis] Net income attributable to CECO Environmental Corp. Interest expense Interest Expense Interest Expense, Total Letters of Credit [Member] Standby Letters of Credit [Member] Costs and estimated earnings in excess of billings on uncompleted contracts Contract with Customer, Asset, after Allowance for Credit Loss, Current Contract with Customer, Asset, after Allowance for Credit Loss, Current, Total Reportable Subsegments [Member] Current assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Total Deferred tax liability Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities Statement of Financial Position [Abstract] Share based compensation earned, Shares Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture Shares Issued, Shares, Share-based Payment Arrangement, after Forfeiture, Total Diluted weighted-average shares outstanding Diluted Weighted Average Number of Shares Outstanding, Diluted Credit Facility Credit Facility [Axis] Effective income tax rate Effective Income Tax Rate Reconciliation, Percent Effective Income Tax Rate Reconciliation, Percent, Total Basic Income (Loss) from Continuing Operations, Per Basic Share Income (Loss) from Continuing Operations, Per Outstanding Share, Total Net periodic benefit cost Defined Benefit Plan, Net Periodic Benefit Cost (Credit) Income Taxes Income Tax Disclosure [Text Block] Total assets acquired Total assets acquired Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Term Loan [Member] Senior Secured Term Loan [Member] Senior secured term loan. Restricted stock units issued Restricted stock units issued Stock Issued During Period, Value, Issued for Services Increase in estimated fair value of earnout Increase In Estimated Fair Value Of Earnout Increase in estimated fair value of earnout. Finite-Lived Intangible Assets [Line Items] Finite-Lived Intangible Assets [Line Items] Tradename, transfers to finite life classification Indefinite Lived Intangible Assets Excluding Goodwill During Period Transfers Indefinite lived intangible assets excluding goodwill during period transfers. Number of Shares Outstanding for Calculation of Earnings Per Share Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Income Tax Authority Income Tax Authority [Axis] Fair Value Disclosures [Abstract] Debt Instrument, Redemption, Period One [Member] Debt Instrument, Redemption, Through September 2025 [Member] Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed Schedule of Business Acquisitions, by Acquisition [Table Text Block] Comprehensive income Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest Acquisitions of property and equipment Payments to Acquire Property, Plant, and Equipment Payments to Acquire Property, Plant, and Equipment, Total Amortization and earnout expenses Amortization and earnout expenses Amortization and earnout expenses Compensation and related benefits Employee-related Liabilities, Current Employee-related Liabilities, Current, Total Business Acquisition Business Acquisition [Axis] Cash, cash equivalents and restricted cash at beginning of period Cash, cash equivalents and restricted cash at end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations, Total Technology [Member] Technology [Member] Income Tax Disclosure [Abstract] Finite-Lived Intangible Assets by Major Class Finite-Lived Intangible Assets by Major Class [Axis] Income Taxes [Table] Income Taxes [Table] Income Taxes [Table] XML 9 R1.htm IDEA: XBRL DOCUMENT v3.24.2
Document and Entity Information - shares
6 Months Ended
Jun. 30, 2024
Jul. 18, 2024
Cover [Abstract]    
Document Type 10-Q  
Amendment Flag false  
Document Period End Date Jun. 30, 2024  
Document Fiscal Year Focus 2024  
Document Fiscal Period Focus Q2  
Trading Symbol CECO  
Entity Registrant Name CECO ENVIRONMENTAL CORP.  
Entity Central Index Key 0000003197  
Current Fiscal Year End Date --12-31  
Entity Filer Category Accelerated Filer  
Entity Current Reporting Status Yes  
Entity File Number 0-07099  
Entity Tax Identification Number 13-2566064  
Entity Address, Address Line One 14651 North Dallas Parkway  
Entity Address, Address Line Two Suite 500  
Entity Address, City or Town Dallas  
Entity Address, State or Province TX  
Entity Address, Postal Zip Code 75254  
City Area Code 214  
Local Phone Number 357-6181  
Entity Common Stock, Shares Outstanding   34,960,522
Entity Interactive Data Current Yes  
Entity Small Business false  
Entity Emerging Growth Company false  
Document Transition Report false  
Document Quarterly Report true  
Entity Shell Company false  
Title of 12(b) Security Common Stock, par value $0.01 per share  
Security Exchange Name NASDAQ  
Entity Incorporation, State or Country Code DE  
XML 10 R2.htm IDEA: XBRL DOCUMENT v3.24.2
Condensed Consolidated Balance Sheets (Unaudited) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Current assets:    
Cash and cash equivalents $ 36,523 $ 54,779
Restricted cash 391 669
Accounts receivable, net allowances of $6,582 and $6,460 126,974 112,733
Costs and estimated earnings in excess of billings on uncompleted contracts 55,378 66,574
Inventories, net 38,475 34,089
Prepaid expenses and other current assets 20,414 11,769
Prepaid income taxes 3,215 824
Total current assets 281,370 281,437
Property, plant and equipment, net 30,290 26,237
Right-of-use assets from operating leases 14,137 16,256
Goodwill 211,144 211,326
Intangible assets – finite life, net 46,086 50,461
Intangible assets – indefinite life 9,522 9,570
Deferred income taxes 263 304
Deferred charges and other assets 5,321 4,700
Total assets 598,133 600,291
Current liabilities:    
Current portion of debt 10,580 10,488
Accounts payable 90,944 87,691
Accrued expenses 44,736 44,301
Billings in excess of costs and estimated earnings on uncompleted contracts 59,851 56,899
Notes payable 0 2,500
Income taxes payable 1,212 1,227
Total current liabilities 207,323 203,106
Other liabilities 11,196 12,644
Debt, less current portion 120,246 126,795
Deferred income tax liability, net 9,949 8,838
Operating lease liabilities 9,607 11,417
Total liabilities 358,321 362,800
Commitments and contingencies (See Note 14)
Shareholders’ equity:    
Preferred stock, $.01 par value; 10,000 shares authorized, none issued 0 0
Common stock, $.01 par value; 100,000,000 shares authorized, 34,923,701 and 34,835,293 shares issued and outstanding at June 30, 2024 and December 31, 2023, respectively 349 348
Capital in excess of par value 251,560 254,956
Accumulated loss (394) (6,387)
Accumulated other comprehensive loss (16,476) (16,274)
Total CECO shareholders' equity 235,039 232,643
Non-controlling interest 4,773 4,848
Total shareholders' equity 239,812 237,491
Total liabilities and shareholders' equity $ 598,133 $ 600,291
XML 11 R3.htm IDEA: XBRL DOCUMENT v3.24.2
Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Statement of Financial Position [Abstract]    
Accounts receivable, net allowances $ 6,582 $ 6,460
Preferred stock, par value $ 0.01 $ 0.01
Preferred stock, shares authorized 10,000 10,000
Preferred stock, shares issued 0 0
Common stock, par value $ 0.01 $ 0.01
Common stock, shares authorized 100,000,000 100,000,000
Common stock, shares issued 34,923,701 34,835,293
Common Stock, shares outstanding 34,923,701 34,835,293
XML 12 R4.htm IDEA: XBRL DOCUMENT v3.24.2
Condensed Consolidated Statements of Income (Unaudited) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Income Statement [Abstract]        
Net sales $ 137,522 $ 129,181 $ 263,854 $ 241,744
Cost of sales 88,475 89,364 169,675 167,034
Gross profit 49,047 39,817 94,179 74,710
Selling and administrative expenses 36,465 28,451 71,372 55,644
Amortization and earnout expenses 2,210 2,273 4,419 4,020
Acquisition and integration expenses 476 332 666 824
Executive transition expenses 0 158 0 158
Restructuring expenses 414 0 554 0
Asbestos litigation expenses 225 0 225 0
Income from operations 9,257 8,603 16,943 14,064
Other (expense) income, net (679) 121 (2,192) (453)
Interest expense (3,254) (3,750) (6,667) (6,158)
Income before income taxes 5,324 4,974 8,084 7,453
Income tax expense 394 984 1,062 993
Net income 4,930 3,990 7,022 6,460
Non-controlling interest (445) (266) (1,029) (759)
Net income attributable to CECO Environmental Corp. $ 4,485 $ 3,724 $ 5,993 $ 5,701
Earnings per share:        
Basic $ 0.13 $ 0.11 $ 0.17 $ 0.17
Diluted $ 0.12 $ 0.11 $ 0.17 $ 0.16
Weighted average number of common shares outstanding:        
Basic 34,918,412 34,619,216 34,881,625 34,531,050
Diluted 36,302,664 35,143,782 36,239,331 35,171,727
XML 13 R5.htm IDEA: XBRL DOCUMENT v3.24.2
Condensed Consolidated Statements of Comprehensive Income (Unaudited) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Statement of Comprehensive Income [Abstract]        
Net income $ 4,930 $ 3,990 $ 7,022 $ 6,460
Other comprehensive income, net of tax:        
Foreign currency translation (loss) gain (856) 139 (202) 905
Comprehensive income $ 4,074 $ 4,129 $ 6,820 $ 7,365
XML 14 R6.htm IDEA: XBRL DOCUMENT v3.24.2
Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - USD ($)
$ in Thousands
Total
Common Stock [Member]
Capital in Excess of Par Value [Member]
Accumulated Loss [Member]
Accumulated Other Comprehensive Loss [Member]
Noncontrolling Interest [Member]
Beginning Balance at Dec. 31, 2022 $ 218,148 $ 344 $ 250,174 $ (19,298) $ (17,996) $ 4,924
Beginning Balance, Shares at Dec. 31, 2022   34,382        
Net income 2,469     1,978   491
Exercise of stock options 612 $ 1 611      
Exercise of stock options, Shares   52        
Restricted stock units issued (621) $ 1 (622)      
Restricted stock units issued, Shares   123        
Share based compensation earned 808   808      
Translation gain (loss) 766       766  
Ending Balance at Mar. 31, 2023 222,182 $ 346 250,971 (17,320) (17,230) 5,415
Ending Balance, Shares at Mar. 31, 2023   34,557        
Beginning Balance at Dec. 31, 2022 218,148 $ 344 250,174 (19,298) (17,996) 4,924
Beginning Balance, Shares at Dec. 31, 2022   34,382        
Net income 6,460          
Translation gain (loss) $ 905          
Common stock repurchase and retirement, Shares 0          
Ending Balance at Jun. 30, 2023 $ 227,148 $ 347 252,406 (13,596) (17,091) 5,082
Ending Balance, Shares at Jun. 30, 2023   34,738        
Beginning Balance at Mar. 31, 2023 222,182 $ 346 250,971 (17,320) (17,230) 5,415
Beginning Balance, Shares at Mar. 31, 2023   34,557        
Net income 3,990     3,724   266
Exercise of stock options 317   317      
Exercise of stock options, Shares   25        
Restricted stock units issued (270) $ (1) (271)      
Restricted stock units issued, Shares   132        
Share based compensation earned 1,389   1,389      
Share based compensation earned, Shares   24        
Translation gain (loss) 139       139  
Noncontrolling interest distribution $ (599)         (599)
Common stock repurchase and retirement, Shares 0          
Ending Balance at Jun. 30, 2023 $ 227,148 $ 347 252,406 (13,596) (17,091) 5,082
Ending Balance, Shares at Jun. 30, 2023   34,738        
Beginning Balance at Dec. 31, 2023 237,491 $ 348 254,956 (6,387) (16,274) 4,848
Beginning Balance, Shares at Dec. 31, 2023   34,835        
Net income 2,093     1,508   585
Exercise of stock options 113   113      
Exercise of stock options, Shares   10        
Restricted stock units issued (2,202) $ 2 (2,204)      
Restricted stock units issued, Shares   195        
Share based compensation earned 1,808   1,808      
Share based compensation earned, Shares   12        
Translation gain (loss) 654       654  
Noncontrolling interest distribution (804)         (804)
Common stock repurchase and retirement (3,001) $ (1) (3,000)      
Common stock repurchase and retirement, Shares   (144)        
Ending Balance at Mar. 31, 2024 236,152 $ 349 251,673 (4,879) (15,620) 4,629
Ending Balance, Shares at Mar. 31, 2024   34,908        
Beginning Balance at Dec. 31, 2023 237,491 $ 348 254,956 (6,387) (16,274) 4,848
Beginning Balance, Shares at Dec. 31, 2023   34,835        
Net income 7,022          
Translation gain (loss) (202)          
Common stock repurchase and retirement $ (5,000)          
Common stock repurchase and retirement, Shares 230,000          
Ending Balance at Jun. 30, 2024 $ 239,812 $ 349 251,560 (394) (16,476) 4,773
Ending Balance, Shares at Jun. 30, 2024   34,924        
Beginning Balance at Mar. 31, 2024 236,152 $ 349 251,673 (4,879) (15,620) 4,629
Beginning Balance, Shares at Mar. 31, 2024   34,908        
Net income 4,930     4,485   445
Exercise of stock options 161   161      
Exercise of stock options, Shares   10        
Restricted stock units issued (465) $ 1 (466)      
Restricted stock units issued, Shares   92        
Share based compensation earned 2,191   2,191      
Translation gain (loss) (856)       (856)  
Noncontrolling interest distribution (301)         (301)
Common stock repurchase and retirement $ (2,000) $ (1) (1,999)      
Common stock repurchase and retirement, Shares 86,000 (86)        
Ending Balance at Jun. 30, 2024 $ 239,812 $ 349 $ 251,560 $ (394) $ (16,476) $ 4,773
Ending Balance, Shares at Jun. 30, 2024   34,924        
XML 15 R7.htm IDEA: XBRL DOCUMENT v3.24.2
Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Cash flows from operating activities:    
Net income $ 7,022 $ 6,460
Adjustments to reconcile net income to net cash provided by (used in) operating activities:    
Depreciation and amortization 6,973 5,650
Unrealized foreign currency gain (loss) 691 (863)
Fair value adjustment to earnout liabilities 0 296
Gain on sale of property and equipment 126 78
Debt discount amortization 240 182
Share-based compensation expense 3,847 1,967
Bad debt expense (recoveries) 267 (23)
Inventory reserve expense 669 551
Other 22 0
Changes in operating assets and liabilities, net of acquisitions:    
Accounts receivable (17,295) (39,181)
Costs and estimated earnings in excess of billings on uncompleted contracts 10,610 9,596
Inventories (5,151) (4,081)
Prepaid expense and other current assets (11,164) (8,319)
Deferred charges and other assets (412) (306)
Accounts payable 13,719 6,594
Accrued expenses 1,566 (2,692)
Billings in excess of costs and estimated earnings on uncompleted contracts 3,060 26,005
Income taxes payable 68 601
Other liabilities (6,967) (3,126)
Net cash provided by (used in) operating activities 7,891 (611)
Cash flows from investing activities:    
Acquisitions of property and equipment (7,233) (3,919)
Net cash received (paid) for acquisitions 422 (24,142)
Net cash used in investing activities (6,811) (28,061)
Cash flows from financing activities:    
Borrowings on revolving credit lines 21,700 65,300
Repayments on revolving credit lines (23,200) (33,400)
Repayments of long-term debt (5,198) (1,652)
Payments on finance leases and financing liability (458) (450)
Deferred consideration paid for acquisitions (2,050) (857)
Earnout payments (1,672) 0
Proceeds from employee stock purchase plan and exercise of stock options 418 1,156
Noncontrolling interest distributions (1,105) (599)
Common stock repurchase (5,000) 0
Net cash (used in) provided by financing activities (16,565) 29,498
Effect of exchange rate changes on cash, cash equivalents and restricted cash (3,049) 1,141
Net (decrease) increase in cash, cash equivalents and restricted cash (18,534) 1,967
Cash, cash equivalents and restricted cash at beginning of period 55,448 46,585
Cash, cash equivalents and restricted cash at end of period 36,914 48,552
Cash paid during the period for:    
Interest 6,574 5,380
Income taxes $ 3,801 $ 7,605
XML 16 R8.htm IDEA: XBRL DOCUMENT v3.24.2
Pay vs Performance Disclosure - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Pay vs Performance Disclosure        
Net Income (Loss) $ 4,485 $ 3,724 $ 5,993 $ 5,701
XML 17 R9.htm IDEA: XBRL DOCUMENT v3.24.2
Insider Trading Arrangements
3 Months Ended
Jun. 30, 2024
Trading Arrangements, by Individual  
Rule 10b5-1 Arrangement Adopted false
Non-Rule 10b5-1 Arrangement Adopted false
Rule 10b5-1 Arrangement Terminated false
Non-Rule 10b5-1 Arrangement Terminated false
XML 18 R10.htm IDEA: XBRL DOCUMENT v3.24.2
Basis of Reporting for Consolidated Financial Statements
6 Months Ended
Jun. 30, 2024
Organization, Consolidation and Presentation of Financial Statements [Abstract]  
Basis of Reporting for Consolidated Financial Statements

1. Basis of Reporting for Consolidated Financial Statements

The accompanying unaudited condensed consolidated financial statements of CECO Environmental Corp. and its subsidiaries (the “Company,” “CECO,” “we,” “us,” or “our”) have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). Certain information and footnote disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“GAAP”) have been condensed or omitted pursuant to those rules and regulations. In the opinion of management, the accompanying unaudited condensed consolidated financial statements of the Company contain all adjustments, consisting only of normal recurring adjustments, necessary to present fairly the financial position as of June 30, 2024 and the results of operations, cash flows and shareholders’ equity for the three and six months ended June 30, 2024 and 2023. The results of operations for the three and six months ended June 30, 2024 are not necessarily indicative of the results to be expected for the full year. The balance sheet as of December 31, 2023 has been derived from the audited consolidated financial statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 as filed with the SEC on March 5, 2024 (the “Form 10-K”).

The preparation of financial statements in conformity with GAAP 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. Actual results could differ from those estimates.

These financial statements and accompanying notes should be read in conjunction with the audited financial statements and the notes thereto included in the Form 10-K.

Unless otherwise indicated, all balances within tables are in thousands, except per share amounts.

XML 19 R11.htm IDEA: XBRL DOCUMENT v3.24.2
New Financial Accounting Pronouncements
6 Months Ended
Jun. 30, 2024
Accounting Changes and Error Corrections [Abstract]  
New Financial Accounting Pronouncements

2. New Financial Accounting Pronouncements

Accounting Standards Adopted in Fiscal 2024

None.

Accounting Standards to be Adopted

In December 2023, the Financial Accounting Standards Board (the "FASB") issued Accounting Standards Update ("ASU") 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which addresses income tax disclosure requirements, primarily around the disclosure of the rate reconciliation and income taxes paid. The ASU is effective for fiscal years beginning after December 15, 2024. The Company is currently evaluating the impact the adoption of the standard will have on the Company’s consolidated financial statements.

 

In November 2023, the FASB issued ASU 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, which addresses segment disclosure requirements, primarily the disclosure of significant segment expenses. The ASU is effective for fiscal years beginning after December 15, 2023, and interim periods beginning after December 15, 2024. The Company is currently evaluating the impact the adoption of the standard will have on the Company’s consolidated financial statements.

XML 20 R12.htm IDEA: XBRL DOCUMENT v3.24.2
Accounts Receivable
6 Months Ended
Jun. 30, 2024
Receivables [Abstract]  
Accounts Receivable

3. Accounts Receivable

Accounts receivable as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Accounts receivable

 

$

133,556

 

 

$

119,193

 

Provision for credit losses

 

 

(6,582

)

 

 

(6,460

)

Total accounts receivable, net

 

$

126,974

 

 

$

112,733

 

Accounts receivable, net as of the beginning of the prior year period, or January 1, 2023, were $83.1 million.

Balances billed but not paid by customers under retainage provisions in contracts within the Condensed Consolidated Balance Sheets amounted to approximately $3.9 million and $3.2 million as of June 30, 2024 and December 31, 2023, respectively. Retainage receivables on contracts in progress are generally collected within a year or two subsequent to contract completion, and are recorded in either "Accounts receivable, net" or "Deferred charges and other assets" within the Condensed Consolidated Balance Sheets depending on timing of expected collection.

Amounts charged to (recovered from) the provision for credit losses was $0.7 million and $(0.1) million for the three months ended June 30, 2024 and 2023, respectively, and $0.3 million and zero for the six months ended June 30, 2024 and 2023, respectively.

XML 21 R13.htm IDEA: XBRL DOCUMENT v3.24.2
Contract Assets and Liabilities
6 Months Ended
Jun. 30, 2024
Disclosure Text Block [Abstract]  
Contract Assets and Liabilities

4. Contract Assets and Liabilities

Contract assets and liabilities as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Costs and estimated earnings in excess of billings on uncompleted contracts

 

$

55,378

 

 

$

66,574

 

Billings in excess of costs and estimated earnings on uncompleted contracts

 

 

59,851

 

 

 

56,899

 

 

As of the beginning of the prior year period, or January 1, 2023, costs and estimated earnings in excess of billings on uncompleted contracts and billings in excess of costs and estimated earnings on uncompleted contracts were $71.0 million and $32.7 million, respectively. The contract liabilities recorded in “Accrued expenses” on the Condensed Consolidated Balance Sheets were $9.2 million, $7.9 million and $4.5 million as of June 30, 2024, December 31, 2023 and January 1, 2023, respectively. Approximately 70% of the Company's contract liabilities as of December 31, 2023 were recognized as revenue in the six months ended June 30, 2024.

XML 22 R14.htm IDEA: XBRL DOCUMENT v3.24.2
Inventories
6 Months Ended
Jun. 30, 2024
Inventory Disclosure [Abstract]  
Inventories

5. Inventories

Inventories as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Raw materials

 

$

27,869

 

 

$

25,819

 

Work in process

 

 

11,732

 

 

 

9,710

 

Finished goods

 

 

2,905

 

 

 

2,368

 

Obsolescence allowance

 

 

(4,031

)

 

 

(3,808

)

Total inventories

 

$

38,475

 

 

$

34,089

 

Amounts credited to the allowance for obsolete inventory and charged to cost of sales amounted to $0.2 million and $0.4 million for the three months ended June 30, 2024 and 2023, respectively, and $0.7 million and $0.6 million for the six months ended June 30, 2024 and 2023, respectively.

XML 23 R15.htm IDEA: XBRL DOCUMENT v3.24.2
Goodwill and Intangible Assets
6 Months Ended
Jun. 30, 2024
Goodwill and Intangible Assets Disclosure [Abstract]  
Goodwill and Intangible Assets

6. Goodwill and Intangible Assets

Goodwill activity for the six months ended June 30, 2024 and the year ended December 31, 2023 was as follows:

(in thousands)

 

Six months ended June 30, 2024

 

 

Year ended December 31, 2023

 

Goodwill / Tradename

 

Goodwill

 

 

Tradename

 

 

Goodwill

 

 

Tradename

 

Balance at beginning of period

 

$

211,326

 

 

$

9,570

 

 

$

183,197

 

 

$

9,508

 

Acquisitions

 

 

110

 

 

 

 

 

 

27,152

 

 

 

 

Foreign currency translation

 

 

(292

)

 

 

(48

)

 

 

977

 

 

 

62

 

Balance at end of period

 

$

211,144

 

 

$

9,522

 

 

$

211,326

 

 

$

9,570

 

 

During the first quarter of 2024, the Company recorded measurement period adjustments related to the acquisition of Kemco Systems Co., LLC ("Kemco"), as discussed in Note 15, resulting in an increase to goodwill.

Finite life intangible assets as of June 30, 2024 and December 31, 2023 consisted of the following:

 

 

June 30, 2024

 

 

December 31, 2023

 

(in thousands)

 

Cost

 

 

Accum. Amort.

 

 

Cost

 

 

Accum. Amort.

 

Technology

 

$

16,508

 

 

$

14,388

 

 

$

16,517

 

 

$

14,061

 

Customer lists

 

 

103,471

 

 

 

66,721

 

 

 

103,471

 

 

 

63,420

 

Tradenames

 

 

14,094

 

 

 

5,688

 

 

 

14,094

 

 

 

5,001

 

Foreign currency adjustments

 

 

(1,397

)

 

 

(207

)

 

 

(1,083

)

 

 

56

 

Total intangible assets – finite life

 

$

132,676

 

 

$

86,590

 

 

$

132,999

 

 

$

82,538

 

Finite life intangible asset activity for the six months ended June 30, 2024 and 2023 was as follows:

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

Intangible assets – finite life, net at beginning of period

 

$

50,461

 

 

$

35,251

 

Amortization expense

 

 

(4,315

)

 

 

(3,430

)

Acquisitions

 

 

 

 

 

10,708

 

Foreign currency adjustments

 

 

(60

)

 

 

370

 

Intangible assets – finite life, net at end of period

 

$

46,086

 

 

$

42,899

 

Amortization expense of finite life intangible assets was $2.2 million and $1.7 million for the three months ended June 30, 2024 and 2023, respectively, and $4.3 million and $3.4 million for the six months ended June 30, 2024 and 2023, respectively. Amortization over the next five years for finite life intangibles is expected to be $4.3 million for the remainder of 2024, $7.6 million in 2025, $6.2 million in 2026, $6.0 million in 2027, and $5.6 million in 2028.

The Company completes its goodwill and indefinite life intangible asset impairment assessment annually in the fourth quarter, or more often if circumstances require. As a part of its impairment assessment, the Company first qualitatively assesses whether current events or changes in circumstances lead to a determination that it is more likely than not, defined as a likelihood of more than 50 percent, that the fair value of a reporting unit or indefinite life intangible asset is less than its carrying amount. If there is a qualitative determination that the fair value is more likely than not greater than the carrying value, the Company does not quantitatively test for impairment. If this qualitative assessment indicates a more likely than not potential that the asset may be impaired, the estimated fair value is calculated. If the estimated fair value is less than carrying value, an impairment charge is recorded.

As of June 30, 2024, the Company reviewed its previous forecasts and assumptions based on its current projections, which are subject to various risks and uncertainties, including projected revenue, projected operational profit, terminal growth rates, and the cost of capital. The Company did not identify any triggering events during the three or six months ended June 30, 2024 that would require an interim impairment assessment of goodwill or intangible assets.

The Company’s assumptions about future conditions important to its assessment of potential impairment of its goodwill and indefinite life intangible assets are subject to uncertainty, and the Company will continue to monitor these conditions in future periods as new information becomes available, and will update its analysis accordingly.

XML 24 R16.htm IDEA: XBRL DOCUMENT v3.24.2
Accrued Expenses
6 Months Ended
Jun. 30, 2024
Payables and Accruals [Abstract]  
Accrued Expenses

7. Accrued Expenses

Accrued expenses as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Compensation and related benefits

 

$

8,854

 

 

$

11,278

 

Accrued warranty

 

 

5,478

 

 

 

5,105

 

Contract liability

 

 

9,197

 

 

 

7,875

 

Short-term operating lease liability

 

 

3,950

 

 

 

4,278

 

Other

 

 

17,257

 

 

 

15,765

 

Total accrued expenses

 

$

44,736

 

 

$

44,301

 

XML 25 R17.htm IDEA: XBRL DOCUMENT v3.24.2
Senior Debt
6 Months Ended
Jun. 30, 2024
Debt Disclosure [Abstract]  
Senior Debt

8. Senior Debt

Debt as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Outstanding borrowings under Credit Facility (defined below)
     Term loan payable in
quarterly principal installments of $550 through September
     2023, $
2,232 through September 2025 and $2,977 thereafter with balance due upon
     maturity in December 2026

 

 

 

 

 

 

Term loan

 

$

107,959

 

 

$

112,424

 

Revolving credit facility

 

 

15,800

 

 

 

17,300

 

Total outstanding borrowings under the Credit Facility

 

 

123,759

 

 

 

129,724

 

Outstanding borrowings under the joint venture term debt

 

 

8,123

 

 

 

8,855

 

Unamortized debt discount

 

 

(1,056

)

 

 

(1,296

)

Total outstanding borrowings

 

 

130,826

 

 

 

137,283

 

   Less: current portion

 

 

(10,580

)

 

 

(10,488

)

Total debt, less current portion

 

$

120,246

 

 

$

126,795

 

Scheduled principal payments under the Credit Facility and joint venture term debt are $5.3 million for the remainder of 2024, $11.3 million in 2025, $111.4 million in 2026, $3.9 million in 2027, and zero in 2028.

Credit Facility

As of June 30, 2024 and December 31, 2023, $13.2 million and $13.3 million of letters of credit were outstanding, respectively. Total unused credit availability, in consideration of borrowing limitations, under the Company’s senior secured term loan and senior secured revolver loan with sub-facilities for letters of credit, swing-line loans and senior secured multi-currency loans (the "Credit Facility") was $111.0 million and $109.4 million at June 30, 2024 and December 31, 2023, respectively. Revolving loans may be borrowed, repaid and reborrowed until December 17, 2026, at which time all outstanding balances of the Credit Facility must be repaid.

At the Company’s option, revolving loans and the term loans accrue interest at a per annum rate based on (a) either the highest of (i) the federal funds rate plus 0.5%, or (ii) the prime lending rate of the Agent (as defined in the Credit Facility), (b) Daily Simple SOFR plus the Daily Simple SOFR Adjustment of 0.11% plus 1.0%, (c) 1.0%, plus a margin ranging from 1.75% to 3.25% depending on the Company’s Consolidated Leverage Ratio, or (d) a one/three/six-month Term SOFR Rate (as defined in the Credit Facility) plus the Term SOFR Adjustment ranging from 0.11% to 0.43% plus 1.75% to 3.25% depending on the Company’s Consolidated Leverage Ratio. Interest on swing line loans is the Base Rate.

Interest on Base Rate loans is payable quarterly in arrears on the last day of each calendar quarter and at maturity. Interest on Term SOFR rate loans is payable on the last date of each applicable Interest Period (as defined in the agreement), but in no event less than once every three months and at maturity. The weighted average stated interest rate on outstanding borrowings was 7.88% and 8.29% at June 30, 2024 and December 31, 2023, respectively. The effective interest rate was 8.12% and 7.70% at June 30, 2024 and December 31, 2023, respectively.

Under the terms of the Credit Facility, the Company is required to maintain certain financial covenants, including the maintenance of a Consolidated Net Leverage Ratio (as defined in the Credit Facility). In the third quarter of 2023, the Company entered into an Elevated Ratio Period resulting in a maximum Consolidated Net Leverage Ratio of 4.00 through June 30, 2024, after which time it decreased to 3.50 until the end of the term of the Credit Facility.

The Company has granted a security interest in substantially all of its assets to secure its obligations pursuant to the Credit Facility. The Company’s obligations under the Credit Facility are guaranteed by the Company’s domestic subsidiaries and such guaranty obligations are secured by a security interest on substantially all the assets of such subsidiaries, including certain real property. The Company’s obligations under the Credit Facility may also be guaranteed by the Company’s material foreign subsidiaries to the extent no adverse tax consequences would result to the Company.

As of June 30, 2024 and December 31, 2023, the Company was in compliance with all related financial and other restrictive covenants under the Credit Facility.

Joint Venture Debt

On March 7, 2022, the Company's Effox-Flextor-Mader, Inc. joint venture ("EFM JV"), for which the Company holds 63% of the equity, entered into a loan agreement secured by the assets of the EFM JV in the aggregate principal amount of $11.0 million for the acquisition of General Rubber, LLC ("GRC"). As of June 30, 2024 and December 31, 2023, $8.1 million and $8.9 million was outstanding under the loan, respectively. Principal will be paid back to the lender monthly with the final installment due by February 27, 2027. Interest is accrued at the per annum rate based on EFM JV's choice of the 1/3/6 month Term SOFR rate plus 3.25%, with a floor rate of 3.75%. Interest is paid monthly on the last day of each month. The interest rate at June 30, 2024 and December 31, 2023 was 8.52% and 8.70%, respectively. As of June 30, 2024 and December 31, 2023, the EFM JV was in compliance with all related financial and other restrictive covenants under this loan agreement. This loan balance does not impact the Company’s borrowing capacity or the financial covenants under the Credit Facility. As of June 30, 2024, there were $16.7 million in current assets, $26.1 million in long-lived assets, and $30.2 million in total liabilities related to the EFM JV included in the Condensed Consolidated Balance Sheets. As of December 31, 2023, there were $14.5 million in current assets, $26.7 million in long-lived assets, and $12.5 million in total liabilities related to the EFM JV included in the Consolidated Balance Sheets. For the three months ended June 30, 2024 and 2023, the EFM JV accounted for $13.2 million and $9.9 million in revenue, respectively, included in the Company's results. For the six months ended June 30, 2024 and 2023, the EFM JV accounted for $23.9 million and $19.3 million in revenue, respectively, included in the Company's results.

Foreign Debt

The Company has a number of bank guarantee facilities and bilateral lines of credit in various foreign countries currently supported by cash, letters of credit or pledged assets and collateral under the Credit Facility. In March 2023, the Company amended the Credit Facility, allowing letters of credit and bank guarantee issuances of up to $80.0 million from the bilateral lines of credit secured through pledged assets and collateral under the Credit Facility. As of June 30, 2024 and December 31, 2023, $48.3 million and $45.8 million in bank guarantees were outstanding, respectively, inclusive of $1.9 million and $1.3 million in outstanding bank guarantees as of June 30, 2024 and December 31, 2023, respectively, under a Euro-denominated bank guarantee agreement held by a subsidiary of the Company located in the Netherlands and secured by local assets, as well as $2.8 million and $2.3 million in outstanding bank guarantees as of June 30, 2024 and December 31, 2023, respectively, under Yuan-denominated bank guarantee agreements held by a subsidiary of the Company located in China and secured by local assets.

XML 26 R18.htm IDEA: XBRL DOCUMENT v3.24.2
Earnings per Share
6 Months Ended
Jun. 30, 2024
Earnings Per Share [Abstract]  
Earnings per Share

9. Earnings per Share

The computational components of basic and diluted earnings per share for the three months ended June 30, 2024 and 2023 are as follows:

 

 

Three months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

Numerator (for basic and diluted earnings per share)

 

 

 

 

 

 

 Net income attributable to CECO Environmental Corp.

 

$

4,485

 

 

$

3,724

 

 

 

 

 

 

 

 

Denominator

 

 

 

 

 

 

Basic weighted-average shares outstanding

 

 

34,918

 

 

 

34,619

 

Common stock equivalents arising from stock options and restricted stock awards

 

 

1,385

 

 

 

525

 

Diluted weighted-average shares outstanding

 

 

36,303

 

 

 

35,144

 

The computational components of basic and diluted earnings per share for the six months ended June 30, 2024 and 2023 are as follows:

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

Numerator (for basic and diluted earnings per share)

 

 

 

 

 

 

 Net income attributable to CECO Environmental Corp.

 

$

5,993

 

 

$

5,701

 

 

 

 

 

 

 

 

Denominator

 

 

 

 

 

 

Basic weighted-average shares outstanding

 

 

34,882

 

 

 

34,531

 

Common stock equivalents arising from stock options and restricted stock awards

 

 

1,357

 

 

 

641

 

Diluted weighted-average shares outstanding

 

 

36,239

 

 

 

35,172

 

Options and restricted stock units included in the computation of diluted earnings per share are calculated using the treasury stock method. For the three months ended June 30, 2024 and 2023, zero and 1.3 million, respectively, and for the six months ended June 30, 2024 and 2023, 0.1 million and 0.7 million, respectively, of outstanding options and restricted stock units were excluded from the computation of diluted earnings per share due to their having an anti-dilutive effect.

Once a restricted stock unit vests, it is included in the computation of weighted average shares outstanding for purposes of basic and diluted earnings per share.

Common Stock Repurchase

On May 10, 2022, the Company's Board of Directors authorized a share repurchase program under which the Company may purchase up to $20.0 million of its outstanding shares of common stock through April 30, 2025. The authorization permits the Company to repurchase shares in the open market, through accelerated share repurchases, block trades, Rule 10b5-1 trading plans or through privately negotiated transactions in accordance with applicable laws, rules and regulations. During the three and six months ended June 30, 2024, the Company repurchased approximately 86,000 and 230,000 shares under the program, respectively, for a cost of $2.0 million and $5.0 million, respectively. There were no shares repurchased under the program during the three or six months ended June 30, 2023.

XML 27 R19.htm IDEA: XBRL DOCUMENT v3.24.2
Share-Based Compensation
6 Months Ended
Jun. 30, 2024
Share-Based Payment Arrangement [Abstract]  
Share-Based Compensation

10. Share-Based Compensation

The Company accounts for share-based compensation in accordance with Accounting Standards Codification (“ASC”) Topic 718, “Compensation – Stock Compensation,” which requires the Company to recognize compensation expense for share-based awards, measured at the fair value of the awards at the grant date. The Company recognized $2.2 million and $1.2 million of share-based compensation related expense during the three months ended June 30, 2024 and 2023, respectively, and $3.8 million and $2.0 million of share-based compensation related expense during the six months ended June 30, 2024 and 2023, respectively.

The Company granted approximately 57,000 and 50,000 restricted stock units during the three months ended June 30, 2024 and 2023, respectively, and approximately 341,000 and 390,000 restricted stock units during the six months ended June 30, 2024 and 2023, respectively. In addition, the Company granted approximately 25,000 and zero stock options during the six months

ended June 30, 2024 and 2023, respectively. No stock options were granted during the three months ended June 30, 2024 and 2023.

There were approximately 10,000 and 25,000 options exercised during the three months ended June 30, 2024 and 2023, respectively, for which the Company received $0.2 million and $0.3 million in cash, respectively, from employees and directors. The intrinsic value of options exercised was $0.1 million for each of the three months ended June 30, 2024 and 2023. There were approximately 20,000 and 77,000 options exercised during the six months ended June 30, 2024 and 2023, respectively, for which the Company received $0.3 million and $0.9 million in cash, respectively, from employees and directors. The intrinsic value of options exercised was $0.2 million for each of the six months ended June 30, 2024 and 2023.

XML 28 R20.htm IDEA: XBRL DOCUMENT v3.24.2
Pension and Employee Benefit Plans
6 Months Ended
Jun. 30, 2024
Retirement Benefits [Abstract]  
Pension and Employee Benefit Plans

11. Pension and Employee Benefit Plans

The Company sponsors a non-contributory defined benefit pension plan for certain union employees. The plan is funded in accordance with the funding requirements of the Employee Retirement Income Security Act of 1974.

The Company presents the components of net periodic benefit cost within “Other (expense) income, net” on the Condensed Consolidated Statements of Income.

Retirement plan expense is based on valuations performed by plan actuaries as of the beginning of each fiscal year. The components of the pension plan expense consisted of the following:

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Interest cost

 

$

304

 

 

$

318

 

 

$

608

 

 

$

637

 

Expected return on plan assets

 

 

(304

)

 

 

(285

)

 

 

(608

)

 

 

(571

)

Amortization of net actuarial loss

 

 

57

 

 

 

74

 

 

 

113

 

 

 

148

 

Net periodic benefit cost

 

$

57

 

 

$

107

 

 

$

113

 

 

$

214

 

The Company made contributions to its defined benefit plan of $0.2 million during the three and six months ended June 30, 2024. No contributions were made to the plan during the three and six months ended June 30, 2023. For the remainder of 2024, the Company expects to make contributions of $0.9 to fund the pension plan. The unfunded liability of the plan of $4.0 million and $4.1 million as of June 30, 2024 and December 31, 2023, respectively, is included in “Other liabilities” on the Condensed Consolidated Balance Sheets.

XML 29 R21.htm IDEA: XBRL DOCUMENT v3.24.2
Income Taxes
6 Months Ended
Jun. 30, 2024
Income Tax Disclosure [Abstract]  
Income Taxes

12. Income Taxes

The Company files income tax returns in various federal, state and local jurisdictions. Tax years from 2018 forward remain open for examination by Federal authorities. Tax years from 2017 forward remain open for all significant state and foreign authorities.

The Company accounts for uncertain tax positions pursuant to ASC Topic 740, “Income Taxes.” As of June 30, 2024 and December 31, 2023, the liability for uncertain tax positions totaled approximately $0.2 million, which is included in “Other liabilities” on the Condensed Consolidated Balance Sheets. The Company recognizes accrued interest related to uncertain tax positions and penalties, if any, in income tax expense within the Condensed Consolidated Statements of Income.

Certain of the Company’s undistributed earnings of our foreign subsidiaries are not permanently reinvested. Since foreign earnings have already been subject to United States income tax in 2017 as a result of the 2017 Tax Cuts and Jobs Act, the Company intends to repatriate foreign-held cash as needed. The Company records deferred income tax attributable to foreign withholding taxes that would become payable should it decide to repatriate cash held in our foreign operations. As of June 30, 2024 and December 31, 2023, the Company recorded deferred income taxes of approximately $0.8 million and $0.7 million, respectively, on the undistributed earnings of its foreign subsidiaries.

Income tax expense was $0.4 million and $1.0 million for the three months ended June 30, 2024 and 2023, respectively, and $1.1 million and $1.0 million for the six months ended June 30, 2024 and 2023, respectively. The effective income tax rate for the three months ended June 30, 2024 was 7.4% compared with 19.8% for the three months ended June 30, 2023, and the effective income tax rate for the six months ended June 30, 2024 was 13.1% compared with 13.3% for the six months ended June 30, 2023. The effective income tax rates for the three and six months ended June 30, 2024 and 2023 differ from the United States federal statutory rate. The Company's effective rate is affected by certain other permanent differences, including state income taxes, non-deductible incentive stock-based compensation and differences in tax rates among jurisdictions in which it

operates. Additionally, the Company received a tax indemnification payment of $0.5 million, related to a prior year acquisition, in the second quarter of 2024.

The Organization for Economic Co-operation and Development/G20 Inclusive Framework on Base Erosion and Profit Shifting published the Pillar Two model rules designed to address the tax challenges arising from the digitalization of the global economy which introduces a 15% global minimum corporate tax for companies with revenues above €750 million calculated on a country-by-country basis. On February 1, 2023, the FASB indicated that it believes the minimum tax imposed under Pillar Two is an alternative minimum tax, and, accordingly, deferred tax assets and liabilities associated with the minimum tax would not be recognized or adjusted for the estimated future effects of the minimum tax but would be recognized in the period incurred. Aspects of Pillar Two legislation have been enacted in certain jurisdictions in which the Company operates effective for accounting periods commencing on or after January 1, 2024. However, based on the current revenue threshold, the Company is currently not subject to Pillar Two taxes.

XML 30 R22.htm IDEA: XBRL DOCUMENT v3.24.2
Financial Instruments
6 Months Ended
Jun. 30, 2024
Investments, All Other Investments [Abstract]  
Financial Instruments

13. Financial Instruments

The Company's financial instruments consist primarily of investments in cash and cash equivalents, receivables and certain other assets, notes payable, foreign debt and accounts payable, which approximate fair value at June 30, 2024 and December 31, 2023, due to their short-term nature or variable, market-driven interest rates.

The fair value of the debt issued under the Credit Facility and joint venture term loan was $131.9 million and $138.6 million at June 30, 2024 and December 31, 2023, respectively. The fair value was determined considering market conditions, the Company's credit worthiness and the current terms of our debt, which is considered Level 2 on the fair value hierarchy.

At June 30, 2024 and December 31, 2023, the Company had cash and cash equivalents of $36.5 million and $54.8 million, respectively, of which $28.6 million and $38.5 million, respectively, was held outside of the United States, principally in the Netherlands, India, United Kingdom, and China.

XML 31 R23.htm IDEA: XBRL DOCUMENT v3.24.2
Commitments and Contingencies - Legal Matters
6 Months Ended
Jun. 30, 2024
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingencies - Legal Matters

14. Commitments and Contingencies

Asbestos cases

The Company's subsidiary, Met-Pro Technologies LLC (“Met-Pro”), beginning in 2002, has been named in asbestos-related lawsuits filed against a large number of industrial companies including, in particular, those in the pump and fluid handling industries. In management’s opinion, the complaints typically have been vague, general and speculative, alleging that Met-Pro, along with the numerous other defendants, sold unidentified asbestos-containing products and engaged in other related actions which caused injuries (including death) and loss to the plaintiffs. Counsel has advised that more recent cases typically allege more serious claims of mesothelioma. The Company’s insurers have hired attorneys who, together with the Company, are vigorously defending these cases. Many cases have been dismissed after the plaintiff fails to produce evidence of exposure to Met-Pro’s products. In those cases, where evidence has been produced, the Company’s experience has been that the exposure levels are low and the Company’s position has been that its products were not a cause of death, injury or loss. The Company has been dismissed from or settled a large number of these cases. Cumulative settlement payments from 2002 through June 30, 2024 for cases involving asbestos-related claims were $6.8 million which together with all legal fees other than corporate counsel expenses have substantially been paid by the Company’s insurers. The average cost per settled claim, excluding legal fees, was approximately $33,000. As of June 30, 2024 and December 31, 2023, the amount recorded within "Accrued expenses" on the Condensed Consolidated Balance Sheets was $0.2 million and zero, respectively, related to asbestos litigation.

Based upon the most recent information available to the Company regarding such claims, there were a total of 333 cases pending against the Company as of June 30, 2024 with Illinois, New York, Pennsylvania and West Virginia having the largest number of cases, as compared with 313 cases that were pending as of December 31, 2023. During the six months ended June 30, 2024, 94 new cases were filed against the Company, and the Company was dismissed from 50 cases and settled 24 cases. Most of the pending cases have not advanced beyond the early stages of discovery, although a number of cases are on schedules leading to or scheduled for trial. The Company believes that its insurance coverage is adequate for the cases currently pending against the Company and for the foreseeable future, assuming a continuation of the current volume, nature of cases and settlement amounts. However, the Company has no control over the number and nature of cases that are filed against it, nor as to the financial health of its insurers or their position as to coverage. The Company also presently believes that none of the pending cases will have a material adverse impact upon the Company’s results of operations, liquidity or financial condition.

Other

The Company is also a party to routine contract and employment-related litigation matters, warranty claims and routine audits of state and local tax returns arising in the ordinary course of its business.

The final outcome and impact of open matters, and related claims and investigations that may be brought in the future, are subject to many variables, and cannot be predicted. The Company records accruals for estimated losses relating to claims and lawsuits when available information indicates that a loss is probable and the amount of the loss, or range of loss, can be reasonably estimated. The Company expenses legal costs as they are incurred.

The Company is not aware of any pending claims or assessments, other than as described above, which may have a material adverse impact on its liquidity, financial position, results of operations, or cash flows.

XML 32 R24.htm IDEA: XBRL DOCUMENT v3.24.2
Acquisitions
6 Months Ended
Jun. 30, 2024
Business Combinations [Abstract]  
Acquisitions and Joint Ventures

15. Acquisitions

Kemco Systems Co., LLC

On August 23, 2023, the Company acquired 100% of the equity interests of Kemco for $24.0 million in cash, which was financed with a draw on the Company’s revolving credit facility. During the three months ended March 31, 2024, the Company received $0.4 million from the former owners of Kemco as a working capital adjustment, reducing the purchase price to $23.6 million. As additional consideration, the former owners of Kemco are entitled to earnout payments up to $4.0 million based upon specified financial results through August 31, 2026, of which $1.7 million was paid during the second quarter of 2024. Based on projections at the acquisition date, the Company estimated the fair value of the earnout to be $2.2 million, which was subsequently adjusted to $2.7 million in the first quarter of 2024. This fair value measurement is based on inputs not observable in the market, which is considered Level 3 on the fair value hierarchy. As of June 30, 2024, the earnout liability recorded in “Accrued expenses” on the Condensed Consolidated Balance Sheets is $1.1 million. Kemco designs and manufactures energy and water conservation systems and equipment for applications regarding wastewater reuse and recycle, heat recovery, water heating, and vapor energy. This acquisition advances the Company's position within the North American water and wastewater treatment market within the Engineered Systems segment. The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.

(in thousands)

 

 

 

Current assets (including accounts receivable of $2,328)

 

$

8,902

 

Property and equipment

 

 

341

 

Right-of-use assets from operating leases

 

 

1,602

 

Intangible - finite life

 

 

11,610

 

Goodwill

 

 

11,115

 

Other assets

 

 

16

 

Total assets acquired

 

 

33,586

 

Current liabilities assumed

 

 

(6,853

)

Other liabilities assumed

 

 

(404

)

Net assets acquired

 

$

26,329

 

The Company acquired technology, customer lists and tradename intangible assets valued at $1.4 million, $8.7 million and $1.5 million, respectively. These assets were determined to have useful lives of 7, 10 and 10 years, respectively.

Transcend Solutions

On March 31, 2023, the Company acquired 100% of the equity interests of Transcend Solutions, LLC ("Transcend") for $22.4 million, including $20.0 million in cash, which was financed with a draw on the Company’s revolving credit facility, $2.4 million of deferred cash consideration, consisting of $0.4 million of holdback paid within one year and $2.0 million of notes payable due in equal installments over two years, of which $1.0 million was paid during the first quarter of 2024. Transcend is a process filtration solution design and manufacturing company with applications in hydrocarbon and chemical processing. This acquisition improves the Company's short-cycle and long-cycle mix and expands the Company's reach into midstream oil and gas, liquified natural gas, hydrocarbon processing, and chemical processing applications within the Engineered Systems segment. The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.

(in thousands)

 

 

 

Current assets (including cash of $52 and accounts receivable of $1,493)

 

$

2,614

 

Property and equipment

 

 

1,153

 

Intangible - finite life

 

 

8,930

 

Goodwill

 

 

10,839

 

Other assets

 

 

231

 

Total assets acquired

 

 

23,767

 

Current liabilities assumed

 

 

(1,203

)

Deferred tax liability

 

 

(168

)

Net assets acquired

 

$

22,396

 

The Company acquired technology, customer lists and tradename intangible assets valued at $0.6 million, $7.6 million and $0.7 million, respectively. These assets were determined to have useful lives of 7, 10 and 10 years, respectively.

Malvar Engineering Limited

On January 10, 2023, the Company acquired 100% of the equity interests of Malvar Engineering Limited, including its subsidiaries Arkanum Management Limited and Wakefield Acoustics Limited (collectively, "Wakefield"), for $4.1 million in cash, which was financed with a draw on the Company’s revolving credit facility, and $0.4 million of deferred cash consideration. As additional consideration, the former owners are entitled to earn-out payments based upon specified financial results through July 31, 2023. Based on projections at the acquisition date, the Company estimated the fair value of the earn-out to be $0.6 million. A payment of $0.6 million, representing the fully earned amount, was made in the fourth quarter of 2023. Wakefield is a producer of industrial engineered noise control solutions, including custom acoustical gen-set packages, ambient air baffles, acoustical louvres, and skid enclosures, primarily serving server farms for data centers, standby and emergency power generation, oil and gas, petrochemical, commercial construction, infrastructure, and general manufacturing industries. This acquisition advances the Company's position within the industrial silencing and noise attenuation market by adding a range of solutions and access to new geographic markets within the Engineered Systems segment. The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.

(in thousands)

 

 

 

Current assets (including accounts receivable of $2,467)

 

$

3,240

 

Property and equipment

 

 

635

 

Intangible - finite life

 

 

1,778

 

Goodwill

 

 

5,296

 

Total assets acquired

 

 

10,949

 

Current liabilities assumed

 

 

(4,860

)

Deferred income tax liability

 

 

(961

)

Net assets acquired

 

$

5,128

 

The Company acquired customer lists and tradename intangible assets valued at $1.5 million and $0.3 million, respectively. These assets were determined to have useful lives of 10 years.

The Company has finalized the valuation of assets acquired and liabilities assumed related to the acquisition of Wakefield and Transcend. The purchase accounting related to the Kemco acquisition is subject to final adjustment, primarily for the valuation of intangible assets pending final valuation results for such assets and tax balances for the further assessment of the acquiree’s tax positions. These preliminary estimates and assumptions could change significantly during the purchase price measurement period as the Company finalizes the valuation of assets acquired and liabilities assumed. These changes could result in material variances in the Company's future financial results, including variances in the estimated purchase price, fair values recorded and expenses associated with these items.

Goodwill recognized represents value the Company expects to be created by combining the various operations of the acquired businesses with the Company’s operations, including the expansion into markets within existing business segments, access to new customers and potential cost savings and synergies. Goodwill related to this acquisition is not deductible for tax purposes.

Acquisition and integration expenses on the Condensed Consolidated Statements of Income are related to acquisition activities, which include retention, legal, accounting, banking, and other expenses.

The following unaudited pro forma financial information represents the Company’s results of operations as if these acquisitions had occurred at the beginning of the fiscal year prior to the acquisition:

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands, except per share data)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net sales

 

$

137,522

 

 

 

135,260

 

 

$

263,854

 

 

 

257,455

 

Net income attributable to CECO Environmental Corp.

 

 

4,485

 

 

 

4,292

 

 

 

5,993

 

 

 

7,019

 

Earnings per share:

 

 

 

 

 

 

 

 

 

 

 

 

Basic

 

$

0.13

 

 

$

0.12

 

 

$

0.17

 

 

$

0.20

 

Diluted

 

$

0.12

 

 

$

0.12

 

 

$

0.17

 

 

$

0.20

 

The pro forma results have been prepared for informational purposes only and include adjustments to amortize acquired intangible assets with finite life, reflect additional interest expense on debt used to fund the acquisition, and to record the income tax consequences of the pro forma adjustments. These pro forma results do not purport to be indicative of the results of operations that would have occurred had the purchase been made as of the beginning of the periods presented or of the results of operations that may occur in the future.

XML 33 R25.htm IDEA: XBRL DOCUMENT v3.24.2
Business Segment Information
6 Months Ended
Jun. 30, 2024
Segment Reporting [Abstract]  
Business Segment Information

16. Business Segment Information

The Company’s operations are organized and reviewed by management along with its solutions or end markets that the segment serves and presented in two reportable segments. The results of the segments are reviewed through the “Income from operations” line on the Condensed Consolidated Statements of Income.

The Company’s reportable segments are organized as groups of similar products and services, as described as follows:

Engineered Systems segment: The Engineered Systems segment serves the power generation, hydrocarbon processing, water/wastewater treatment, oily water separation and treatment, marine and naval vessels, and midstream oil and gas sectors. The Company seeks to address the global demand for environmental and equipment protection solutions with its highly engineered platforms including emissions management, fluid bed cyclones, thermal acoustics, separation and filtration, and dampers and expansion joints.

Industrial Process Solutions segment: The Industrial Process Solutions segment serves the broad industrial sector with solutions for air pollution and contamination control, fluid handling, and process filtration in applications such as aluminum beverage can production, automobile production, food and beverage processing, semiconductor fabrication, electronics production, steel and aluminum mill processing, wood manufacturing, desalination, and aquaculture markets. The Company assists customers in maintaining clean and safe operations for employees, reducing energy consumption, minimizing waste for customers, and meeting regulatory standards for toxic emissions, fumes, volatile organic compounds and odor elimination through its platforms including duct fabrication and installation, industrial air, and fluid handling.

The financial segment information is as follows:

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net sales (less intra-, inter-segment sales)

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

97,392

 

 

$

87,522

 

 

$

186,741

 

 

$

161,977

 

Industrial Process Solutions segment

 

 

40,130

 

 

 

41,659

 

 

 

77,113

 

 

 

79,767

 

Total net sales

 

$

137,522

 

 

$

129,181

 

 

$

263,854

 

 

$

241,744

 

 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Income from operations

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

19,330

 

 

$

14,089

 

 

$

35,607

 

 

$

23,894

 

Industrial Process Solutions segment

 

 

5,669

 

 

 

4,586

 

 

 

12,769

 

 

 

10,131

 

Corporate and Other(1)

 

 

(15,742

)

 

 

(10,072

)

 

 

(31,433

)

 

 

(19,961

)

Total income from operations

 

$

9,257

 

 

$

8,603

 

 

$

16,943

 

 

$

14,064

 

(1)
Includes corporate compensation, professional services, information technology, and other general and administrative corporate expenses.

 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Property and equipment additions

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

890

 

 

$

444

 

 

$

2,027

 

 

$

688

 

Industrial Process Solutions segment

 

 

429

 

 

 

312

 

 

 

1,035

 

 

 

1,711

 

Corporate and Other

 

 

2,804

 

 

 

1,406

 

 

 

4,171

 

 

 

1,520

 

Total property and equipment additions

 

$

4,123

 

 

$

2,162

 

 

$

7,233

 

 

$

3,919

 

 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Depreciation and amortization

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

1,814

 

 

$

1,274

 

 

$

3,599

 

 

$

2,486

 

Industrial Process Solutions segment

 

 

1,131

 

 

 

949

 

 

 

2,250

 

 

 

2,107

 

Corporate and Other

 

 

516

 

 

 

542

 

 

 

1,124

 

 

 

1,057

 

Total depreciation and amortization

 

$

3,461

 

 

$

2,765

 

 

$

6,973

 

 

$

5,650

 

 

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Identifiable assets

 

 

 

 

 

 

Engineered Systems segment

 

$

427,732

 

 

$

432,098

 

Industrial Process Solutions segment

 

 

144,132

 

 

 

147,740

 

Corporate and Other(2)

 

 

26,269

 

 

 

20,453

 

Total identifiable assets

 

$

598,133

 

 

$

600,291

 

(2)
Corporate and Other assets consist primarily of cash and income tax related assets.

 

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Goodwill

 

 

 

 

 

 

Engineered Systems segment

 

$

142,058

 

 

$

142,229

 

Industrial Process Solutions segment

 

 

69,086

 

 

 

69,097

 

Total goodwill

 

$

211,144

 

 

$

211,326

 


Intra-segment and Inter-segment Revenues

The Company has multiple divisions that sell to each other within segments (intra-segment sales) and between segments (inter-segment sales), as follows:

 

 

Three months ended June 30, 2024

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

102,141

 

 

$

(4,553

)

 

$

(196

)

 

$

 

 

$

97,392

 

Industrial Process Solutions segment

 

 

44,673

 

 

 

(4,440

)

 

 

 

 

 

(103

)

 

 

40,130

 

Total net sales

 

$

146,814

 

 

$

(8,993

)

 

$

(196

)

 

$

(103

)

 

$

137,522

 

 

 

 

Three months ended June 30, 2023

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

95,880

 

 

$

(7,995

)

 

$

(363

)

 

$

 

 

$

87,522

 

Industrial Process Solutions segment

 

 

44,641

 

 

 

(2,806

)

 

 

 

 

 

(176

)

 

 

41,659

 

Total net sales

 

$

140,521

 

 

$

(10,801

)

 

$

(363

)

 

$

(176

)

 

$

129,181

 

 

 

 

Six months ended June 30, 2024

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

194,659

 

 

$

(7,635

)

 

$

(283

)

 

$

 

 

$

186,741

 

Industrial Process Solutions segment

 

 

84,252

 

 

 

(6,975

)

 

 

 

 

 

(164

)

 

 

77,113

 

Total net sales

 

$

278,911

 

 

$

(14,610

)

 

$

(283

)

 

$

(164

)

 

$

263,854

 

 

 

 

Six months ended June 30, 2023

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

171,970

 

 

$

(9,533

)

 

$

(460

)

 

$

 

 

$

161,977

 

Industrial Process Solutions segment

 

 

83,682

 

 

 

(3,641

)

 

 

 

 

 

(274

)

 

 

79,767

 

Total net sales

 

$

255,652

 

 

$

(13,174

)

 

$

(460

)

 

$

(274

)

 

$

241,744

 

XML 34 R26.htm IDEA: XBRL DOCUMENT v3.24.2
Subsequent Events
6 Months Ended
Jun. 30, 2024
Subsequent Events [Abstract]  
Subsequent Events

17. Subsequent Events

On July 29, 2024, the Company completed its acquisition of EnviroCare International (“EnviroCare"), based in American Canyon, California. EnviroCare is a leading, international designer and provider of industrial exhaust air contamination treatment and control systems, solutions and services across a wide range of industrial and municipal applications. This acquisition advances the Company's leadership position within the industrial processing solutions segment by adding a range of solutions and access to new geographic markets and industrial segments. The purchase price was approximately $17 million and financed using a combination of cash on the balance sheet and borrowings under the Company’s existing Credit Facility. The impact of this acquisition is not included in the Company's results for the three or six months ended June 30, 2024. The initial accounting for the acquisition was not complete at the time the financial statements were issued due to the timing of the acquisition and the filing of this Quarterly Report on Form 10-Q. As a result, complete disclosures as required under ASC 805, Business Combinations cannot be made at this time.

XML 35 R27.htm IDEA: XBRL DOCUMENT v3.24.2
New Financial Accounting Pronouncements (Policies)
6 Months Ended
Jun. 30, 2024
Accounting Changes and Error Corrections [Abstract]  
Accounting Standards Adopted in Fiscal 2024

Accounting Standards Adopted in Fiscal 2024

None.

Accounting Standards to be Adopted

Accounting Standards to be Adopted

In December 2023, the Financial Accounting Standards Board (the "FASB") issued Accounting Standards Update ("ASU") 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which addresses income tax disclosure requirements, primarily around the disclosure of the rate reconciliation and income taxes paid. The ASU is effective for fiscal years beginning after December 15, 2024. The Company is currently evaluating the impact the adoption of the standard will have on the Company’s consolidated financial statements.

 

In November 2023, the FASB issued ASU 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, which addresses segment disclosure requirements, primarily the disclosure of significant segment expenses. The ASU is effective for fiscal years beginning after December 15, 2023, and interim periods beginning after December 15, 2024. The Company is currently evaluating the impact the adoption of the standard will have on the Company’s consolidated financial statements.

XML 36 R28.htm IDEA: XBRL DOCUMENT v3.24.2
Accounts Receivable (Tables)
6 Months Ended
Jun. 30, 2024
Receivables [Abstract]  
Summary of Accounts Receivable

Accounts receivable as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Accounts receivable

 

$

133,556

 

 

$

119,193

 

Provision for credit losses

 

 

(6,582

)

 

 

(6,460

)

Total accounts receivable, net

 

$

126,974

 

 

$

112,733

 

XML 37 R29.htm IDEA: XBRL DOCUMENT v3.24.2
Contract Assets and Liabilities (Tables)
6 Months Ended
Jun. 30, 2024
Table Text Block [Abstract]  
Summary of Contract Assets and Liabilities

Contract assets and liabilities as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Costs and estimated earnings in excess of billings on uncompleted contracts

 

$

55,378

 

 

$

66,574

 

Billings in excess of costs and estimated earnings on uncompleted contracts

 

 

59,851

 

 

 

56,899

 

XML 38 R30.htm IDEA: XBRL DOCUMENT v3.24.2
Inventories (Tables)
6 Months Ended
Jun. 30, 2024
Inventory Disclosure [Abstract]  
Summary of Inventories

Inventories as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Raw materials

 

$

27,869

 

 

$

25,819

 

Work in process

 

 

11,732

 

 

 

9,710

 

Finished goods

 

 

2,905

 

 

 

2,368

 

Obsolescence allowance

 

 

(4,031

)

 

 

(3,808

)

Total inventories

 

$

38,475

 

 

$

34,089

 

XML 39 R31.htm IDEA: XBRL DOCUMENT v3.24.2
Goodwill and Intangible Assets (Tables)
6 Months Ended
Jun. 30, 2024
Goodwill and Intangible Assets Disclosure [Abstract]  
Goodwill / Tradename

Goodwill activity for the six months ended June 30, 2024 and the year ended December 31, 2023 was as follows:

(in thousands)

 

Six months ended June 30, 2024

 

 

Year ended December 31, 2023

 

Goodwill / Tradename

 

Goodwill

 

 

Tradename

 

 

Goodwill

 

 

Tradename

 

Balance at beginning of period

 

$

211,326

 

 

$

9,570

 

 

$

183,197

 

 

$

9,508

 

Acquisitions

 

 

110

 

 

 

 

 

 

27,152

 

 

 

 

Foreign currency translation

 

 

(292

)

 

 

(48

)

 

 

977

 

 

 

62

 

Balance at end of period

 

$

211,144

 

 

$

9,522

 

 

$

211,326

 

 

$

9,570

 

Intangible Assets - Finite Life

Finite life intangible assets as of June 30, 2024 and December 31, 2023 consisted of the following:

 

 

June 30, 2024

 

 

December 31, 2023

 

(in thousands)

 

Cost

 

 

Accum. Amort.

 

 

Cost

 

 

Accum. Amort.

 

Technology

 

$

16,508

 

 

$

14,388

 

 

$

16,517

 

 

$

14,061

 

Customer lists

 

 

103,471

 

 

 

66,721

 

 

 

103,471

 

 

 

63,420

 

Tradenames

 

 

14,094

 

 

 

5,688

 

 

 

14,094

 

 

 

5,001

 

Foreign currency adjustments

 

 

(1,397

)

 

 

(207

)

 

 

(1,083

)

 

 

56

 

Total intangible assets – finite life

 

$

132,676

 

 

$

86,590

 

 

$

132,999

 

 

$

82,538

 

Summary of Finite Lived Intangible Assets Activities

Finite life intangible asset activity for the six months ended June 30, 2024 and 2023 was as follows:

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

Intangible assets – finite life, net at beginning of period

 

$

50,461

 

 

$

35,251

 

Amortization expense

 

 

(4,315

)

 

 

(3,430

)

Acquisitions

 

 

 

 

 

10,708

 

Foreign currency adjustments

 

 

(60

)

 

 

370

 

Intangible assets – finite life, net at end of period

 

$

46,086

 

 

$

42,899

 

XML 40 R32.htm IDEA: XBRL DOCUMENT v3.24.2
Accrued Expenses (Tables)
6 Months Ended
Jun. 30, 2024
Payables and Accruals [Abstract]  
Summary of Accrued Expenses

Accrued expenses as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Compensation and related benefits

 

$

8,854

 

 

$

11,278

 

Accrued warranty

 

 

5,478

 

 

 

5,105

 

Contract liability

 

 

9,197

 

 

 

7,875

 

Short-term operating lease liability

 

 

3,950

 

 

 

4,278

 

Other

 

 

17,257

 

 

 

15,765

 

Total accrued expenses

 

$

44,736

 

 

$

44,301

 

XML 41 R33.htm IDEA: XBRL DOCUMENT v3.24.2
Senior Debt (Tables)
6 Months Ended
Jun. 30, 2024
Debt Disclosure [Abstract]  
Summary of Debt

Debt as of June 30, 2024 and December 31, 2023 consisted of the following:

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Outstanding borrowings under Credit Facility (defined below)
     Term loan payable in
quarterly principal installments of $550 through September
     2023, $
2,232 through September 2025 and $2,977 thereafter with balance due upon
     maturity in December 2026

 

 

 

 

 

 

Term loan

 

$

107,959

 

 

$

112,424

 

Revolving credit facility

 

 

15,800

 

 

 

17,300

 

Total outstanding borrowings under the Credit Facility

 

 

123,759

 

 

 

129,724

 

Outstanding borrowings under the joint venture term debt

 

 

8,123

 

 

 

8,855

 

Unamortized debt discount

 

 

(1,056

)

 

 

(1,296

)

Total outstanding borrowings

 

 

130,826

 

 

 

137,283

 

   Less: current portion

 

 

(10,580

)

 

 

(10,488

)

Total debt, less current portion

 

$

120,246

 

 

$

126,795

 

XML 42 R34.htm IDEA: XBRL DOCUMENT v3.24.2
Earnings per Share (Tables)
6 Months Ended
Jun. 30, 2024
Earnings Per Share [Abstract]  
Number of Shares Outstanding for Calculation of Earnings Per Share

The computational components of basic and diluted earnings per share for the three months ended June 30, 2024 and 2023 are as follows:

 

 

Three months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

Numerator (for basic and diluted earnings per share)

 

 

 

 

 

 

 Net income attributable to CECO Environmental Corp.

 

$

4,485

 

 

$

3,724

 

 

 

 

 

 

 

 

Denominator

 

 

 

 

 

 

Basic weighted-average shares outstanding

 

 

34,918

 

 

 

34,619

 

Common stock equivalents arising from stock options and restricted stock awards

 

 

1,385

 

 

 

525

 

Diluted weighted-average shares outstanding

 

 

36,303

 

 

 

35,144

 

The computational components of basic and diluted earnings per share for the six months ended June 30, 2024 and 2023 are as follows:

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

Numerator (for basic and diluted earnings per share)

 

 

 

 

 

 

 Net income attributable to CECO Environmental Corp.

 

$

5,993

 

 

$

5,701

 

 

 

 

 

 

 

 

Denominator

 

 

 

 

 

 

Basic weighted-average shares outstanding

 

 

34,882

 

 

 

34,531

 

Common stock equivalents arising from stock options and restricted stock awards

 

 

1,357

 

 

 

641

 

Diluted weighted-average shares outstanding

 

 

36,239

 

 

 

35,172

 

XML 43 R35.htm IDEA: XBRL DOCUMENT v3.24.2
Pension and Employee Benefit Plans (Tables)
6 Months Ended
Jun. 30, 2024
Retirement Benefits [Abstract]  
Components of Pension and Employee Benefit Expenses

Retirement plan expense is based on valuations performed by plan actuaries as of the beginning of each fiscal year. The components of the pension plan expense consisted of the following:

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Interest cost

 

$

304

 

 

$

318

 

 

$

608

 

 

$

637

 

Expected return on plan assets

 

 

(304

)

 

 

(285

)

 

 

(608

)

 

 

(571

)

Amortization of net actuarial loss

 

 

57

 

 

 

74

 

 

 

113

 

 

 

148

 

Net periodic benefit cost

 

$

57

 

 

$

107

 

 

$

113

 

 

$

214

 

XML 44 R36.htm IDEA: XBRL DOCUMENT v3.24.2
Acquisitions (Tables)
6 Months Ended
Jun. 30, 2024
General Rubber LLC [Member]  
Schedule of Unaudited Pro Forma Financial Information

The following unaudited pro forma financial information represents the Company’s results of operations as if these acquisitions had occurred at the beginning of the fiscal year prior to the acquisition:

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands, except per share data)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net sales

 

$

137,522

 

 

 

135,260

 

 

$

263,854

 

 

 

257,455

 

Net income attributable to CECO Environmental Corp.

 

 

4,485

 

 

 

4,292

 

 

 

5,993

 

 

 

7,019

 

Earnings per share:

 

 

 

 

 

 

 

 

 

 

 

 

Basic

 

$

0.13

 

 

$

0.12

 

 

$

0.17

 

 

$

0.20

 

Diluted

 

$

0.12

 

 

$

0.12

 

 

$

0.17

 

 

$

0.20

 

Kemco Systems Co Llc [Member]  
Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.

(in thousands)

 

 

 

Current assets (including accounts receivable of $2,328)

 

$

8,902

 

Property and equipment

 

 

341

 

Right-of-use assets from operating leases

 

 

1,602

 

Intangible - finite life

 

 

11,610

 

Goodwill

 

 

11,115

 

Other assets

 

 

16

 

Total assets acquired

 

 

33,586

 

Current liabilities assumed

 

 

(6,853

)

Other liabilities assumed

 

 

(404

)

Net assets acquired

 

$

26,329

 

Malvar Engineering Limited [Member]  
Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.

(in thousands)

 

 

 

Current assets (including accounts receivable of $2,467)

 

$

3,240

 

Property and equipment

 

 

635

 

Intangible - finite life

 

 

1,778

 

Goodwill

 

 

5,296

 

Total assets acquired

 

 

10,949

 

Current liabilities assumed

 

 

(4,860

)

Deferred income tax liability

 

 

(961

)

Net assets acquired

 

$

5,128

 

Transcend Solution [Member]  
Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.

(in thousands)

 

 

 

Current assets (including cash of $52 and accounts receivable of $1,493)

 

$

2,614

 

Property and equipment

 

 

1,153

 

Intangible - finite life

 

 

8,930

 

Goodwill

 

 

10,839

 

Other assets

 

 

231

 

Total assets acquired

 

 

23,767

 

Current liabilities assumed

 

 

(1,203

)

Deferred tax liability

 

 

(168

)

Net assets acquired

 

$

22,396

 

XML 45 R37.htm IDEA: XBRL DOCUMENT v3.24.2
Business Segment Information (Tables)
6 Months Ended
Jun. 30, 2024
Segment Reporting [Abstract]  
Net Sales and Income from Operation by Business Segment

The financial segment information is as follows:

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Net sales (less intra-, inter-segment sales)

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

97,392

 

 

$

87,522

 

 

$

186,741

 

 

$

161,977

 

Industrial Process Solutions segment

 

 

40,130

 

 

 

41,659

 

 

 

77,113

 

 

 

79,767

 

Total net sales

 

$

137,522

 

 

$

129,181

 

 

$

263,854

 

 

$

241,744

 

 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Income from operations

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

19,330

 

 

$

14,089

 

 

$

35,607

 

 

$

23,894

 

Industrial Process Solutions segment

 

 

5,669

 

 

 

4,586

 

 

 

12,769

 

 

 

10,131

 

Corporate and Other(1)

 

 

(15,742

)

 

 

(10,072

)

 

 

(31,433

)

 

 

(19,961

)

Total income from operations

 

$

9,257

 

 

$

8,603

 

 

$

16,943

 

 

$

14,064

 

Includes corporate compensation, professional services, information technology, and other general and administrative corporate expenses.
Property and Equipment Additions, Depreciation and Amortization and Identifiable Assets

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Property and equipment additions

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

890

 

 

$

444

 

 

$

2,027

 

 

$

688

 

Industrial Process Solutions segment

 

 

429

 

 

 

312

 

 

 

1,035

 

 

 

1,711

 

Corporate and Other

 

 

2,804

 

 

 

1,406

 

 

 

4,171

 

 

 

1,520

 

Total property and equipment additions

 

$

4,123

 

 

$

2,162

 

 

$

7,233

 

 

$

3,919

 

 

 

 

Three months ended June 30,

 

 

Six months ended June 30,

 

(in thousands)

 

2024

 

 

2023

 

 

2024

 

 

2023

 

Depreciation and amortization

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

1,814

 

 

$

1,274

 

 

$

3,599

 

 

$

2,486

 

Industrial Process Solutions segment

 

 

1,131

 

 

 

949

 

 

 

2,250

 

 

 

2,107

 

Corporate and Other

 

 

516

 

 

 

542

 

 

 

1,124

 

 

 

1,057

 

Total depreciation and amortization

 

$

3,461

 

 

$

2,765

 

 

$

6,973

 

 

$

5,650

 

 

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Identifiable assets

 

 

 

 

 

 

Engineered Systems segment

 

$

427,732

 

 

$

432,098

 

Industrial Process Solutions segment

 

 

144,132

 

 

 

147,740

 

Corporate and Other(2)

 

 

26,269

 

 

 

20,453

 

Total identifiable assets

 

$

598,133

 

 

$

600,291

 

(2)
Corporate and Other assets consist primarily of cash and income tax related assets.
Goodwill

(in thousands)

 

June 30, 2024

 

 

December 31, 2023

 

Goodwill

 

 

 

 

 

 

Engineered Systems segment

 

$

142,058

 

 

$

142,229

 

Industrial Process Solutions segment

 

 

69,086

 

 

 

69,097

 

Total goodwill

 

$

211,144

 

 

$

211,326

 


Intra-Segment and Inter-Segment Revenues

The Company has multiple divisions that sell to each other within segments (intra-segment sales) and between segments (inter-segment sales), as follows:

 

 

Three months ended June 30, 2024

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

102,141

 

 

$

(4,553

)

 

$

(196

)

 

$

 

 

$

97,392

 

Industrial Process Solutions segment

 

 

44,673

 

 

 

(4,440

)

 

 

 

 

 

(103

)

 

 

40,130

 

Total net sales

 

$

146,814

 

 

$

(8,993

)

 

$

(196

)

 

$

(103

)

 

$

137,522

 

 

 

 

Three months ended June 30, 2023

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

95,880

 

 

$

(7,995

)

 

$

(363

)

 

$

 

 

$

87,522

 

Industrial Process Solutions segment

 

 

44,641

 

 

 

(2,806

)

 

 

 

 

 

(176

)

 

 

41,659

 

Total net sales

 

$

140,521

 

 

$

(10,801

)

 

$

(363

)

 

$

(176

)

 

$

129,181

 

 

 

 

Six months ended June 30, 2024

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

194,659

 

 

$

(7,635

)

 

$

(283

)

 

$

 

 

$

186,741

 

Industrial Process Solutions segment

 

 

84,252

 

 

 

(6,975

)

 

 

 

 

 

(164

)

 

 

77,113

 

Total net sales

 

$

278,911

 

 

$

(14,610

)

 

$

(283

)

 

$

(164

)

 

$

263,854

 

 

 

 

Six months ended June 30, 2023

 

 

 

 

 

 

 

 

 

Less Inter-Segment Sales

 

 

(in thousands)

 

Total
Sales

 

 

Intra-
Segment
Sales

 

 

Industrial Process Solutions

 

 

Engineered Systems

 

 

Net Sales to
Outside
Customers

 

Net sales

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Engineered Systems segment

 

$

171,970

 

 

$

(9,533

)

 

$

(460

)

 

$

 

 

$

161,977

 

Industrial Process Solutions segment

 

 

83,682

 

 

 

(3,641

)

 

 

 

 

 

(274

)

 

 

79,767

 

Total net sales

 

$

255,652

 

 

$

(13,174

)

 

$

(460

)

 

$

(274

)

 

$

241,744

 

XML 46 R38.htm IDEA: XBRL DOCUMENT v3.24.2
Accounts Receivable - Summary of Accounts Receivable (Detail) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Jan. 01, 2023
Accounts, Notes, Loans and Financing Receivable [Line Items]      
Accounts receivable $ 133,556 $ 119,193  
Provision for credit losses (6,582) (6,460)  
Total accounts receivable, net $ 126,974 $ 112,733 $ 83,100
XML 47 R39.htm IDEA: XBRL DOCUMENT v3.24.2
Accounts Receivable - Additional Information (Detail) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Dec. 31, 2023
Jan. 01, 2023
Receivables [Abstract]            
Amount billed but not received under retainage provisions in contracts $ 3,900   $ 3,900   $ 3,200  
Accounts receivable, net allowances 126,974   126,974   $ 112,733 $ 83,100
Provision for credit losses $ 700 $ (100) $ 300 $ 0    
XML 48 R40.htm IDEA: XBRL DOCUMENT v3.24.2
Contract Assets and Liabilities - Summary of Contract Assets and Liabilities (Details) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Jan. 01, 2023
Contract with Customer, Asset, after Allowance for Credit Loss, Current [Abstract]      
Costs and estimated earnings in excess of billings on uncompleted contracts $ 55,378 $ 66,574 $ 71,000
Billings in excess of costs and estimated earnings on uncompleted contracts $ 59,851 $ 56,899 $ 32,700
XML 49 R41.htm IDEA: XBRL DOCUMENT v3.24.2
Contract Assets and Liabilities (Additional Information) (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2024
Dec. 31, 2023
Jan. 01, 2023
Contract Assets and Liabilities [Line Items]      
Costs and estimated earnings in excess of billings on uncompleted contracts $ 55,378 $ 66,574 $ 71,000
Billings in excess of costs and estimated earnings on uncompleted contracts $ 59,851 56,899 32,700
Contract Liabilities Recognized As Revenue 70.00%    
Accrued Liabilities [Member]      
Contract Assets and Liabilities [Line Items]      
Accrued expenses $ 9,200 $ 7,900 $ 4,500
XML 50 R42.htm IDEA: XBRL DOCUMENT v3.24.2
Inventories - Summary of Inventories (Detail) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Inventory, Net [Abstract]    
Raw materials $ 27,869 $ 25,819
Work in process 11,732 9,710
Finished goods 2,905 2,368
Obsolescence allowance (4,031) (3,808)
Total inventories $ 38,475 $ 34,089
XML 51 R43.htm IDEA: XBRL DOCUMENT v3.24.2
Inventories - Additional Information (Detail) - USD ($)
$ in Millions
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Inventory Disclosure [Abstract]        
Amounts credited to the allowance for obsolete inventory $ 0.2 $ 0.4 $ 0.7 $ 0.6
XML 52 R44.htm IDEA: XBRL DOCUMENT v3.24.2
Goodwill and Intangible Assets - Goodwill / Tradename (Detail) - USD ($)
$ in Thousands
6 Months Ended 12 Months Ended
Jun. 30, 2024
Dec. 31, 2023
Goodwill and Intangible Assets Disclosure [Abstract]    
Goodwill, beginning balance $ 211,326 $ 183,197
Goodwill, Acquisitions 110 27,152
Goodwill, foreign currency translation (292) 977
Goodwill, ending balance 211,144 211,326
Tradename, beginning balance 9,570 9,508
Tradename, Acquisitions 0 0
Tradename, foreign currency translation (48) 62
Tradename, ending balance $ 9,522 $ 9,570
XML 53 R45.htm IDEA: XBRL DOCUMENT v3.24.2
Goodwill and Intangible Assets - Intangible Assets - Finite Life (Detail) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Finite-Lived Intangible Assets [Line Items]    
Cost $ 132,676 $ 132,999
Accumulated Amortization 86,590 82,538
Technology [Member]    
Finite-Lived Intangible Assets [Line Items]    
Cost 16,508 16,517
Accumulated Amortization 14,388 14,061
Customer Lists [Member]    
Finite-Lived Intangible Assets [Line Items]    
Cost 103,471 103,471
Accumulated Amortization 66,721 63,420
Tradename [Member]    
Finite-Lived Intangible Assets [Line Items]    
Cost 14,094 14,094
Accumulated Amortization 5,688 5,001
Foreign Currency Adjustments [Member]    
Finite-Lived Intangible Assets [Line Items]    
Cost (1,397) (1,083)
Accumulated Amortization $ (207) $ 56
XML 54 R46.htm IDEA: XBRL DOCUMENT v3.24.2
Goodwill and Intangible Assets - Finite Lived Intangible Assets Amortization Expense (Detail) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Goodwill and Intangible Assets Disclosure [Abstract]        
Intangible assets – finite life, net at beginning of period     $ 50,461 $ 35,251
Amortization expense $ (2,200) $ (1,700) (4,315) (3,430)
Acquisition     0 10,708
Foreign currency adjustments     (60) 370
Intangible assets – finite life, net at end of period $ 46,086 $ 42,899 $ 46,086 $ 42,899
XML 55 R47.htm IDEA: XBRL DOCUMENT v3.24.2
Goodwill and Intangible Assets - Additional Information (Detail) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Schedule Of Goodwill And Other Intangible Assets [Line Items]        
Amortization expense of finite life intangible assets $ 2,200 $ 1,700 $ 4,315 $ 3,430
Amortization expense of finite life intangibles for 2024 4,300   4,300  
Amortization expense of finite life intangibles for 2025 7,600   7,600  
Amortization expense of finite life intangibles for 2026 6,200   6,200  
Amortization expense of finite life intangibles for 2027 6,000   6,000  
Amortization expense of finite life intangibles for 2028 $ 5,600   $ 5,600  
XML 56 R48.htm IDEA: XBRL DOCUMENT v3.24.2
Accrued Expenses - Summary of Accrued Expenses (Detail) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Payables and Accruals [Abstract]    
Compensation and related benefits $ 8,854 $ 11,278
Accrued warranty 5,478 5,105
Contract liability 9,197 7,875
Short-term operating lease liability 3,950 4,278
Other 17,257 15,765
Total accrued expenses $ 44,736 $ 44,301
XML 57 R49.htm IDEA: XBRL DOCUMENT v3.24.2
Senior Debt - Summary of Debt (Detail) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Debt Instrument [Line Items]    
Total outstanding borrowings under the Credit Facility $ 130,826 $ 137,283
Less: current portion (10,580) (10,488)
Total debt, less current portion 120,246 126,795
Term Loan [Member]    
Debt Instrument [Line Items]    
Total outstanding borrowings under the Credit Facility 107,959 112,424
Revolving Credit Loan [Member]    
Debt Instrument [Line Items]    
Revolving credit facility 15,800 17,300
Senior Debt [Member]    
Debt Instrument [Line Items]    
Total outstanding borrowings under the Credit Facility 123,759 129,724
Line Of Credit [Member]    
Debt Instrument [Line Items]    
Outstanding borrowing under the joint venture term debt 8,123 8,855
Term Debt [Member]    
Debt Instrument [Line Items]    
Unamortized debt discount $ (1,056) $ (1,296)
XML 58 R50.htm IDEA: XBRL DOCUMENT v3.24.2
Senior Debt - Summary of Debt (Parenthetical) (Detail) - Term Loan [Member]
$ in Thousands
6 Months Ended
Jun. 30, 2024
USD ($)
Debt Instrument [Line Items]  
Frequency of periodic payment quarterly
Debt Instrument, Redemption, Through September 2025 [Member]  
Debt Instrument [Line Items]  
Outstanding borrowings, quarterly principal installments payable amount $ 2,232
Debt Instrument, Redemption, Through June 2023 [Member]  
Debt Instrument [Line Items]  
Outstanding borrowings, quarterly principal installments payable amount 550
Debt Instrument, Redemption, Thereafter [Member]  
Debt Instrument [Line Items]  
Outstanding borrowings, quarterly principal installments payable amount $ 2,977
XML 59 R51.htm IDEA: XBRL DOCUMENT v3.24.2
Senior Debt - Additional Information (Detail)
$ in Thousands, € in Millions
3 Months Ended 6 Months Ended
Jun. 30, 2024
USD ($)
Jun. 30, 2023
USD ($)
Jun. 30, 2024
USD ($)
Jun. 30, 2024
EUR (€)
Jun. 30, 2023
USD ($)
Dec. 31, 2023
USD ($)
Mar. 31, 2023
USD ($)
Mar. 07, 2022
USD ($)
Line Of Credit Facility [Line Items]                
Credit facility principal payments 2023 $ 5,300   $ 5,300          
Credit facility principal payments 2024 11,300   11,300          
Credit facility principal payments 2025 111,400   111,400          
Credit facility principal payments 2026 3,900   3,900          
Credit facility principal payments 2027 $ 0   $ 0          
Debt Instrument, Interest Rate, Effective Percentage 8.12%   8.12%     7.70%    
Weighted average interest rate on outstanding borrowings 7.88%   7.88%     8.29%    
Assets Current $ 281,370   $ 281,370     $ 281,437    
Liabilities $ 358,321   $ 358,321     $ 362,800    
Revenues | €       € 750        
EFM JV [Member]                
Line Of Credit Facility [Line Items]                
Weighted average interest rate on outstanding borrowings 8.52%   8.52%     8.70%    
Assets Current $ 16,700   $ 16,700     $ 14,500    
Assets, Noncurrent 26,100   26,100     26,700    
Liabilities 30,200   30,200     12,500    
Revenues 13,200 $ 9,900 23,900   $ 19,300      
Credit Agreement [Member]                
Line Of Credit Facility [Line Items]                
Unused credit availability under credit facility $ 111,000   $ 111,000     109,400    
Credit Agreement [Member] | EFM JV [Member]                
Line Of Credit Facility [Line Items]                
Secured Debt               $ 11,000
Subsidiary, Ownership Percentage, Parent               63.00%
Federal Funds Rate [Member]                
Line Of Credit Facility [Line Items]                
Debt instrument, basis spread on variable rate     0.50% 0.50%        
Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]                
Line Of Credit Facility [Line Items]                
Debt instrument, basis spread on variable rate     0.11% 0.11%        
Minimum [Member]                
Line Of Credit Facility [Line Items]                
Maximum consolidated leverage ratio 3.50%   3.50%          
Minimum [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]                
Line Of Credit Facility [Line Items]                
Maximum consolidated leverage ratio 1.75%   1.75%          
Minimum [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Credit Agreement [Member]                
Line Of Credit Facility [Line Items]                
Debt instrument, basis spread on variable rate     0.11% 0.11%        
Minimum [Member] | Base Rate [Member]                
Line Of Credit Facility [Line Items]                
Debt instrument, basis spread on variable rate     1.75% 1.75%        
Maximum [Member]                
Line Of Credit Facility [Line Items]                
Maximum consolidated leverage ratio 4.00%   4.00%          
Maximum [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]                
Line Of Credit Facility [Line Items]                
Maximum consolidated leverage ratio 0.25%   0.25%          
Maximum [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Credit Agreement [Member]                
Line Of Credit Facility [Line Items]                
Debt instrument, basis spread on variable rate     0.43% 0.43%        
Maximum [Member] | Base Rate [Member]                
Line Of Credit Facility [Line Items]                
Debt instrument, basis spread on variable rate     3.25% 3.25%        
Letters of Credit [Member]                
Line Of Credit Facility [Line Items]                
Aggregate principal amount outstanding under the credit facilities $ 13,200   $ 13,200     13,300    
Letters of Credit [Member] | EFM JV [Member]                
Line Of Credit Facility [Line Items]                
Aggregate principal amount outstanding under the credit facilities 8,100   8,100     8,900    
Bank Guarantees [Member]                
Line Of Credit Facility [Line Items]                
Bank guarantee issuance under bilateral lines and collateral             $ 80,000  
Bank guarantee agreement outstanding amount 48,300   48,300     45,800    
Bank Guarantees [Member] | Euro Denominated Bank Guarantee [Member]                
Line Of Credit Facility [Line Items]                
Bank guarantee agreement outstanding amount 1,900   1,900     1,300    
Netherlands Facility [Member] | Euro Denominated Bank Guarantee [Member]                
Line Of Credit Facility [Line Items]                
Bank guarantee agreement outstanding amount $ 2,800   $ 2,800     $ 2,300    
XML 60 R52.htm IDEA: XBRL DOCUMENT v3.24.2
Earnings per Share - Number of Shares Outstanding for Calculation of Earnings Per Share (Detail) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Earnings Per Share [Abstract]        
Net Income (Loss) $ 4,485 $ 3,724 $ 5,993 $ 5,701
Denominator        
Basic weighted-average shares outstanding 34,918,412 34,619,216 34,881,625 34,531,050
Common stock equivalents arising from stock options and restricted stock awards 1,385,000 525,000 1,357,000 641,000
Diluted weighted-average shares outstanding 36,302,664 35,143,782 36,239,331 35,171,727
XML 61 R53.htm IDEA: XBRL DOCUMENT v3.24.2
Earnings per Share - Additional Information (Detail) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Mar. 31, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
May 10, 2022
Earnings And Dividends Per Share [Abstract]            
Anti-dilutive options and restricted stock units outstanding 0   1,300,000 100,000 700,000  
Purchase of outstanding shares of common stock           $ 20,000
Repurchase of common stock (in shares) 86,000   0 230,000 0  
Repurchase of common stock $ 2,000 $ 3,001   $ 5,000    
XML 62 R54.htm IDEA: XBRL DOCUMENT v3.24.2
Share-Based Compensation - Additional Information (Detail) - USD ($)
$ in Millions
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Recognized share-based compensation awards $ 2.2 $ 1.2 $ 3.8 $ 2.0
Option exercised, intrinsic value 0.2 0.2    
Non-Employee Director [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Cash received from employee stock option exercised $ 0.2 $ 0.3 $ 0.3 $ 0.9
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period 10,000 25,000 20,000 77,000
Option exercised, intrinsic value $ 0.1 $ 0.1    
Restricted Stock Units [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Number of restricted stock awards granted 57,000 50,000 341,000 390,000
Number of Options, Granted 0 0 25,000 0
XML 63 R55.htm IDEA: XBRL DOCUMENT v3.24.2
Pension and Employee Benefit Plans - Components of Pension and Employee Benefit Expenses (Detail) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Pension Plan [Member]        
Defined Benefit Plan Disclosure [Line Items]        
Net periodic benefit cost $ 57 $ 107 $ 113 $ 214
Health Care Plan [Member]        
Defined Benefit Plan Disclosure [Line Items]        
Interest cost 304 318 608 637
Expected return on plan assets (304) (285) (608) (571)
Amortization of net actuarial loss $ 57 $ 74 $ 113 $ 148
XML 64 R56.htm IDEA: XBRL DOCUMENT v3.24.2
Pension and Employee Benefit Plans - Additional Information (Detail) - USD ($)
$ in Millions
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Dec. 31, 2023
Retirement Benefits [Abstract]          
Defined benefit plan contributions $ 0.2 $ 0.0 $ 0.2 $ 0.0  
Payment for Pension Benefits     0.9    
Unfunded liability plans $ 4.0   $ 4.0   $ 4.1
XML 65 R57.htm IDEA: XBRL DOCUMENT v3.24.2
Income Taxes - Additional Information (Detail)
$ in Thousands, € in Millions
3 Months Ended 6 Months Ended 12 Months Ended
Jun. 30, 2024
USD ($)
Jun. 30, 2023
USD ($)
Jun. 30, 2024
USD ($)
Jun. 30, 2024
EUR (€)
Jun. 30, 2023
USD ($)
Dec. 31, 2023
USD ($)
Income Taxes [Line Items]            
Liability for uncertain tax positions $ 200   $ 200     $ 200
Income tax expense 394 $ 984 $ 1,062   $ 993  
Tax indemnification received $ 500          
Effective income tax rate 7.40% 19.80% 13.10% 13.10% 13.30%  
Effective Income Tax Rate Reconciliation, Tax Settlement, Foreign, Percent     15.00% 15.00%    
Revenues | €       € 750    
Foreign Subsidiaries [Member]            
Income Taxes [Line Items]            
Deferred income taxes on undistributed earnings     $ 800     $ 700
Federal Authorities [Member]            
Income Taxes [Line Items]            
Open tax years     2018 2018    
State and Foreign Authorities [Member]            
Income Taxes [Line Items]            
Open tax years     2017 2017    
XML 66 R58.htm IDEA: XBRL DOCUMENT v3.24.2
Financial Instruments - Additional Information (Detail) - USD ($)
$ in Thousands
6 Months Ended 12 Months Ended
Jun. 30, 2024
Dec. 31, 2023
Fair Value Of Financial Instruments [Line Items]    
Cash and cash equivalents $ 36,523 $ 54,779
Cash held outside United States, principally in Netherlands, United Kingdom, China, and Canada 28,600 38,500
Credit Facility [Member]    
Fair Value Of Financial Instruments [Line Items]    
Fair value of debt issued $ 131,900 $ 138,600
XML 67 R59.htm IDEA: XBRL DOCUMENT v3.24.2
Commitments and Contingencies - Legal Matters - Additional Information (Detail)
6 Months Ended
Jun. 30, 2024
USD ($)
Case
Dec. 31, 2023
USD ($)
Other Commitments [Line Items]    
Cumulative settlement payments for cases involving asbestos-related claims $ 6,800,000  
Average cost per settled claim excluding legal fees $ 33,000  
Number of claims pending | Case 313  
Assessment regarding Loss contingency impact Description not aware of any pending claims or assessments, other than as described above, which may have a material adverse impact on its liquidity, financial position, results of operations, or cash flows.  
Accrued expenses $ 44,736,000 $ 44,301,000
Asbestos Issue [Member]    
Other Commitments [Line Items]    
Accrued expenses $ 200,000 $ 0
XML 68 R60.htm IDEA: XBRL DOCUMENT v3.24.2
Acquisitions - Additional Information (Detail)
$ in Thousands, € in Millions
3 Months Ended 6 Months Ended
Aug. 23, 2023
USD ($)
Mar. 31, 2023
USD ($)
Jun. 30, 2024
USD ($)
Jun. 30, 2023
USD ($)
Jun. 30, 2024
USD ($)
Jun. 30, 2024
EUR (€)
Jun. 30, 2023
USD ($)
Mar. 31, 2024
USD ($)
Dec. 31, 2023
USD ($)
Jan. 10, 2023
USD ($)
Business Acquisition Contingent Consideration [Line Items]                    
Earn out, Fair value               $ 2,700    
Assets Current     $ 281,370   $ 281,370       $ 281,437  
Liabilities     358,321   358,321       $ 362,800  
Revenues | €           € 750        
Pre tax loss     5,324 $ 4,974 8,084   $ 7,453      
Revolving Credit Facility [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Deferred cash consideration   $ 2,400                
Malvar Engineering Limited [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Acquisition of equity                   100.00%
Contingent consideration                   $ 4,100
Earn out, Fair value                   600
Accounts payable and accrued expenses                   600
Deferred cash consideration                   400
Net assets acquired                   $ 5,128
Malvar Engineering Limited [Member] | Customer Lists [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Acquired intangible assets     1,500   1,500          
Kemco Systems Co Llc [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Acquisition of equity 100.00%                  
Contingent consideration $ 24,000                  
Company Received Working Capital         400          
Purchase Price         23,600          
Installments Paid 1,700                  
additional consideration 4,000                  
Earn out, Fair value 2,200                  
Accounts payable and accrued expenses     1,100   1,100          
Net assets acquired $ 26,329                  
Kemco Systems Co Llc [Member] | Customer Lists [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Acquired intangible assets     $ 8,700   $ 8,700          
Intangible assets, Useful Life     10 years   10 years          
Kemco Systems Co Llc [Member] | Tradename [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Acquired intangible assets     $ 1,500   $ 1,500          
Intangible assets, Useful Life     10 years   10 years          
Kemco Systems Co Llc [Member] | Technology [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Acquired intangible assets     $ 1,400   $ 1,400          
Intangible assets, Useful Life     7 years   7 years          
Transcend Solution [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Acquisition of equity   100.00%                
Contingent consideration   $ 20,000                
Holdback Payble   400                
Notes Payable   2,000                
Installments Paid   1,000                
Deferred cash consideration   22,400                
Net assets acquired   $ 22,396                
Transcend Solution [Member] | Customer Lists [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Intangible assets, Useful Life     10 years   10 years          
Net assets acquired     $ 7,600   $ 7,600          
Transcend Solution [Member] | Tradename [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Intangible assets, Useful Life     10 years   10 years          
Net assets acquired     $ 700   $ 700          
Transcend Solution [Member] | Technology [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Intangible assets, Useful Life     7 years   7 years          
Net assets acquired     $ 600   $ 600          
General Rubber LLC [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Gain (Loss) on Sales of Loans, Net     137,522 $ 135,260 263,854   $ 257,455      
DS21 Co., Ltd. | Tradename [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Acquired intangible assets     $ 300   $ 300          
DS21 Co., Ltd. | Customer Lists and Tradename [Member]                    
Business Acquisition Contingent Consideration [Line Items]                    
Intangible assets, Useful Life     10 years   10 years          
XML 69 R61.htm IDEA: XBRL DOCUMENT v3.24.2
Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Detail) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Aug. 23, 2023
Mar. 31, 2023
Jan. 10, 2023
Dec. 31, 2022
Business Acquisition [Line Items]            
Right-of-use assets from operating leases $ 14,137 $ 16,256        
Goodwill $ 211,144 $ 211,326       $ 183,197
Kemco Systems Co Llc [Member]            
Business Acquisition [Line Items]            
Current assets     $ 8,902      
Property and equipment     341      
Right-of-use assets from operating leases     1,602      
Intangible - finite life     11,610      
Goodwill     11,115      
Other Assets     16      
Total assets acquired     33,586      
Current liabilities assumed     (6,853)      
Other liabilities Assumed     (404)      
Net assets acquired     $ 26,329      
Transcend Solution [Member]            
Business Acquisition [Line Items]            
Current assets       $ 2,614    
Property and equipment       1,153    
Intangible - finite life       8,930    
Goodwill       10,839    
Other Assets       231    
Total assets acquired       23,767    
Current liabilities assumed       (1,203)    
Deferred tax liability       (168)    
Net assets acquired       $ 22,396    
Malvar Engineering Limited [Member]            
Business Acquisition [Line Items]            
Current assets         $ 3,240  
Property and equipment         635  
Intangible - finite life         1,778  
Goodwill         5,296  
Total assets acquired         10,949  
Current liabilities assumed         (4,860)  
Deferred tax liability         (961)  
Net assets acquired         $ 5,128  
XML 70 R62.htm IDEA: XBRL DOCUMENT v3.24.2
Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Parenthetical) (Detail) - USD ($)
$ in Thousands
6 Months Ended
Aug. 23, 2023
Mar. 31, 2023
Jan. 10, 2023
Jun. 30, 2024
Jun. 30, 2023
Business Acquisition [Line Items]          
Accounts Receivable, Net Current Assets       $ 17,295 $ 39,181
Kemco Systems Co Llc [Member]          
Business Acquisition [Line Items]          
Accounts Receivable, Net Current Assets $ 2,328 $ 1,493      
Malvar Engineering Limited [Member]          
Business Acquisition [Line Items]          
Accounts Receivable, Net Current Assets     $ 2,467    
Transcend Solution [Member]          
Business Acquisition [Line Items]          
Cash, Current assets   $ 52      
XML 71 R63.htm IDEA: XBRL DOCUMENT v3.24.2
Acquisitions - Schedule of Unaudited Pro Forma Financial Information (Details) - General Rubber LLC [Member] - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Business Acquisition [Line Items]        
Net sales $ 137,522 $ 135,260 $ 263,854 $ 257,455
Net income attributable to CECO Environmental Corp. $ 4,485 $ 4,292 $ 5,993 $ 7,019
Earnings per share:        
Basic $ 0.13 $ 0.12 $ 0.17 $ 0.2
Diluted $ 0.12 $ 0.12 $ 0.17 $ 0.2
XML 72 R64.htm IDEA: XBRL DOCUMENT v3.24.2
Business Segment Information - Net Sales and Income from Operation by Business Segment (Detail) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Segment Reporting Information [Line Items]        
Net sales $ 137,522 $ 129,181 $ 263,854 $ 241,744
Income from operations 9,257 8,603 16,943 14,064
Engineered Systems Segment [Member]        
Segment Reporting Information [Line Items]        
Net sales 97,392 87,522 186,741 161,977
Income from operations 19,330 14,089 35,607 23,894
Industrial Process Solutions Segment [Member]        
Segment Reporting Information [Line Items]        
Net sales 40,130 41,659 77,113 79,767
Income from operations 5,669 4,586 12,769 10,131
Corporate and Other [Member]        
Segment Reporting Information [Line Items]        
Income from operations [1] $ (15,742) $ (10,072) $ (31,433) $ (19,961)
[1] Includes corporate compensation, professional services, information technology, and other general and administrative corporate expenses.
XML 73 R65.htm IDEA: XBRL DOCUMENT v3.24.2
Business Segment Information - Property and Equipment Additions, Depreciation and Amortization and Identifiable Assets (Detail) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Dec. 31, 2023
Segment Reporting Information [Line Items]          
Property and equipment additions $ 4,123 $ 2,162 $ 7,233 $ 3,919  
Depreciation and amortization 3,461 2,765 6,973 5,650  
Identifiable assets 598,133   598,133   $ 600,291
Engineered Systems Segment [Member]          
Segment Reporting Information [Line Items]          
Property and equipment additions 890 444 2,027 688  
Depreciation and amortization 1,814 1,274 3,599 2,486  
Identifiable assets 427,732   427,732   432,098
Industrial Process Solutions Segment [Member]          
Segment Reporting Information [Line Items]          
Property and equipment additions 429 312 1,035 1,711  
Depreciation and amortization 1,131 949 2,250 2,107  
Identifiable assets 144,132   144,132   147,740
Corporate and Other [Member]          
Segment Reporting Information [Line Items]          
Property and equipment additions 2,804 1,406 4,171 1,520  
Depreciation and amortization 516 $ 542 1,124 $ 1,057  
Identifiable assets [1] $ 26,269   $ 26,269   $ 20,453
[1] Corporate and Other assets consist primarily of cash and income tax related assets.
XML 74 R66.htm IDEA: XBRL DOCUMENT v3.24.2
Business Segment Information - Goodwill (Detail) - USD ($)
$ in Thousands
Jun. 30, 2024
Dec. 31, 2023
Dec. 31, 2022
Segment Reporting Information [Line Items]      
Goodwill $ 211,144 $ 211,326 $ 183,197
Engineered Systems Segment [Member]      
Segment Reporting Information [Line Items]      
Goodwill 142,058 142,229  
Industrial Process Solutions Segment [Member]      
Segment Reporting Information [Line Items]      
Goodwill $ 69,086 $ 69,097  
XML 75 R67.htm IDEA: XBRL DOCUMENT v3.24.2
Business Segment Information - Intra-Segment and Inter-Segment Revenues (Detail) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2024
Jun. 30, 2023
Jun. 30, 2024
Jun. 30, 2023
Segment Reporting Information [Line Items]        
Net sales $ 137,522 $ 129,181 $ 263,854 $ 241,744
Engineered Systems Segment [Member]        
Segment Reporting Information [Line Items]        
Net sales 97,392 87,522 186,741 161,977
Industrial Process Solutions Segment [Member]        
Segment Reporting Information [Line Items]        
Net sales 40,130 41,659 77,113 79,767
Operating Segments [Member]        
Segment Reporting Information [Line Items]        
Net sales 146,814 140,521 278,911 255,652
Operating Segments [Member] | Intra-Segment Sales [Member]        
Segment Reporting Information [Line Items]        
Net sales (8,993) (10,801) (14,610) (13,174)
Operating Segments [Member] | Engineered Systems Segment [Member]        
Segment Reporting Information [Line Items]        
Net sales 102,141 95,880 194,659 171,970
Operating Segments [Member] | Engineered Systems Segment [Member] | Intra-Segment Sales [Member]        
Segment Reporting Information [Line Items]        
Net sales (4,553) (7,995) (7,635) (9,533)
Operating Segments [Member] | Industrial Process Solutions Segment [Member]        
Segment Reporting Information [Line Items]        
Net sales 44,673 44,641 84,252 83,682
Operating Segments [Member] | Industrial Process Solutions Segment [Member] | Intra-Segment Sales [Member]        
Segment Reporting Information [Line Items]        
Net sales (4,440) (2,806) (6,975) (3,641)
Inter-Segment Elimination [Member] | Engineered Systems Segment [Member]        
Segment Reporting Information [Line Items]        
Net sales (103) (176) (164) (274)
Inter-Segment Elimination [Member] | Industrial Process Solutions Segment [Member]        
Segment Reporting Information [Line Items]        
Net sales $ (196) $ (363) $ (283) $ (460)
XML 76 R68.htm IDEA: XBRL DOCUMENT v3.24.2
Subsequent Events (Additional Information) (Details)
$ in Millions
Jul. 29, 2024
USD ($)
Subsequent Event [Member]  
Subsequent Event [Line Items]  
Purchase Price $ 17
EXCEL 77 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( #&!_E@'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 " Q@?Y8"U;]%NX K @ $0 &1O8U!R;W!S+V-O&ULS9)1 M2\,P$,>_BN2]O305Q=#U9<,G!<&!XEM(;EM8DX;DI-VW-ZU;A^@'\#%W__SN M=W"-#E+W$5]B'S"2Q70SNLXGJ<.*'8B"!$CZ@$ZE,B=\;N[ZZ!3E9]Q#4/JH M]@B"\SMP2,HH4C !B[ 06=L8+75$17T\XXU>\.$S=C/,:, .'7I*4)45L':: M&$YCU\ 5,,$(HTO?!30+<:[^B9T[P,[),=DE-0Q#.=1S+N]0P?OST^N\;F%] M(N4UYE_)2CH%7+'+Y+=ZO=D^LE9P<5OP^Z+F6\$E?Y""?TRN/_RNPJXW=F?_ ML?%%L&W@UUVT7U!+ P04 " Q@?Y8F5R<(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 #&!_EA:[2)TZ 4 -$? 8 >&PO=V]R:W-H965T&UL MM9EK<^(V&(7_BH9V.NW,$BR92[)-F"$.:6EW"1OH]C;](&P!GMB6*\L0_GTE M&VRR([^FGB4?@FU\#GJLV[%TN^/B)=DP)M%K&$3)76LC9?R^TTG<#0MIXDL6#4RT1AT"&6U>^$U(]:P]OLVDP,;WDJ S]B,X&2- RI MV-^S@._N6KAUO/#LKS=27^@,;V.Z9G,F?XMG0IUU"A?/#UF4^#Q"@JWN6B/\ MWK%M+GQT?TQ@U_^Y[3P@;NIJA6):.2A<21]N4>3 M*&\>^C&W4;*A@B6W':E^36LZ[L'Y/GP-;+> [4+N M93-9[&-F(H7EV&I_,B&!JH9(O0*I!Y9II'B\C.DQH&L3$ZQ?T2 Q/0H'E#6$ MZA=0_?/J:<:$SW6/]I :%XQ5!CL5O:VRNX'ZAIR#@G-P'N>CG[@T0'\R*M"C MNF@V]O6DH*IO2D-CWZLQTGAH//T\ M>7Z:?AQ/%Z,/R'EZGEV9D&&KILPG^0&?P^RHQBI40YVHR?X5_ZC;9Q9S(;-Q25)I M'FEK'/\T1F4'5C7E+*,.AK/*29VB:1HNC95Q7V-BM:V!=7-CQ+M$YL%EZ,%P M5CG@+>@KFGBJ(OV5[^:O+P L;(GM-NGU^U;?& U@<5/>,OQ@.+$<>$>>I]R3 M=\<#]$'=AYXB\W@$6^)NOX?15#7_C1K2@H F:$;%RXZ:NKX#FS7E+\,1AO,, MR+_8<2,_;#E/?(2KC,2A@..U_B.OJ,"[3@N\B("MOEU6ODO$1\ M(F5\(F?%IX)3#\),@\X$W_J1:VS7-9Z+/XPK!9?(3*3,3.2LS%2 SG@B5:;X MRX^1PSTS)NPXZ)&>>4WD$JF)E*F)U*2FC%,P6@T&&Q!LQKI$1B)E1B)PMOG MLY>R#8^@^;3&Q.X-VGU\;AFD3GDKLOJCMF"X'H*96J MM4;Z]F;_6(>J7=FAC+3$3.RD232#*1+R;K M+$^/8=#(!CM69#]8U;0NRW!$S@I'\U -^^@^3=37B3'9UOA4KG?!NJ9\91@B M9X6A<(NN0,NN0FG!RA/R44J%Z9K"'&&$O*5(SXB5BCEW&'/NLF#/?,-4A M@69:8U-9@["N*5X9;FPXBBQ\J=XR^0IA\OWR!S1G;BH4KY$0=GH[_<14H"T- M4H:^M:XLC&(F\KTIXS.X1.RQR]ACPZGE"(W&K^Z&1FM6N1!88S0=S1]&QJT3 M6-B4\&3SZZQ5HDGD7N^V?V1ZJDG00%;*:EU-5 SOLCWC_,3R>-L M"W;)I>1A=KAAU&-"WZ"^7W$NCR?Z!XI=_.%_4$L#!!0 ( #&!_E@^'N=4 MP0< $\A 8 >&PO=V]R:W-H965T&ULK5II<]LV$/TK M?)C-R1!R\$ELSC=PCG6GCB9/V,TQ!%B@CZ_E_779BN$0@]E4347LZU2N[>+19-M1D%G M\5GWP_DL7/ 1SPQNQDL7?^5IM+V;)#*W%AK>%^B3O?Q/[@$+M+Y-%T_V+[O>V MP0QE;:-DN5\,",J\ZO_G#_M$G"S S+& [!>0YRZ@^P6T"[1'UH5UR15?GM?R M'M7:&KSIBRXWW6J()J_T8[Q6-7R;PSJU7,EJ#0]%K!%<-;+(UUS!S7M>\"H3 MZ%H[;M"K+Q5OUSE\\QJ=H2_7E^C5B]?H!Z6T_'R!63AF IR3 7I_%%7*MJZ M%I5"O&D@YK>V>'H'S.Y [[BWS8YGXF(&6ZH1]9V8+5_^@*/@G2VZ[^1L%"L] MQDI]WI>9+DF-U(:N=Q">HDOQ!)MI$T4.9.$16>A%]E.6R182 M!KTL$Y"]FT+,405]EQ?0&O7F:9#";" *#1!RG9?=]A>\KO+JMM$;7#Q *%TL-WE1=)]"^VVK M3):[0G1/1E:JAGYL+9[( !V&-$XFH9E6412>)& 467R,+/9&]J&Z@Y*6=2Z: M[M'8X,5F]20L#B?P+%8L2!P5E!SA)5YX5[78\1R2_;#3';A_!E)M10V-_[05 MV7 G!B(2,#RM&-,*X]A5^>D1=_HLW+DN 8$4?Q!6B*F9-(*GF36-$N)X[#@8 M."WP(OPL%2^>D<2]FU$6$TSC8 +2;L=H[ !Z0K[XB52"'JO5XQSM@&]5OPNA M&>] *"EGS>Z=CC(;D-1 ;9J1B#A!#S2)OF=R<"8WA2DT7R.?IET40+=S%>S 8CA]EMPO<@[")E>@$JR:'WO9 M\%M%__?R-IYP!F8D?F8\!+V3=3=%@ZI;BQMK/R$FZ>$@3*8L8S5C26)_/&2@ M1N*GQJ.^WO%'+:ZM$$V&2X/4:-@6LP14D*."R,F\Z"="@%BW8A!P5H@FD3$6 MTVE7MIK1P 5QX#OBY[OW!\D^$O*93_)_B[@G)A7")@ZG+<9F%B6I0X>2@3") MGS#_E$KX"\0D.Z-^31,2NMH?&>B0/$6' Y=X$=IF/SQE/JL5<2@Y,C ?\3/? M6">?-$(K4@O[!3$US@&L=A0'#GE$!@XD?@[\V-'=4RA--@,-EQK[S6)&(N;@ M:3*P'O&SWB4TTSG(7]AGV;C56L%:YC-]%F:@M=E%<1HZX X<2/RCG$7Z'!/\ MZ%2:Q!S:TI2E4]"6T2ZA#EZ@ X-1/X-]' \93]4#->DIC8+IN&&Q N&/'1N, M#B1&_236;["G(%K&N3 QA9K-+B*)JU?1@<>HG\=6LBQSI4?.GA1TRX<$BRH# MQ.C5M1!(=UJ$V6LK_O]QD(ELVN@[.!IGX.0TE'JUX#6H:K&5Q5K433>VQ.^Z M.5P]6B4A]9+NMTK"[^5M'/M HM1/HE?UH0DT2F9?Y^C%FP #9=7HCA>M>(=P M, ^" #4Z1U @K=K*.O]7K*$_R$J@O&E !%G3]#3[>DW& 0W42_W4J\L91(PS MFBX<5TB4S5-"YS$LTEL!;A,:SDE*#\9]N/W\U:H&AMZU;D94LP1N-B)[M55\6C-F[(*VAV>@WH7?"C=JD_#,QVQ'5T3@=I0/W2 MH*>NU<^KCWWE[[OCC_N^:,5L,CZA84"-\K79@?IRO,A@@S9@?FWPIZS.NGE% M=E,/5+(2L.&L(H:9E,_B>"IF;5:):ZNQ01>PY^B"Y^:560YR:9H84X+5+F:N M09<- H'Y!8(A8[KN]FSXQ'PS:#OIL=A93WH6)V^[]9\:_,'KV[QJ0 ]N8&'P M)H8$U/W;^_Y&R5WW OQ&*B7+[G(K.,#6!O#]1H*ZV=_H=^K'OZ%8_@=02P,$ M% @ ,8'^6"]Y2,,@ P _PD !@ !X;"]W;W)K<"SUV,F-6%ZZKDPQRJCMR M!0)'%E+EU&!7+5V]4D#3TBGG;N!YD9M3)IQX5+Z;JG@D"\.9@*DBNLASJGY= M 9>;L>,[CR]NV3(S]H4;CU9T"3,P=ZNIPIY;JZ0L!Z&9%$3!8NQ<^A<3W[,. MI<57!AN]TR8VE+F4][;S,1T[GB4"#HFQ$A0?:Y@ YU8).7YN19WZF]9QM_VH M?E,&C\',J8:)Y-]8:K*Q,W!("@M:<',K-Q]@&U#/ZB62Z_*?;+:VGD.20AN9 M;YV1(&>B>M*';2)V'/SN'H=@ZQ & T3MHPSHW"4H9^))U*D6!1(";:TY"RE!CM7E%.1 )E984U.[P0M4H8C M9^1T2A4(DX%A">5GY!VYFUV3TY,S$WCD)O*#;XCXY['X-";K[I7O8='7R:)+ 1. @4)L#6=]03!RU[MQM1AU(Z\V:O!V:][N0=XI[@.@%$YB7#S)_3E94476 ME!?0AEEI]7<(O([G/\%\P:B!V:LQ>Z_#U!FN*TUH83*IV&](VW KS=X.B>_A M[PGO2U8-X*@&COX)F&E=M,-&SS">@AZR:$#V:\C^07_OA,XZP.PS"_K,,MQD.PEXP M#-MY?>_OR>8=0SQK$.--1AL\GIA8MAY0WK'.O0/4=[[X#U!+ P04 M " Q@?Y8("O@;XP& #\'0 & 'AL+W=OYH82&RU38&]8-/M/A1]D&W:%E82O225 MI/WZ4I=(-CEBLJU?;%W.#'DX',ZA>/G ^%>QHU2BQR(OQ=5D)^7^8CH5JQTM M4G'.]K14;S:,%ZE4MWP[%7M.TW5C5.13XCC!M$BSRS@I:BHR5 MB-/-U>0:7R0DJ T:Q!\9?1 'UZBFLF3L:WUSN[Z:.'6/:$Y7LG:1JK][.J=Y M7GM2_?C6.9WT;=:&A]=/WG]NR"LRRU30.7G#T@7J.5M_JB&?W&6HU75M83Y4YR M]393=G(V9^5:A9VND;H2+,_6J50W=U+]J?D@!6(;=%NN6$'1Z\]E6JTS]?X- M.D.?[Q;H]:LWZ!7*2O3[CE4B+=?B$/ W)#;$Z_*TJSY'KO$7$(1[0G_G+S5V(SO]K/?G/ MK1\-AMO/#[?QYX[XZT+?SP?TY_522*[R^R\HU*TS#W96+WH78I^NZ-5$K6J" M\GLZF?WX PZZ^JATAS"J9::QHTIG6- MN)]A-_0)N9S>'XXL ",QCO Q;&'"2.!&OG<,2P"8AT-O@!WQ]'N>OI7GG E9 M+SZC7%MS_Z#9*/)"7Z,*H&(WT"@L3!0.XD!WED"PT'%'F 8]T\#*]!?.A$![ MSC:9A(@&1JM>['BA1M1$N7&$-=3"1,4J5K'&TT2%7H@=F&;8TPRM-.^4&LC* M+5)E J5K5B&I=0*BC_NZ"(%A#DU>@1?H8391)/)\?4*;J%#EAY8=B8GR M_6!L.D<]^\C*_KI@7&;_I*T\4D- 4UXJY6;E'IFLR$$86NH0*'0UYB;(\[ > M=@#DD)&HQSWOV,Y[]:W*1-;3SDI)M[P=!AOUV.Q+&&C,38SK:L%=B-@8]SY.^R&'FH @OU(8_R\G^09/\>, M#Z0DMC+^1%5"5RM9\3K-K52Q&5WLZ61-D*-3-2&^49ZL?HZIDH$JL<]JL51D MF4"YBNOV^=GE!:V2ZT/MT%]HU:N^I! M>(M*"M;ISMMA-\X"O;;. 10F>J&"7!$?',0%OK&O 9@:IT.=;X0;'SE&@08MBNP;G8OZ89QVH49R?1Q M))E->>2[Q& .R;90%YX *G(B8PF#!-EHG =!ANV*[+8G:HTTH,!B@ZT)BG4: M"P"$G<"8U("K>(SK(+^P77_5VZ8VL"!'0/K$KE%^390;Q\9<-E&AHV_!$@"E M9.W8.CVH+6R76^]9>;9BI>2L%=M9E\H@:5/WG'F>494 %-$EU )"88?H"A." MA7X,LR:#UB)VK34$%Z52\FQ9R729JYG-T#R9?T!)>9]Q5M8?,-(6>5G=^==Z?TMCBIM^14WHXC-@A98A>RXWEG"DG7BW'DF?,20@9*BF.]!(+( M*,*!L4$#D;Z+'7^D_I-!R1*[DK7E(?"%,' =5RY8:1_70%]$C=V M7:QS!GV&."3ZVC,].,TJ*-\VQXA"I5A5RO;@HG_:'U5>-P=TVO,;?#''P/,% MODC:@\C!?7LN^B[EVZQ4NWJZ44TYYZ'J+F^/&ML;R?;-6=J22&PO=V]R:W-H965T&ULK59;;YLP%/XK%JNF5FH+X=ID"5)S MF=9)W:IFW1ZF/3C@!#2P,]LD[;_?L2$T(22JMKR ;<[W^5P^X]-?,_Y;)(1( M])QG5 R,1,IESS1%E) ;]@_ZM@AEAD69,2R'VDLDX%Q8Z"8S'&1R4>V M_D2J>#S%%[%,Z"=:5[:6@:)"2)978/ @3VGYQL]5'K8 P-,.L"N W02X!P!. M!7#>NH-; =RW[N!5 !VZ6<:N$S?&$H=]SM:(*VM@4P.=?8V&?*54Z60J.7Q- M 2?#$:,Q5)W$"$:"96F,)4RF$EX@!RD0F\.G'$28*'6L"+JC$(\>Z1+9ENRW^C-X.=]K"^;_=)_^\ M^TXRG%HMCN9S#O#5LCBHBI^W,R$Y'/]?;;4OV=UV=O5+[(DECLC &)!^(H8 MX?MW'=_ZT);X4Y*-3TDV.1'93HG$+W;P).&<%E>4%4:_6_>&M;HL:Z\-.;]1I61]#/UFV?Z_T93-ZC_DBI0)E M9 Y;6= _,;V[F5@BT72:U&,[Z8M.7] 2?=)8 M$B\DY7.^?2F=+ C :B7(SQO[=+=\EL0N2."W('3W7#XO?E]5S>_*SM[N4 M]W7]K[DW]_(_J<$'Q3F]6K]K]O][SP=8? M>+-MV]7KP\']&:R7FY?_R\^'AC@Y( C/'" .!PCC "'.'! >#@B- Z)SIQ0= M#HA,#\F9 ^+# ;'IX=P!R>& Q#@@/'?1Z>& =!^LE];=AV9:=N7#75,_>\W. MNE?;_;"/[_[H/B++S2X5WW9-_]=E?USW,*DW\SZQJKG7_]36J^6\[/H/;[O^ MOS[CNM:K/WAO%V53+>K5O&K:OWGY']ME]Z?W[6^;4/OM[=3[]MO MOO.^\98;[]VBWK;E9M[>C;K^''>>1K/#^;QZ.1]QYGS>U5VY(@Z;\(=-ZO6Z M3^RW73W[Z/WWEVK]OFK^1\A,+\B43\O>_^X:\L^SJMU?_>NR\7XO5]N*$\YY MX9]FL^UZN]JW[;_J7I>1*JZ7^G>WJ)H^?$,>?$WD5TQL6KZG&YV>S47Y6K$+P25-R^:R5YS=X/]]"""<1"-[T:?3O/$-@NC2+>9$E*Q'Z2& M66Z;#8-,9(;'@C)+LRS1S:1M%F5"N=1:,CRV9.C6DM^_]-7VJA9EM7?/P!_; MIW)6W0_Z[&JKYE,U>/CK7X+$_SO5/U_$8JW=P[$P6A[I,D>*%4@Q"1+35M%^LN18@523(+$ MM#Q(CWF0LGGPIA\$->2 M,D;\<_;474.&%),@,2UDXV/(QK>'C.N^K*QK]QW;CRP1&D%&.LR18@523(+$ MM&3(CLF0L6LR]?G#TU,^6RCT,JG&ZQ3UZ'2%0YS MI,,"*29!8EIT U]Q#)^-[[NFW+2KEY ^EOT$_MM5/Q'^CB00OM7.:6),UR:\ M.]?(0M5RJ%IQ37-(E$L]NB>4*N!'89NYP0M^*9OC[#8DHQS84QTA G-*.CG8 MZ<3 N/PI)1;[66J.H0F[89"&PC>F*+2="'VSV6V[. IB>OX1* 3\ 1&;\Y3 M:'"Y65EEUX?C04W'!G&%+@")2N DF!#7](-G>P MX^$<)4;1.<*.Q'.D'<'G"+OS@"Y0-";@<W+FWV3"#@G10ISE4K8"J M292:GAN* P4\".)174! FRCQS3Z%)"U3J%H.52N@:A*EIH=>4:6 QTHNP]7$ MNFMF?FRF 1*T3*%J.52M@*I)E)J>!@HJ!3Q5.M0M7_!$4SUMF]FBGZ)ZY6;> M?^R6S;X(R[&*P 9$UBT"272F4+4H,0HO$#8D7B!MK/Q F%W'B\(16L$3VO8.<_EEF7% M77N;L D*11B@3G.H6@%5DR@U/3=.UO[PZ(F?\PB"!V69.:#A7;@.:*!J.74% MJ8C,#@J%1H1/<4)P]4@I%B1X%N2T3$$0ZW^"U(P;CXH&B5X&N6\PD'8@&HH M4NMF;:].&IJ+'&@E:_0#Q4E0-8E2TV.G<)+@<=+-2QUX7>?^;*]5"D(3+T-= MYE"U JHF46IZ4BBX)'BX=,.2!V'3I" ;_.S_%K?.90GP543:+4]#@K M4"1X4'0ASFSWARYU$@0QLM;>0]E9H7B7X'F70X5!V$0J"*U. M#UWJ!%7+H6K%-K 53PMYGO;U5:+0IF#F.)T_!^>80WD: M5*V JDF4FIX;BJ>%+DNYKBIGA,3[;U25B+"SJT0AP9ZH*A%A1U:)2#NB2D38 MG:\2A2&HF6AXSHN<_T6 MG1,$X K3R,SFR<%.[VI6K"E:%F6QU=5LNV$2CE.SIQ%F02+,A7:2L(O&)R>G M-ZC"32&/FZY>&$3$*;/_7-'YHH$NHTAZH54#6)4M-S0^&LD,=9?)$H MM"F3\+/0[%+0%5%0M9RX@B V7_4HH#XEX3,>GRGUAHHQA3QC'2-2YSJ,L"JB91:GI\%5L*+RQ"NJ5(Q&LZWYR)-^A\\\X,I4I0M0*J)E%J M>CXHJA3R5,FY2!3:,&4H^J>ZV>LS>TYBQIA6,M\+X"_ .7C0E4XH-7UC" 6- M(AX:W5PEXG5=.W1D4Y(@,\=:4)W-^,X4ZS:%J M!51-HM3TQ%"<*^(YUVWEOLA&5&2Y+[)IEUWNH\2H90M0*J)E%J>FXH!!7S"(HO]\4V^4E] M_"=3("5"JA50 M-8E2T_- <:B8YU"W3UYC>U.I86S-.">\?^>\@((IJ%H!59,H-3TO%,&*>8+U M];/AF%J"Y1,) J594+4>K%KW\E9VZQS;%$F(WM;=5M M.WL^'-O JY\/Q^8^73EA-PPS\[UPRBI(HM3F(H]Q1F)H:A3S%.GBWNDT#EQ)7B*KP%/ ME!@%G@@["CQ19A1X(NS.@Z=8@:>8!T]7;Y%"-RR4/<77L2>HTQRJ5D#5)$I- MSPW%GF*>/5V8#A-\)C-W]IGP+IQ',]"W]:@KB,:QV4&A*Z](GV=6OR8*:B4\ MU'):_9H0RYX2DPSR#EWC=HW+'.JR@*I)E)H>7P6FD@O;CM_TY2_0_:L28MV3 MN?H5ZC&'JA50-8E2T_-!T:J$IU7.JU\3@EE%B;EY:V*_:&?6U6DALQ3 G[YS MZ*" ":6FATX!IH0'3#>O?>5UG;NSO6HHL[[-"0J7H&H%5$VBU/2<4' IX>'2 M#4M?$X(F!59]C_?K_!2_QF<.]5E U21*38^S8D0)SX@TB43SV^)U_1=^%UP1N7.2;$TJ;06O;&.W<.-O:[^K!?UH?] MMKX+K:L'6Z&H!+%E.AEN&S,-A5T(H,RLX1A%CS)S'Y6^7),J_)1>P$^WEVMX9==934HM MJ+++-5"G.52M@*I)E-I+8HS:155UT[(K'^Z>RL?JE[)Y7&Y:;U5]Z.7]']*^ MX9OEX^+XH:N?[@?!P'M?=UV]WO^XJ,IYU>P,^K]_J.ONRX=1K_]<-Q_W/A[^ M#U!+ P04 " Q@?Y8PO!+D,<( #:)@ & 'AL+W=OY>M\!=@TVW?'!]^+QW6M'TP6UUOVR.]Y_6-[)^%N MTO>2%QM>J4)42/+5S>@3OEK2F6[06/R[X$_JZ!KIH3P(\5/??,MO1I%6Q$N> MU;H+!O_V?,G+4O<$.O[H.AWUWZD;'E\?>O_:#!X&\\ 47XKR/T5>KV]&LQ'* M^8KMROJ[>/H[[P:4Z/XR4:KF+WKJ;*,1RG:J%INN,2C8%%7[GSUWCCAJ /VX M&Y"N 1DVH)X&<=<@;@;:*FN&]9G5;'$MQ1.2VAIZTQ>-;YK6,)JBTM-X7TOX MM(!V]6(IJAPFA><(KI0HBYS5<'-?PS^8K5HAL4)+IM;H*\RX0A<_*K;+"["Y M1&/TX_XSNOCE$OV"B@K]:RUVBE6YNI[4H$SW/\DZ%;>M"N)1D:+?1%6O%?H" M:O+3]A,843\LI9O;QX'Y,2]E^.FO]CG9>W M5>/ E10;!+M0LKJH'MME7-0%5UW>HM?J2W+^,T(]K#BP_04.^+WR$B%54F-MPUS+9MVK35@6>_F$:$7$_VQ_)M MHY2F46]T(BOI927!B?F4_Q?V6+O0:P%Q*1-55I0<5;U>_5S?97H.MU+L"UBB MZ.$%7>STMBFJR[=/9_*>T_E.G9WX+>W]E@:G\S.'3K."M:&XRA';"%D7?S8/ M7"-ONTN.)V\^C0*9X6FO=!I4^J,"NI7%GS!5 #V(ZA6$52EYE;V@ M1\ ]Z'E0]*_:E[ 8%(/= \R G0*[HGYI M5@?_8U=L]2A<6&$S2@6#;9CISZ\61(5_TRAI^J%%>J$SLP+VO+>"NLQ.? MT:%?'49X1CQ"CQ"-@T+OUTSRL4Y6<@01"3(XU6X\_JROG1&UZ_)823RCTZ%> MVPK/TZE',#&"25#P+RYAP3IW6M??B7-32ZQM-":>K88- MF7$0>XMOU1[6I9 OJ(N20:_&=DA(YT.=ME&28(].PT\0K!9Z>SHVW)ZR8J5;6$ MW,>=^MN,Q%&*K=AIF\T3'Y6P82D.P_2POSVLQ#8*QPE.AIAWF='(ZWH#31RF MYIWD6U;D?:#4DR#T3N^2E+K;44[I-A3'&..4#K4[[&8QGKNU$\-/\AH_5QPT MPNP#GW0D,.+]HHE-R#'%PWCELHHCSUH@!J0D#-)^0V[9BV\W$@<2XRD>!GF' M69K,J4>A(2<)DQ,4RAWOUX/;A38'<9(.,R:'U9BD,/'#6.&P(FD4)9[!&"7/O]_-/R\Y1V+R;SJP# MF,-JG&*?GPT3R?2LBDT!&%%O.>*3(&O/S6#>J[=3+QAXDC \/QWE:^<=ZH@# MF%,2#T_\+C/(:7QL,EPE8:[V2[!-O6#E76C.7NH:P$D6ZM1N Y-:*;7#:$PH MIIX &QNLQF&L]M*[#>-<>LY:H0.:Z0P/-XS+C,P@(?,(-W2-\5E;9E54K,K> M4N0,4OOL*N<[]7;J!4/P^)6SKY#0YL ]R?>BW&L?9) I%;IT4WEFSW$$QM-H M2#Z'69K$D>G8!O+D/#/A_1VF>$T\>UNP^\XS.^[(R^W&X2CDC/5I<]F MSQP0_^(=S@/7ZM]GO(^R%^ MYE6XQJSC%O":^Q@]@D2JP5 MXS";)9[:5&S 'H P\SG7$#<.$_=.BHSSO NA M'')F\<(Y4K7(?J+M3L)9"XZ)VY*U97?^S&56J*;BVMJ(K=_Q-FPIMA:-;83A M>.$9EP%R_ J01=7D_:(Y/0#38),"U73]M9;%P\XOVGG*C8;%$9=9,O?D$=3 MF(9AO!2;C2YJ-ZZ%LWHW <[?L!Q<32(K$#K,/(N&&O+2\+FV3QE,DGV<>KM M[!R!?:;5,2\=^MIA1^9T[BG(4X-.&D;GE]6*9TV=$ Z6374106SA*.LJC3 1 M>I0?VK'J]'//RB:8ZJV@EY,LLN:$"9\[!^@X$\<1'9[M'6884T]^1 UB:1BQ M>I8N<@Y$A15TJ7]=;*YTBO=_#LO!5CQ+XF$AR&'GK_;3HU]VPP1>OED\8C5Z MX(]%I>L"S7F"RT+DSC'9_$T22H?1RF%&TV3F*010@VD:QO1Y8^*Z\!4N9>UZ^LU[]1J8CN3*1S M6$U3JQHV.7I+:,/E8_/RE$)-2;1]LZ9_VK^@]:EY+6GP_!9?+=O7K$PW[5M? MOS$)NUM!1KN"+J./4_"7;%^D:F]JL6W>17H0=2TVS>6:,\@AM0%\OA*B/MSH M+^A?9UO\#U!+ P04 " Q@?Y8VWB_*H(" "[!P & 'AL+W=O9"[W#'DM$2F*2<(0&+L7/N MC6:A\;<.ORBLY=8:F4CN.+\WF\ML[+CF0E! J@P#T;\53*$H#)&^QI^6T^DD M#7![O6&_L+'K6.Z(A"DO?M-,Y6/GU$$9+$A=J&N^_@IM/ /#E_)"VB]:-[Z# M@8/26BI>MF!]@Y*RYD\>VCQL ;Q= +\%^,\!X0Y T *"URJ$+2!\K<*@!=C0 M<1.[35Q"%(DCP==(&&_-9A8V^Q:M\T69J9,;)?0IU3@5S\DC6DDT!V%KCJ6 M$BK3@LM: /J,;F\2='APA X09>AGSFM)6"8CK+2V8Y+-WHGLR9N$W9N$^]CC'WI(7+*4EX .OW,IC_K>H:$86@HS$E9Q&)X. M(KS:SN]+I^#$5-VV4_+2:7!V%CQUFO4XG;A>Y]3$B;>Z40EB:<> 1"FOF6I* MLK-VD^;<-MAG]HDWFGH]]D1/IF:0_*-OQMH5$4O*)"I@H:7KB",@SY?<*XV&R/0S>OX+U!+ P04 " Q@?Y8$,+L M0$0" "*!@ & 'AL+W=O(%5@@8 M9-H2L+GMX0X8LR"C\;MC>OV6-O%T?*1_=;6;6G98P9U@ORC19>)]\!"!'#=, M;\7A&W3U3"TO$TRY*SJTL=%'#V6-TJ+JDHU!17E[QR_=.9PD&,[YA+!+")UW MNY&S_(PU3F,I#DC::$.S U>JRS9RE-N7\JBE>4I-GD[7YG@)2/0D,:&\0$LI M,2_ '+M6L:_-#C;.SSK:JJ6%%V@1>A!OUPJ/>*AP$WC=\ MA*+@!H5!.!G@17VYD>-%%WCGRKQ!NU>TYH3N*6DP.U=U"YV;AL&:!SLIK?C4VVT)*+6_Q]RJSL,S#%3 M," V[<6F@YSO@M]>(3<,?4MNULO-KCJU)Y#F*\(7W(:9;[G->[?YU0CGG_2'"F3ANJ!"F6BX;EM%O]HWVF7;7_Z&MUWZ &ULK5?; M;ALW$/T58@L$*>#JZEP0VP)DQ6G3(H@1-^U#T0=J=Z1ELDMN2*YE]^M[9KA: M*8FL%D%>;"XYUS-GAM3YQOF/H22*ZJZN;+C(RAB;%\-AR$NJ=1BXABQ.5L[7 M.N+3KX>A\:0+4:JKX60T>CJLM;'9[%SVKOWLW+6Q,I:NO0IM76M_?TF5VUQD MXVR[\RM%*8F&XRSRM/J(IN/7UR>LKP(_&%H M$_;6BC-9.O>1/UX7%]F( Z**\L@6-/[=TH*JB@TAC$^=S:QWR8K[ZZWU5Y([ M[*LA?M>ED1YG*VQ!=W2DC M@MK8]%_?=3C\'X5)IS"1N),CB?*ECGIV[MU&>9:&-5Y(JJ*-X(SEHMQ$CU,# MO3B[U,$$Y5;J'37.1V/7"I56"V>#JTRA(Q7JE;':YD97ZB9B R6)X7P8X9UM M#//.TV7R-'G TU/UQME8!G5E"RH^UQ\BZC[TR3;TR\E1@[^V=J"FHQ,U&4U. MC]B;]E!,Q=[T 7MO_5I;\X]FMISL(2#DL86Z]A20>MH 8H=@47_-ER%Z<.WO M0PBE $X/!\#]]R(T.J>+K&%?_I:RV:,?QD]'9T?2.^W3.SUF_;M6^KBG\4!] MJS/U>TGHU-S5C;;WK-9:W1:&Y7,'XMB05CLSJ]Y,V)F!Y\75XBVX=FN\L[P) M@87SS4!J:2 3VF4PA='>4%"/(QP_^N'Y9#(Z6R3O)_(Y/NNW8?#+O0U]N=.& M?@<)=YNN]=WFCZK4MZ261%:AR(WV2*%I?6BUC2HZQ7'XMD)('*>G=5L)XR0G M/KRAO/4FFD[BZBXOM5T3DJMK$V18[B=S<[78NAZH!?F(0:V,3>-\2^V5<]&Z M2*HP(:]<:$$_95FDJNXAG5A:+PVCWB1@KQ?,%9 B3+);RW5IA0.-AR32< MVYHL>3&.,NH9_G\^L#8.[8 =A=;6+\"E@7 M'H!VH%XGYZXQMNON6EM<2IS?B1Q]'U*RI8Y>K"#% Q*%Q\PZT7L1"R9() Y M"XB@EVJ!F%%[SP>?*5C**03=]$T+IA4=0D'(Y3Z$2JH M"/THX$X3 5S^/F&$L'0HU0JW>,(OE"AYZ:J"?.!ZC)^=*?K4FG@OKC E$%_"?KTDKZ9C\3P%*T,B);"!*UCSKDXL MVM'F/\BRWW1[K.F0#FIN;0N--%_!$\6/%#4>_?1;'SN'W2'S=8P(<64J'$F7 MRF"Y6K"=-]KGI7K2@;@_2GH/NX'"F*3N[Z_%![+AE'GH,#_$)?-CL MVHTK4>N/J 5:H)8IP,76 >_&)E$AEAK@KU8H55=#!@&YZ)IGC50%\A23:F7T MTE2[D;D;N?K\/Q=$NV[0)@EF%F!%6TTLP[ M)1F3((TK!FJ>QU9Z/A$48[3BV)&VWQ**)UH/DU0C'(GMLQ'&XQYW8"E6E^Q? M%UV9/K0V/9E[:FQI>S3M9!$K3RCAE_SMR3/ B,<,!BHLNC&(N.M**DYD&'9- M%L0_J^NE#&U/R9AK WQB(M$=WQT,6)I&6\ 'AYY+P[U',JZ4M?P4$%AM3._E M?K?_M3%/C^R=>/JI@A99&_"PHA541X-G3S+ET_,_?437R)-[Z2(>\+(L@2]Y M%L YW[?;#W;0_P:;_0M02P,$% @ ,8'^6 $5O%BE P 9 D !D !X M;"]W;W)K&ULU5;;;MLX$/V5@0H4*>!:LNQ<-K4- MV$Z#9H$&09SL/BSV@19'$E&*5$DJ3OY^AZ*LN+N.46#W95\D7F;.G)G#VW2K MS3=;(CIXKJ2RLZATKKZ,8YN56#$[U#4JFLFUJ9BCKBEB6QMDO'6J9)PFR5E< M,:&B^;0=NS/SJ6Z<% KO#-BFJIAY6:+4VUDTBG8#]Z(HG1^(Y].:%;A&]UC? M&>K%/0H7%2HKM *#^2Q:C"Z7$V_?&OPF<&OWVN SV6C]S7=N^"Q*/"&4F#F/ MP.CWA"N4T@,1C>\=9M2']([[[1WZ=9L[Y;)A%E=:_BZX*V?1100<<]9(=Z^W M7[#+Y]3C95K:]@O;8'N:1I UUNFJ;C%F_\!MY>KJN2J0(M,,7ALS':P$H;$]:-A3\6 M&^L,+9\_#U4A!)D<#N*WU*6M68:SB/:,1?.$T?S]N]%9\NE("I,^AS@-&^S];A1<(478 MH/&>XP&X$@_3>858:OK!B;>,KA?K9?0!A+4-P1TT?ZPY:463MB/&5:F9KJ M( 4+!YOB>R$H7LT$'\(#F5-J5 / /,?V] ,ZQ2$/BKP@,Y:*7@BE?&58[JC: M?=E'IV&G!:"5KFJF7CQ8UM#64(Z8XA.3#6O+ZKD),LE1\^MHVV[JM/A M)B64C)C0I'L%?O_N(AV=?R)TVG%:"B\-)Z8[P0G A5(-_>*X]3+\;7&0XKW> ME';0\WP :RR\(]QCK4U+MA,UO3@D:C!C&XF]YU%Q;6?T$\K^4U(K"B5RD3$" MV 'A,UVXA/Q?*4CU"2N$)D4%-7TU_S\*?^C C/=NO@I-T=[O'HRV>[@$^]'^ M";$(-^>K>7A_?&6&*F)!8DZNR?#\- (3[O30<;IN[]&-=G0KM\V2GD%HO '- MYUJ[7<<'Z!]6\[\ 4$L#!!0 ( #&!_EA(']K!]P, %H) 9 >&PO M=V]R:W-H965TSIL5;:39*E]\UEEKERR;5P/=.PQI>YL;7PF-I%YAK+HHI.M#R^MA6!\7_"EYX_;&%)3,C/D:)K]5DZ0?"+'BT@<$ M@;\UW[!2 0@TOG68R6[+X+@_WJ+_$K5#RTPXOC'J+UGYY20Y3ZCBN5@I?V\V MOW*GYS3@E4:Y^$N;=FU>)%2NG#=UYPP&M=3MOWCLXK#G<-Y_PR'O'/+(N]TH MLKP57DS'UFS(AM5 "X,H-7J#G-3A4!Z\Q5<)/S^]*DNSTM[1/9)QY M (?/6=F!7+<@^1L@(_IBM%\Z^EE77+WTST!HQRK?LKK.WP7\O-(]*OHIY?U\ M^ Y>L5-91+SB#;QG<8[^OIHY;Y$-_QP2VN(,#^.$"KETC2AYDJ $'-LU)],? M?QB,^C^]PW*X8SE\#_VC9_$^2-&C SC/-OML$X[,G!!KWL6:A*[H%DOJ&5LJ M!M%:4&E0AGI M*(P&%^G@HCBZLV8M8^FC\U!IN9*>E'$.1WA,H_3T/*>3.!J.^G1R]+OQ0J'( M7Z&GI-'; )R/THNS8=PB3\^*XE!,VL5M8(+.&2^DUM"Y-316@LX3"TL-8URE MA/EGH5=H:=2)3&G#-L@Z+WH#5*U2T-&C:Z&$+L%_!@MB.5MYTL93(R0F3UVY MLW6T0AU9T/+HJFB-V+4+AB-$&Z<1$]BA5_AE##_3C8&/=H#%R!DE*Q'.J]N3 M'D*'<"3JH!AV;T@T@'V4Z&RLGD"VZ%ULN<8T");\V?+19$G!VS4XR;K++'YL6I6=WI@N5W5+KMT^'MEQ4+'F0&IN37W2 MI>3;E;+!L7VB?N_LYPS1 ^6R-P3% ^:5EIKIMYAR:^8$3?WW(:9_7MK+N'PU5[7SXO;U\= M7Q!;B;)2/(Y,7X["1OLGE/3 M_P!02P,$% @ ,8'^6*._WY.! P L@@ !D !X;"]W;W)K&ULK5;?C^(V$'[?OV*4VUY;"24AX>#^^HX=".PN2]6J+V"/9SY_W]B>R6BC]*-9(UK8%D*:<;"V MMKR)(I.ML6 F5"5*6EDJ73!+4[V*3*F1Y3ZH$%$2Q[VH8%P&DY&WW>O)2%56 M<(GW&DQ5%$SO9BC49ART@X/A,U^MK3-$DU')5OB ]K?R7M,L:E!R7J T7$G0 MN!P'T_;-K./\OOG;0LF,&Y$G_PW*['P2" ')>L$O:SVOR">SU=AY]D6=YQRR;C+3:@';> MA.8&7JJ/)G)0.P!Y\(X-MI^'8NH?^7$[H,V GA'S"/Z^RX+D[6F0&U!#H9;$[& M^]QAAL4"-:1M;TTA4_1^C<7"AK+Z4$2*#(M"$V0^.)$4_AK?3L*YFIHA3HO+.]+ /7T.VVTOZ M!KU>J]OO7,T.,<^0LDM[OHG>';8&W39T>ZW!<$@Y/FA?X(I+%WLPE)HK#3M" MA!)IG+> YA^9K*A PEYXZS*+?ZG$&S"FE3.Z^-^?345-XO:>7XW*UDOP; MJ64NI\7P+11U)497B5\\K_!<98I.^DB!>N6[I6-625NWE,;:-.1I MW8>.[G4W_\0TW74# I<4&H?];@"Z[I#UQ*K2=Z6%LM3C_'!-'Q6HG0.M+Y6R MAXG;H/E,F?P-4$L#!!0 ( #&!_EAN3.SP$@, . & 9 >&PO=V]R M:W-H965TDQAL+M&M;81^N4)G](LJB1\>MW#3..Y+E?"LV^!G=7]L;RZND9ZEE MBYJDT6!QO8@NLXNKD3\?#OPM<4]'-OA*5L9\]XOW]2)*?4*HL'*>0?#K#M^B M4IZ(T_CGP!GU(3WPV'YD?Q=JYUI6@O"M45]D[9I%5$90XUKLE+LU^S_P4,_8 M\U5&47C"OCM;Y!%4.W*F/8 Y@U;J[BWN#WTX I3I#P#Y 9"'O+M (K#_-;-X(I08T)R>U_RB?G>5=R3BW?*_O4#MC)=(\<4SHW4EU %]UX/P' MX E\--HU!+_K&NOG^(03Z;/)'[.YRD\2?MCI(11I#'F:CT[P%7UU1> K?E+= M UQ+JI2AG47X>KDB9_DZ?'NMXHYP]#JA'Y$+VHH*%Q'/ *&]PVCYZR_9)/WM M1+JC/MW1*?:??8S3X/$0CO#/;$%@UL#-Q;ZY('0-UUAANT(+11:\!52&QXT< MUA[@&H2U43RW4F\N!F^D9I?9$4/I_#]T+Z@&MV+/%]6AE4(1G$$^C.L-C.*TR.".K$&11E/)J.O<'GRQE< MMF:G'4%EL9:^<&="X4_,K'Q@0E"'/=E#:"+OI,)4AYYM&0OF.!]9NYPS2 M8'X?T346$=INHM!/U"N?S+Y?07@&@Q80;#ULV4F3 $FZL]MY+(II=Q>#P7Z@)=KF M5")=DK+C_?5[+BG+CSANIT 02Q3O\YQ[>:6;C3:?[%((QY[J2MG;_M*YU?5P M:(NEJ+D=Z)50>#+7IN8.MV8QM"LC>.F%ZFJ8QG$^K+E4_;L;O_;>W-WHQE52 MB?>&V::NN=D^B$IO;OM)?[?PFUPL'2T,[VY6?"$^"/>OU7N#NV&GI92U4%9J MQ8R8W_;OD^N'$>WW&_XMQ<8>7#.*9*;U)[IY5][V8W)(5*)PI('C9RT>1561 M(KCQN=79[TR2X.'U3ON//G;$,N-6/.KJ/[)TR]O^M,]*,>=-Y7[3FW^(-IXQ MZ2MT9?U_M@E[QUF?%8UUNFZ%X4$M5?CE3VT>#@2F\0L":2N0>K^#(>_E6^[X MW8W1&V9H-[31A0_52\,YJ0B4#\[@J8258/?6 M"F=OA@XV:.>P:/4]!'WI"_IR]JM6;FG9WU0IRF/Y(7SK'$QW#CZD%Q7^U*@! MR^*(I7$ZNJ OZP+.O+[LFP)F;Z4M*FT;(]@?]S/K#&CSWW-I"%9&YZU0*5W; M%2_$;1^U8H59B_[=#]\E>?SF0@RC+H;1)>W? -IE??F ?2$M^\=41=)M&?H! MZ^D@I!N+*3M:_;ALHG?+ZCN=8X/V4?#2Z%X+?;17%KJ/?"*JT(P[MA,+*12 M4BV8GK.5,%*7['N6)DF4I3FNKJ+Q),9O,LVBY&H25N)I[[[XW$@KJ?]8EB0Q M^^&[:9JD;U@ZB9)QNKOMH<&@?2@4O#%"%5L&WBE;<=^X7K'T*F6O\3N:XN=J M,F%Y>N@=8G_F5S(:!2_2](RG;QM#P1 PM3UBJLM M>F^A#:6W%IPJ SW9[:SQ\D\T*5JQV >/LGT5=:/9A:YVH+70/ M(O;++X_L5=\_Z+^.B (ERJ\!Y4H&"OQ3.\&2<03%%DV6/,8J5_A?X "R@BPM M6N &[$>I) 0J.1?8T3&8!P9#.9QX3L[G;"P EK04" 1\BCPO8?ZZ=RS_G&XG MS'W4R.U]433U@-W7VKC!F:7>1U$LE:[T8DL4RHDY=#&*LNFT74DF827.D]ZC M/Q5@M8*7H%6<1:-)PO(\FJ3)_A8_:=SKZ&R]^-6(C:,<:KN;.$Z>T^\0U5<, MW &GB8!I''Z3*)YFN!KGO8_:\>I,OCVUDS?@UQX5A)"E43XA(DX1U57<+EU= M7=%2&HVSZ44IX"\G^ATL439BW0&I4>9S*8="L[;-W2"/$U MZ/H6L1)^PJNV4:MR-,A.C&2#T3,C7TF@8Q.#X^CU6@1E2CPY)& =#CSKC9S/ MAV72^JP5; KEL>TG!_D-2SG83D^69[L MDC1^IF@Z8!\/NG^!WTHX+ 7VFK:.4 %K7T'PIU@B,$J!.G&FPHL0H[!;;V'V MT,\#PB$?LN!$87[>LQ4F#1C!0=;%$Q)5\RT59K ERN B/)"UGW2.@RYX531^ M!-KE[\6M^^R?YH V=,8O#,++[$;PCSM3R>9TWEMC9=7FJ& [(KN<)A1SD3! M:6*@TD5X3;T*IPF]U8)X+1-:[J^,_C.\.=L(A2&+)>/(G&UFM$R47W/C%1MI M/P6E#4K".#0K)P6D,*9534FQMS(A_5B=2R)[H%@%SN@- M>H,A]*+N;:*@(0I)*/@*<%?'#:N4I0=5EH3I'/6M:*"6BX7P4V];U>5^!@[G M##CUA;/ DV.CFZK<-:$PC<);6;_0[.!EUS-]:9X^^^-X\L8>P<-GN@'E M&T K^'>;N'9)=]KQ9> MHB$U?D!'/J4+1YD]]E_M@@HCAI_/E-C@0?C81/UE!MK3\,K77%8N4_O,RTP\#N+YXN_\#4$L#!!0 ( #&!_EC497&)R0( !H& 9 >&PO=V]R M:W-H965T[$EBN?P4#3I\4;I6],@6KAOA323 MH+%V=1I%IFJP9>98K5#2R4+IEEG:ZF5D5AI9[4&MB-(X'D8MXS*8CKUMIJ=C MM;:"2YQI,.NV9?KA'(7:3((DV!FN^;*QSA!-QRNVQ!NT7U&EPF9C/0EB)P@%5M8Q,'K=X04*X8A( MQJ\M9]"'=,#]]8[]O<^=U;2;!*( :%VPM[+7:?,!M/H7CJY0P M_@F;SC?+ JC6QJIV"R8%+9?=F]UO[V$/,(J? :1;0.IU=X&\RG?,LNE8JPUH MYTUL;N%3]6@2QZ4KRHW5=,H)9Z=G5:776,/E/979H!E'EEC=651M&RQOIO?$1J>DGI3M)Y>I#PTUH>0Q:'D,9I?H OZU/,/%_V#-^, M/;"Y0 -,UN#S9<+ C[.YL9H^BI]/I=PQYD\SND8Y-2M6X22@3C"H[S"8OGR1 M#..W!_3FO=[\$/M_E>0@P]/ZRF-XS-P;<&=@!M0"J +85\!?VSNLL)VCABSQ MU@PJ18UI+($)8!N$A1+4X5PN3P>ON"236AN"FM>/Z/ZA&ERHUH5G79M2-(V" M.>8Y2EQP:^ (1N&HR.F=)&%:C@8[X1NF-9/V 8HP+T?T3.*"^*2O+ C.YEQP M.CX)DY,2RG!4%H.;1FG[QJ)N@6:;IK!R"0*IM?< 67A2Q)#[8)\I/0U)&:9% M"4D1EL-B\$59)FBF/+J_(\CSL,R&W2*+$WCJ@XCV^K5%O?13R="5KJ7M6K>W M]H/OK.OW/^[=U+QB>LFE(?T+@L;'91& [B91M[%JY;M_KBS-$K]L:'BC=@YT MOE#*[C8N0/\[F/X&4$L#!!0 ( #&!_EC;MG3I8PH $,> 9 >&PO M=V]R:W-H965T M<9RXVTZRS=AI=W9V]@(B(0D-2# :,=]^OT.0%*D+#M.,[VQ*1#G_^\#^.)6 MFX]V(X1CGW-5V)>#C7/E\]'(IAN1OA-*W+P?C0;-P)=<;1PNCLQOIK3?;_A=BEO;>69DR5+KC_3C MY^SE(":%A!*I(PX<_V[$A5"*&$&-3S7/02N2"+O/#?=+;SML67(K+K3ZM\S< MYN5@,6"96/%*N2M]^T]1VS,C?JE6UO]EMV%O,A^PM+).YS4Q-,AE$?[SS[4? M.@2+^ &"I"9(O-Y!D-?R-7?\[(71M\S0;G"C!V^JIX9RLJ"@7#N#MQ)T[NQ: M%%(;]EHLW8N1 T-:'J4U\:M G#Q ?,+>Z<)M+'M39"+KTX^@2*M-TFCS*GF4 MX2]5,623.&))G$P?X3=IK9MX?I,'^)%9[+6TJ=*V,H+]]WQIG4$F_&^?L8'7 M=#\OJH[GMN2I>#E ^EMA;L3@[(?OQB?QCX]H.FTUG3[&_4MQ>)1XOVJ+(>LP M#7^X97K%X&71>IGQ(L/+5.1+8=AD[%VPYG<_)/C2T%>2@^MP&9:YXD0J658)5I2X./@B3,Z5Y 9)Q M/(].9Z?T-$ZB:3(]N!(W6MV0>6FP9M58,YY%BSAFXWDTB>.##QIJ,_V8.\C3 MNRX9)Y-H#H'CY#2:0]RC_B0&?VA9.'8#]U#..](]H^@O(K#"W\5L=O!;P7-M MG/P3KO8O,U2)KD!WR,91/#MA1_XI.<73XYJ/$?M%"FN?HW<9 M PU825+0?L$LCF:+./"-H^EBT3(F!2*F0'>/#%Y.XBB9GOBGDVA^.F/7F$Q9 MI:#Y-B=*?A?RX6$_4L0?<@W'+Z31<((>JQ0)QKSS7(R@T48\D6F4X9&/?&1UZA/X71]0H*=E?E\Z?6JQ<^&2:MD)#>6-KJ M"4Y*.-CLF=:I>HO,[P8V@L&V%'Y6JKLA"P&JBLK"W34-O^%2\:57,2+E?;. MB[BKY;39P93,I?/K-NK&1NLK9;'==%)87WL[ID:,4L:'5/S]*1V'_,ARQ,[^I]AZ3R8"^XXBMCA\HB]1B'H'8UBVI;0 R M*/L*6>9M[&]OE[>[,6;X$@'=PA)X@J-9<&HU03W%09ZA6!%EP5%O*:=4XZ:A M\L6 ;,>9HC)P6U_JUG-FK^B^E)"Z7@PO2R53OZ?E]UX8J;-]H>-K!)NB@E1> M5HZ6"\T$C<8PB=T&W543#"*/WC&?'2P/@/^>!1_ \M8?@2""UR% 8JU- MJ+3B(2!![70^!"YXYODOALDI/?ZEYDGZB-4J+.QH0'(6PW%2RYD/Y_%?EO-; M.]*HLSW4/:-NWE(PC?A423_I-"-\X3B-46'\?\0)K5BBEZ4:\>" -31F4U5Y MCQ$K3T.O4A]_WJ^!?^$PWZ^#IQ0OI6&P9"--UB9K@#V3O@G".]2'5L-1[(T2 M-UYTD%:G'5Q%XQ0Z4Y70L57FZ.Q?TA42I\-XB^A[8<$<"T!].\I@1"8PY/VL M\)T1QX$P!DEGU%X3%C]]]H=H^#5@J^L*RB:/@=#II0^(AR0T7XU0WL9M0(F? M]E.,TM'(D)YMF!]&KT/VBX>NO]?0U1_G?BW8.V[@AC#CDYYB_\"Q?+72GX\O ME?CLM#E^Q\$[0I#3X0X./AR\N7S'?OE]@%Y V*GV;\3[UIY;T!.(\KAMR=./E*Z>3'@.OKMBJ/@,\J &F=,[\/HS*;QY*98&!7K' MDA#[>6>(R 9;^1[M <\#J"I$ )F2;K1,6Q0T'DU&)VP7!&PA%4$/P)20YVRE M-*+1H*@)YO>SOC+>VL:TAX:D?Q_Z=K];/ZTOUTU]EK3#PS?UW5!\98W7&?JW ME#@%&U&&Z'W)O#ULIQR8"ZW5U[!DDCW68/)+^7U^@2U%\I?<%G[PW":?_BPA! K$2_K*(] M.C4O*KPL;YXATCKAT"AM5=(E M6!B>*;>;:,_U#=R!\V6V;K//RTZU:H0_4NX_-^CA/J;A>8C-7BC+ZXO@/>IX MP_MND=96[<5"55*R8Y;&W5E.IT&2](#+"-^U%T,U)/S+1G\5")@N.DD5\FPZ M&RZZ>=:WUG[A/JU.0$L3(8":^XG5"/[A[$UE]#&ZI\XQ M*'RF]6.WQ7$;H7P>AX^#&ZWA\^K[_QE$N"%6($T!DH;,!,^688?3I?^ M,^%2.Z=S_[@1=&2@#7B_TMHU/TA ^]WX[/]02P,$% @ ,8'^6&3D44@I M!0 ;@X !D !X;"]W;W)K&ULS5=;;]LV%'[W MKSCPBJT%5%D7VW&RQ$ N+;8!;8.DVQZ&/= 2;1&A2)6D[+B_?N=0LJ*TB9L4 M&["'1+R=[WSG:O)XH\V-+3AW<%M*94^&A7/5T6ADLX*7S(:ZX@IWEMJ4S.'4 MK$:V,ISE7JB4HR2*IJ.2"36<'_NU2S,_UK630O%+ [8N2V:V9USJSV- M@2Q9:'U#DU_SDV%$A+CDF2,$AI\U/^=2$A#2^-1B#CN5)-@?[]#?>MO1E@6S M_%S+/T7NBI/A; @Y7[):NBN]^86W]DP(+]/2^O^P:C2+/\H(Y-C\V>@.&3B,:#;RI7AK)"45!N78&=P7* MN?D;9I10*PL5-W!=,,./1PYQ:7>4M1AG#4;R",84WFGE"@MO5,[S^_(CY-.1 M2G:DSI*]@+_5*H0T"B")DO$>O+0S,O5XZ;>,O-P9"7^=+JPSF!-_/V1O S=^ M&([JY,A6+.,G0RP$R\V:#^<__A!/HY_WD!UW9,?[T)\8D?T8AR%\#0,?"PZ9 M+JO:,:H()OU,*ZZ Z\#V(]"/8!< CD"L,YE$W@.04> M,&R\"YO'P4$*),4L"DKL /9H\/%QR<%+H1!9UQ:E[:L&B$ &[^N2&^90^4MB M\!2JKP;OL:D)A48B >>,6*#E"XG<-9R_.?^ ^;H61BOL,0Z=<:Y-%<(+& ?C MV02_:7"0C <77&FL.U(]./-:-[[2>?Z:K9'2BC?:T(.ULPXI(0M(Q\%A/*// M-#X-D1%UAF9UVRR#3.Y MA3A(D>$DF0PN6NN?Q&D:I%$*Z22(Q^-_-QFLN/VN5+A^3.Y_D0B3X/ P]=^# M*/[^1)C-$OI,TOB_2(3) 4S'\7,3(4D/?2(<)/!AGYY:"62'KI,UA<<'Y5[> M4*KL21#ZRYC,:LGH1.V-].T#;Q"V-MM63\DQV'D(;Y_;70+XS(WVTSA,\1=2 M2F05D"45][_XI&CJ]I4VO(G=Y(0VM*X]KRN. )D!=ZVD#J\8UN(F_@D@6>%ARNFMC]9 M.--8"*3E0A@T51OT>HVY9,1G8MDZR]SA54:O#"O1]!R5;PJ1%7U(O%MMH3M< M5^3C%Z@YC+I<0&44P;[).R\LR5]W%8Y9K.M5 :>5$7*78I/0]]X=R\:UZ(B2 M0/M,4'./=ZNB#0M=RI&JN>$NZ-2P+,/;KO&5]J7=&."%])P,RVEV56/_BZ/% MY'7LU\B,2C+,6E\G#2+R7B.BSD+]R ^O=Z(0T?NF6.>F\ _(5<^9>.13MJY9KG0+?:/:9.FS?$ MW?'F)?:.F97 V$J^1%%L>Y,AF.9UTTR76KO= MA!1T3\SY/U!+ P04 " Q@?Y87W P7N0# F# &0 'AL+W=O0 MMA^J?ECL :_.WG5VUP?DUW=V;7QPO/1"HWZ!]7CFF6=F9X9AM)+J06>(!M9% M+O38RXPIKWU?)QD63'=EB8+>+*0JF*%'M?1UJ9"ESJC(_2@(KOR"<>%-1DYV MKR8C69F<"[Q7H*NB8&ISB[EW/:OO%/[@N-([9["1S*5\L \?TK$76$*88V(L J.O1[S# M/+= 1.-+@^FU+JWA[GF+_M[%3K',F<8[F?_)4Y.-O:$'*2Y8E9M/7*C.FLAQ82]E9A2]Y61G)K.,*7Q[2W&E<"<+NFO-;+I&OB%T MJ^,G#=)MC12=0+J"CU*83,//(L5TW]XG5BVU:$OM-CH+^&LENA ''8B"J'<& M+VY#C1U>_()0[]F&*LO 5"DFENC.?TWGVB@JD[^/!5]C]XYCV]:YUB5+<.Q1 M;VA4C^A-WKP*KX*;,\Q[+?/>.?1ONJ2S2,=YAD$73KF SQDZ 1,;:J%$5L)H MH&$ VEG,G46R:\&%4U0I$PE2.9L,IK4A%TN8&292IE)-J"E?\*0V^N'-JV$4 M!3?3V9T[A3<_PF=9\@0&X; #S=L]9E86AC>$*).'/=*=!@)6&4\RFAU?*D[1 M@MF)Q4B2)W(I^%?\:#(-G*TNY @4Q7R@J,0UPPKN"1Y16"7#A)K;E] MOZ02,Y R@]V];+;N4W@-43>B]LYS-ZF$E80[$L(]F6Z%.4&G+>VT4C;/UK/) M%"(4=5NB;4N@IL*VJ9PG.L0=0M$EN@F9;SH-@[@[?,8IZ@;_E9/FZV]GM)\X MEU";_[)4=( @<0#]P1T(PBB=65;L:J02GXOU>"=IW'_?"UG_\ M[J4$+LS&![J0-.6NUO>J^GAJHGY+[2LJV9"1I;6_A X\Y_/;<\P5*FS)7))P M=^.$X8#VHPF#-IHFL*U77*-*N+[0Y?,[MOU?#Q"SW[5("K8;@H.>#;IQ*Z$Q MF#"=': J60 692XW2"/)VJ4TG!(CE:[+G LJ&MIZDJ>A&ULG5;;;N,V$'W/5PRT MP2(!4EF2G<2;V ;B;(JFP&Z#>-L^%'V@I;%-A"*])!7'_?K.4)?8NTEZ>=&% MG#ESYDJ.-L8^N!6BAZ=2:3>.5MZO+WH]EZ^P%"XV:]2TLS"V%)Y^[;+GUA9% M$91*U28UW%EQ5EL)NIZC,9ARE4;MP+YP)W-C'OCG MMAA'"1-"A;EG!$&O1[Q&I1B(:'QM,*/.)"ON?K?H/P;?R9>Y<'AMU.^R\*MQ M-(R@P(6HE+\WFY^P\>>4\7*C7'C"II;MGT:05\Z;LE$F!J74]5L\-7'841@F MKRADC4(6>->& LN/PHO)R)H-6)8F-/X(K@9M(BU*TO.3NR:^0A=P M4ZZ5V2+"%#4NI(<[);0;]3S98>E>WF!.:\SL%1 MS%J2T^Q-P)\K'4,_.8$LR09OX/4[I_L!K_\*WCUZ:9%*R[>N.OCC:NZ\I2+Y M\R6':[S!RWC<.!=N+7(<1]09#NTC1I/W[]*SY/(-MH..[> M]/^9HK>6.WW 9DH(!YH[UNH->$ C0Y M($?K:4) I7D9&VLN#A:"E'2PJ+A>0'*OYL860N=([>!7X$F*=Z5>TB3X6C79 M66EW\)5[ED\_7 ^B/<<"REC,$8B'?*SQ=;(OEAI M"IEWSN7&^4"+B+Y_-\RRY/(74K5PA$_L.!Z3"VS[A/6#1'H)Y+8/1LE'DBGX MRQDE"^'I9^;IU;E44X]WO0DQ:O Y5CR)"@9]%*H2/. <,^4IS7G8U@I4SI6P M$BEI7:SFN)1: MIW!\<%4:Z^5?(:YM'32QI$ IXQP)POD TK0/Z6!X\/G50CEDR4-(D_ D\4/( MTL%> 9:B",&L^RFDTAO@H?1=7[$/Q.<0DCBCXT I)EA0@5,Z.0,^A)T[VKT6 MY#J6,7PVW]C<4%QK+F3=MWWYW\'[,="!&32H>*GK"^H-(LUV3YHFJ!W'D*7@ M;2D>OHU!X^<'WN;F_ZX0ZV*M=#,WE!1SJ;C5VZ+MHC6(DRY:S)]7TN>58&L_ M/BSU$7,LYT2^G]:.P0EYY)@SW234]H0;D5I=5/G/P-4$L#!!0 M ( #&!_EB-[LO#8@< '$2 9 >&PO=V]R:W-H965TY%UM6,WOLS83M(T,YUXZK1]Z/0!)"$1"0@P &A9 M_?J>79 TY5O<%UN"L+MGSU[)DXWS7T*I5!2WE;'A=%3&6+^>3D->JDJ&B:N5 MQ2\KYRL9\=6OIZ'V2A8L5)GI8C9[-:VDMJ.S$SZ[\F7Q;=IK*72E;-#."J]6IZ/S^>N+ M?;K/%_[4:A,&GP5YDCGWA;[\6IR.9@1(&95'TB#Q[T9=*F-($6!\;76.>I,D M./S<:7_'OL.73 9UZAH) JUDHV)O[O->]7ZY M'(F\"=%5K3 05-JF__*VY6$@<#1[0F#1"BP8=S+$*-_(*,].O-L(3[>AC3ZP MJRP-<-I24*ZCQZ\:/"']2OSF;"R# M>&L+5>S*3X&DA[/HX%PLGE7XH;$3L9R-Q6*VV']&W[)W;\GZEM]T3[S1(3 M[_YSVK\9CF>E'\NV: M(%:J4%Z:L0A11B6D+81QN33B<^-U*#275Y@PR5LE/22\JQ#!^9% U]A(7T M M-0A!O83.A+J52&;)A9EMQ;MD0L@FEL[KJ-6C^@Z?U">-$4&OK5[I7-HH@NBQ MXF>4IKVG>\"!S'/7V!A846-SY2/I)C9J%S1[)^K&AX8T1R?.KR_%)U?K7!SN M(U5__.YHL9@=#SF>\-G\6)P'X58"6:WZK&90;U2NJDQYL9SSZ7(L(B 9+3-M M=-P^BR6Z*(TJA*QK[VXU6I,R6_&]F$T6:!'&X-)8;$J=ET)S<$V#ZJ20ME _ MPI;OC8&0#BZB$9D9E+,-D,&GX(PN8*(0%])(0!+7U&WND>A5[D#_O\@F\.D; MMA<5LC#B-\/RH.XIEX@3Q%(:0C,6>H63[9@@#W)3W=:$"ATREOI9I-<4?8R. MR/2GR$S$96L:1_$..OD^/SP.P%9HM 6=-:0"B6>U7;,"U_@^C4*3!5UHU :Y MBF9B701T# @+>X:8T/8&;JMB(JXU\=6)]BI+>8/<-#1$MR)3BK5^QIPBBOZP MNG=AIS2!G&M PBZL!,R=SA4^IWJY;&(B\X/+@CC/XWCH*H?$%I1!4%!+.$M5 MTN+;*Y4I1"Y#22:L0DT6#X/L(8ZII[SG$/?H9$S4R%]72*Z=1_'J18W[MW"@#Q(7/[ M]P#,)[/^A!H(F8RE5TI4:4PK&M./D)/XV(70EI/E M -*S:I;?("C<\XS0OS 0HM#0ZM-@)0V[3:>=^#SPF^C\ENWM](*?P@ 84X-1 M(_D$>C#2NS[O>-;T#;*UK- 7J<_S;*+6D':+8=?]F@9+YA?%$5:)"YAJ]@^ M:!,*"#![VY9?!L!WT,U"*&HN5Y]T&P_)KH],4Y''' M68%>!$>^-M)C@I(R"EZB_Z-?2XS99([B_Q9W785=Y-+M]7VP[7BH,E<3H.DO MBQDU$M,$XN^=EY6BIR7J2Q>@4;SU+G1R5]ZM0,=UJ5>10E,WF=%XPDBU<06/ M@/O3QB'1"F6$;VB%+!2M7ZV#18$Z#RDUP5)>@DAEUSPPX2QT]HE7Z+7&-M-Y MU,ZSM7$9\D^Q;]LN1#9ZAVP@-6)^@#)JKV&3U%53(15\[3@7R2J1P\5G:5)S M]7DP8AN2SQQHP.1?OMH_%H<'=QT->VW>I% 1'8)70[_=R[9[[4=Z"-1(DH\6 M:VOF$:2MV!DI[\ZO+R@S*"F8-(P[\)DIHV$_T=)!YB2JL ?A(H8#HCW@ERH* M& R2@%;EFQTQ[E9C7EX]51!E:C^[>""'H-IE8+#IT;'+-2-C3NZC28.9EII, MW6UU8 .Y6GQN:*_I^PZV')Z'.&DB/5BEEA"Z, [U8N3U0W^HM\UY9*YV/'0; M\H#F>-VI&E!BU%H'DW*%MRC>GK X[M9 MZ&YBO2#^!SOA@ 'NC1/QV+/F=/ :H%)^S2\[0DKA]$:@/^W?IYRGUPAWU]/+ MF-^D7VL09]0*HEAL#D;"IQ<D"?E\Y%[LO9*!_ MRW3V'U!+ P04 " Q@?Y83^;_><$# "@" &0 'AL+W=OF]'\ M(H0:K)FY:48,[16R8@=S'6'R$S 3 M^&@T50Y^U"66Q_894^IXY7M>U_E9P)];G<*PWX.\GX_.X V[.(AX(\*X<;4C=#;[QRL.AUYH%,8[D1' MT%C)[2O5%LR*%5[R)S44PE4@=!D7^*653T+%G%LLD'=+A2YJH"6>&6!"'81S MZ+6T(3YOQ-8K]H"'#K>5YC9;4K 216%:[ZQ3V52R8)]-8\TS$R.$E9 6V&^+ M( CX(F%WD0+&!V92+]GID=H:]""6HM@/)Z5T2$' M_XCTKK0\330'S8J< K#LVJ4ADP<$.$4,&OE+YUHLH>4.L4%Z8[&4!+>BD$K2 M-I#[US B,')P'$@H(S1LA(,+& P'Z?<\!I0*$XWUO>PRG;S(WA@Q8H8%,]BJMC:Q6I[G:*UEN,* M03F?&=/:D)E]$:7K7+'77Y&Y00X<%!W3JR1:88N*B2_>&.X!1ZA$>?JB>EX7 M,)RDX_^D>3Q*+_>BX_3UO$V,X +RHV($2Z[/^)2ESW2%JN1XX;LA&*NT[&?/R&OG$4N^#S.ZZ&Z.VM?N%"E:;N!?\W7 61OC:$ MLH-7HT:[#F^C+P$W6'Q .FGW_"[BJ_.B'M_NC\*N>5: PA6;]M/WXP1L? _C MADP3WJ"E(7[1PK+B3PBT7H'/5X8;?[?Q#KJ/DOE74$L#!!0 ( #&!_EAL M5S%@B0@ #P4 9 >&PO=V]R:W-H965T%R4L?8O9[-0EE3J\/4=63Q MR]KY5D>\^LTL=)YT)8?:9K:8SU_.6FWLY.I"UN[\U87K8V,LW7D5^K;5?G]# MC=M=3LXFP\*/9E-'7IA=771Z0Q\I_JN[\WB;C5(JTY(-QEGE:7TYN3Y[?7/. M^V7#SX9VX>A9L2OQJ<"Y>W;JV-1$HQZ"TK=2ML]'8#=G24%#/U7O:Z$9]T#&2 M#Q>S")5\<%9F\3=)_.(+XE^J#Q!8!_576U%U>GX&4T=[%X.]-XLG!?Z]MU.U MG!=J,5^D_K/]2I$CR3Z[V,H)"7GCROAPGH= M.EW2Y025$\AO:7+U]5=G+^=OGG#A?'3A_"GI?SZ$3XL_.Y^JIU58.\G;WYME KVAAKH4H9BY#/%X6J=< R665U2Q6OZZS_N:=&1ZPU>A=Z M UO7IL&KWH"<0E0:/_@-*=NW*_+*K7&X0HEY WQ*L9@-,K9L^@HZ"Q;>:1]- MV>-DH6+M O%BA(M=WW8"QKKI306S;-4D0Y-,"E/USJ)6+:9MNMH9%B8^M0S5Z*F%O3K@#;H(&I2TH,\,NEQ#: M!HYV2X'M;8QK]?0X3@V)$Z/X&8A !U: MMV;C&&D8DU!.L4'1)V.G*$2[SX8?PER9T)K /NHURO04#;76IA&04AA(T9;C MA0=X1?==8BC\?E0_XL\0-LG$E+VBN8 OY(_DC$65-53%L6NC/.@"JJ32DH2W!7H8#/5^B_)@P[#;2F4]%<=V.Z;9C*ZWCVI5T8H8J45WOEO*30 M23P/$@^XKKUK>7.@&(44/B.#DRC=]FVNL7R"*QADL$\D*-*8CW *X=[4"HV) MQL:D,"WE&!N[=2=QQ A:(!Z)M=EZ7N\#\Y.E+/9(0P;EH..)_";J03N&]UH MSMR//"P%,?&9FD\7(^ILP__ DZJ ,F99#G^S+T9^0X4-050-C.7^GD,S* M^B[K;QFJS%#&IL%9Y&]1QWK5T,!W0[IZ(.<%P] S<4I>B//(#$D/C2,1Z *W MY7*94ZO+]#+TMV.1^A&,)8W>P5?K#,3_ R/SOS$R%^J.K W[9HO^IP6%7^"C M^MEX=!:L((DRBZ6:P6^'JLE\ GW207T.$&(XF"E5+5Z,!HMQGX5[JMZB4V1- MP=P#2)D=B6?'4U\*]?VYLG @J1#II\W^E)E/*4AB_X :7LRS+&FQ.<!I9E/90O MT.C/TL9$F *O]#B4K(T%<#PBUL0QD[DQ'LT*"0/C#PTM'1Z0/HV-;@+W<< E M")^&RCI+CV?9#AR54DTK9E2969%Q, "AA.@R'@CH(:-#&RZIDH"XS7N) VJV M,9\PN9HH3?3@)E"L3"*V?TJ3.3:?LX8]T#(8[]E/]#]$EQ+Z;(?,B)AJG33+ MPU0^,B9[P)<1[A,>:0DYN1?RT4&>1EM)1J-^D*1I6L2@IZ*^AT^(I^5:,2'? M#]AUQSR*RP:W0I_F!1:RZK&)AC&!?466]!&4E>1F!!- 1_:)/:?M6K9;A&SP M)L>NU1Q-M9)Q( [VC-7@I0__BJ;"F+6,Y1:V<\ED/:6V3".0@?2H3 F=IZF3 M.B LX,:'*$CYL1UMPA=C$(5D;B:+(Y/'.Q$FO^-6=-R@<'7!(!W'ZDC#N9%Y M;"6[!R+-/3FG*F\K.(D0RXU@GE;@$;OC20=G<7Y_L/;4LW%>23,$SQI!JJBF MO4"'JP/SQ8-C)B3BW>E4V;PVEDT>^[F4(3G(W%8.KU-I M\.)0_DZM,5HQ'$JH."J@@0>*+Q5>&@YKW!S=+DP?^P0P._JB@ZO;1KY;!9GO M8OJX,ZZ.G\:NTQ>AP_;T7>V#YC;.T*YQ=#[][L5$^?2M*KU$U\GWH97#3:>5 M1S!=19XWX/>U&ULW5K9S-A3'L=^2.4![ 9)6+T90).BOS[G7J 7BI*\Q7[P"\GN MQG+7<^Y%\]6N-+=VHY03=WE6V->#C7/5B[,SFVQ4+NVPK%2!)ZO2Y-+ATJS/ M;&643'E2GIW%H]'\+)>Z&%R^XGL?S>6KLG:9+M1'(VR=Y]+LKU56[EX/QH/F MQM=ZO7%TX^SR5277ZI-R_ZX^&ER=M:ND.E>%U64AC%J]'ER-7UQ/:3P/^%:K MG>W]%J3)LBQOZ>*+]/5@1 *I3"6.5I#XVJH;E66T$,3X(:PY:+>DB?W?S>I_ M9]VARU):=5-FW^G4;5X/S@Z?)6'VM9\=/S)[+CZ4A=M8\;9( M57HX_PR2M.+$C3C7\9,+OJN+H9B,(A&/XND3ZTU:]2:\WN21]:YKBSO6BILR M7^I"LI[B/U=+ZPP"XK\/J>Q7G#Z\(B7)"UO)1+T>( NL,ELUN/SK9^/YZ.43 M\DY;>:=/K7[@#B&+5+PK=>'$MZIP-79[2-RG%QS/AN)@T7^I/"G%I[UU*B>S M#"/Q_OV-^*H05_4:\2;B"5L?GVZCR&Z5+/;('JQA5"K&HY'XBRA7_%3AIML+ MB*@@G;-TWV\ N!"?BW@Z'"%JLXP24!P\'B]>6B# MLRVNEB+!')H)U8RT1FV'XHWM:'[-,MMC%(B M]U&I*"K%!VFPW63L@^I0+:,2!51((>MH.&U%79DRYW&$>LJ(]@/@.4BK)O622-354, ((>HC$X@8DF6F0SGS7;P$-9+4_80 M%DK@)YTJP]$:/2F'@0\*IUT&%;"NDJ8 \HI*[DD.*^K*;]?W X%8BB?X:2N5 MZ)7&I?>$QNYP)!#-DB7+>KUIPB+8;Q[1[MZ#GXOQ<-$N2_ZLI$Y%VGG#*NB2 MBA]J:1R)OV(7#,4UBX!)E2F_]_@,"SB>([MH%:ETZM!AB#(-+"9UR2Q2&[&5 M6:W:B P6@-9+178>QHV$_<"S]=(B>&&C;!\EMM-,(#4;7GV(%$ $[5 F=T8(I,RR4G"D5[:2@EL#?E53QZ>94DIL8= M=0>:M\KR[?'++@F10@7I@5^VS'3*MK^6&>6M^$2\8TEJBH5Q%] ^/%-E]3H M62Z+&AG+,(:856:]Y_L[238EI$\)4;%%"%%E5F4X"BANUEB:E M4(-'G?(+&54CT6@FE-TG&<)GHQ!9I/I6F7T4-J2;F!KQT*VLL+@7*KBU'X4R MW9*VMA^(?T.PE^$Y@5?PYI>E 9!=(5_Z=3,EJM3=J+?@K&89K##1(8D M@]CC:(ZEOBBJ/F2M9V(>G<\FXGE8\N$QT]$4([Y4[F@+6&4.LURP M4X\XUJED4Y19N4:X^AJ0MR"")9NA=$%2RIPPI-4_[,#.9V]21DX[[(/U>\!& MR]" 63< >5DIKI$S3@+5N6"'@$0R(WA1@7J#=I'@^=-;1+WS=/% M,9Z,_H"J)6*JZ4H.B(]F0AE2E#:\7P7PI>44X*P:'<[=E%FZE,FMI^" *"4X M@;P0W!WWU,(4\)$BRMYSJJ8U4Q+,BHS0A45B9+Z&(-P4;EFPB@)TXOD"^Y M3BT!/Z!,9SQE+6'+3&-W+L#0F]0& O+MOOB=Q-%CJARJ_^>@$\X!CO19S+L\ MRB_C:'HQ87Z) ?K3Q_@%##";/,X8X*9)GS!&T?GDXI PXLGX$<8 9"WFBY]@ MC'$4CX@QWC1I[N1=KSC#@/GYXW0!%KV8_ZYT,>HZ$@*G17<9\&/4$<@?11::E"PQCL @C1[Z<2VSY\ER+Q&S4@,VK&#YU'@IVE73_^. M)-1X]N<2D?C%S>I#/>KI09/Z"QO2=S5ZMJ94^+U[R=-^,SDZZ-D;!1H^GO>3 M@\^&"M<289U!:%J0@B,G((O8C3ERLVTSRYJZAT.ZA(9=(#5LF=:)'Z"+%)%E MR$RJP_JBU,A&>,:9,FNIU/:#V>,$#.0CDXA'%:=(7VB5W"*<,5KF2\W@K.GD M<[7*^&8W(ROKK>%["")["^I7!0%]S3 M2J! 6G,@MMYK2) *)01DH790H%P;60$3PA)_%O)_HI>X_KY M9/9$;Q@M%N<=T\^B^.*Q3A#$GT;G\U&?UZ$'*/B(WB_FXT?I?1:- MT2,_R.Z_J0&<'5'XY/]*X0UOB^&!\)M 4!FBR:,KB>6#';-^;AP9E\N%(]1^_<\$3R1"8UB!@U/=#M((O8[4.G9& M!7EH9[]4-[BA-%K&UF#TQB*%KPJ7_GS-MONLB!E")6IMPSJM48Q2+=G3_ :/ M;.-6T%&&TJ.@:JFAO8 H9.O*(PPLE5&#P=A#;1>H.)%\1MIKZNX=9_=//9&+ MNJ0U#WBVB03[JR.A4<.+U@CJK4CL2>HPTJ*,T]YRNKB'T:N:D/^XKNBSXM'T MKD0XU#HZ@,?V7#6T@GR22K*7V,@U-9IC%30!\5"T\$-S8>@?.=Q#U1"R^+!8 MN:-@,$5- &0F_V6J<0QH 8)L#,_+J8:!@3G@GIFPKUU'%V$WOFX_9$->A6\+_NOXC82=6N2U$P:@3.7"J1=A%,>?X1B MJ=;B8QR$'JERA(8O3KXY?NW5OA'XI.\>?G+(QQ&;D^A\AJ&S132=S7AT($64/48O:U]Q M0).;MS=?H5+9:E,6%"=0]:8TU1"L.CV?X3.^B,&.%^CP%]%H?''R%C4TQT8K MYHL3M H@8C=QA/_%?NO!7_%HY,W&E54>,W7/+PWQM-&&P"-+YGVEDI1?Z$J M2:ZB>.I%!1W%A,A"&Y+Y6L0GC>K1!T<^2G_CD.Q=-AZ3!B=EKV AHEY1L]AO MNYK^M8$;P4=E2T<,S7FQJHOT?ISXLAY;*RTY^=@>IFF<4 GSX=2V[:P>3A2W01+L&-K9ZFUN4*(<, _[@ULGV4IZ ME#F>C*P(*4M-HOD9 N1R[W=NVS(FCN%#;_?/>G^\X(Z%_E["]%0X_Q^,]F[[ M#Y8K_\>-;KC_^\L'"9"##)E:8>IHN)@-A/%_*?$7KJSX;QS+T@$X^>=&P02& M!N#YJ@2&A@O:H/U?S^7_ %!+ P04 " Q@?Y8[4_BACH) "V&@ &0 M 'AL+W=OOP&AW=NP9KL7[ M)7$\D\NV=:?;9N*T?>CT 2(A"0U)* 1HV?GU_0Y TK)65I2'S.0A%@@"!^=\ MYSL7A%=;U7W2:R$,NV_J5K^:K8W9O)C/=;D6#=>7:B-:O%FJKN$&C]UJKC>= MX)7=U-3ST/?3><-E.[N^LG/ON^LKU9M:MN)]QW3?-+Q[>"-JM7TU"V;CQ >Y M6AN:F%]?;?A*W KSS\W[#D_S24HE&]%JJ5K6B>6KV>O@Q9N8UML%_Y)BJW?& MC"Q9*/6)'FZJ5S.?%!*U* U)X/BY$V]%79,@J/%YD#F;CJ2-N^-1^I^L[;!E MP;5XJ^I_R\JL7\WR&:O$DO>U^:"V?Q&#/0G)*U6M[5^V=6O#8L;*7AO5#)NA M02-;]\OO!QQV-N3^,QO"84-H]78'62W?<<.OKSJU91VMAC0:6%/M;B@G6W+* MK>GP5F*?N7[3:\QHS6[%"E@;=M,Z3P.RJ[G!";1N7@[2WCAIX3/24O:[:LU: ML]_:2E1/]\^AV:1>.*KW)CPJ\*]]>\DBWV.A'\9'Y$63N9&5%STC;[3R@]BH MSLAVQ?[S>J%-!W+\]Y"Y3EI\6!H%S N]X:5X-4-$:-'=B=GU+S\%J?_RB*[Q MI&M\3/HWN^:HM,.Z!NDE.W8,^[@6[*UJ-KQ]^.6G/ RREYHA(73VK6:\$PP) M@;?RBZ@8;RO$Z1T"!P^+!]"T15Q;F;Q6P'HKS9I)HYE6=>\DJ(X);$-"^"3P MPJRYP1_!]*",551;T5;MUD"V;)G9*IQ%3N2+>EJN+ZW&6(B@A/#EKBRG[J2@ M67>J7ZWM"K(M]%_>M*5J!%MVJMFQTKX,7C)"E $38S$!P5L-,1C!&EEQ4NS6 MX,>=A;,'<9<'43R@_#Z\ @JKZTCA$"!Q9"NW1VDKHLI,+ MMW&I:J1;_0*!N(+:HB/E'C24T^-Q+ZQ:S[\?H2=S-VHK.K82[8")Q]8/5:=* MWBT "'2"$F#1RF-; -#-MQRB[) 9E I#\CRF9/W@%D#VACM1UI"=16 "X4RS M+;_C-8,.2.)D(_%$5IH6-R3,SJPX:5P:U>DG0&-2?(+VBO&JZHC?9,BJ5@O( MK%#9L'=IV7($>PI'TK$!OD0^B'LH$.ID/=EB:D]F):R-J,# MZ+GB#5CJN"#N8;4ME?]3TD;"35M!3B@>2K@0K>3M&BP.L1RU5"XF VYU>*N4RU[1QE\X: M[H.*M!K&+/FB&T[VF&TLP!PXZHE ,%\X(DTZ(73KIU%"AX(/_1*%I^_L'.*7 MUP,LSGS^N>84?>R?(P& -\W=/*=PG)RBDM\)8YN-JIO*T=K59&BM9P( M,Z9MBL!#\49^V'64E2);*%/7 [8[Q 4]G?Y/Z>=@7N+,MG3\=C$@=TJCU+N) M]NSCNA-PDVM_!+4_#,V+L,W+K;P__.;LG$K9&O&.@_6%[7+H3_0X.OL[.G,P M Z%W7E,PP+L=_Y6L0"+]=8I.6G%Q=B2=_\R*S(N*$(,\\Y*0!D&>>ED% M:>3E24PC2,GB^/OA=[BH'TWY>8! E7NIGI"\4+^+3<,*>M&"Q ME^0I; <\!0L(NN#LK>I0_E$*+?G^0:F?G0<7[)P%"> (F1WZGI^Y811X<12Y MV<(KTH!=#$C+@^:1M[TP(85S*!Y9#WM%' TVI;$][L:&#;Q43OI0^*&S&4(% M26LI;,3:*!C;C=TX0(5%W8N94=/($_@05X0">+8$M7S0\(SS?,3HR0LX+>0!9X?)?B;!8?] M'GJY'^-][*?@2I %&">A/_AW\Q4#2#\O"".K89!2F&5>&-%SY!5!\?V@?2?0 MD2,]3EF6-W2G^F(GOA)?7A[$]C?,8JMI4A36@CA/3T,WH#AB15Q@4YCX9+R? M'<0W"5*6Q.2'("2<_63,4M4Q"ZQ:<6JS%4(W(=<2+L@!A^P+8BQ/?8/ MIYH0+DV]$ DI]+TXB<9D\D<=R=PBAT0R//5]+RP"N_^0W&$+=0^(=W!74CN/ M)ADWF)+K]5",;<8R_![=0FWO36[?Y;="^F>T45OT5E\A6PSTDGP8A6%Q&HYI M@=2?VI]B),QJ.) X$8!/+C%@%(4IDBD5YG$[67KSI$1_0(/9]DBVNRW<&CU$ M@QY/;H!X)>^DNRO8>S"N/35=8 1'C^O2*G78P&BZ,9[+)X>Z+F!H9\U6B+VE M?V@8O)-[&'+!V=\(*F?5^+\%MR1GWW$.+0?(\=O% <]1PV.EPO;'[N>Y;HS*8F@P&1FFT![UK.T^''OX\ MM]4Q?0I]1L^N^3P(O8]C@@%D[ [V%!HE3/WHV;-E\$=G?1';#MQ!GT8C]&&^ M#_W0Z)^&?1ZCHH:00_4N>8H]&L>+H>,_@'V8@>S!@#UT"_P]C48)TPW@./8_ M,.O1IP$=1_O"2Z+1OCCU]['_EJM5'GEI3MA'EO^[V%.K=/'\-2M,J"T)'<@1 M^LAX3Z-1PG3G8H?^DWJ^\RT!U_N5_6)");UOC?NL,,U.'V5>NV\1C\O=%YW? M>0< -:O%$EO]RRR9L&PO=V]R:W-H965T M6EB&W"\%FN!8FFREP_# M/M#262)"D0I)V?&_WQTI*TJ7!OUBB>+=<\]SQSMZOC?VWE6('AYKI=TBJ;QO M+M/4Y176PHU-@YIVML;6PM/2EJEK+(HB.-4JS2:3L[064B?+>?AV8Y=STWHE M-=Y8<&U="WNX1F7VBV2:'#_&K17*10(%;T2I_:_:_8:?GE/%RHUSXA7VT MS=XED+?.F[IS)@:UU/$I'KL\#!PN)M]PR#J'+/".@0++7X47R[DU>[!L36C\ M$J0&;R(G-1?ESEO:E>3GEW?MQN%#B]K#^QW]NGGJ"98WT[R#N(X0V3<@SN"S MT;YR\%X76#SW3XE.SRD[V;BRR;7#T9)#^/0I,0CH95C5;F0L.:0A@]HJ>2 M-$>T%.,AJ*2(H&BB2%V.R'$8HD G2XT6A"Z@L68G"UH0*:D+Z@XKR08?*T'O M(*0E(=H+ZI/@#Y[FE*\Y"^S.>Y8ZS!V .:IF2)IK2BJ61. M<\3>HX]&@W@==-""T+0VKZBD1(.R WOA6+ UCY)F(M*)^@&FYS2:E IB"6I+ MZ2?!!;0N\J+3M3F6A-CEPE5@HLR-4&P+\09B[XVQU#/DZ*#57.Q!VOB\3<^O M')5<.L_@:XN%]/!!Y%))?XB4)1GGGD/YKXM!2VT\JM M^!B+KKOP$C,8:N$IR:$:L,?0*ZZEV$6+7,_.B>,$L<_#<#8CFNHM2/^75EAJ M,:K<+3;&>BX%WW PG?SR90PK/ODQ"Z,GAH5TN3*NM=P?G"4*8[G$H42KNS5< M3$Y'<,TEY\.V?BJYHX)KEKM!.G%%IY:(L-SQ2S,S'=QG-$/*<&L3#.AT_F\5_%9V%+J;G;MN0Z&9^?)F#C31T7WC3A=MP83W=M>*U"9[(! M[6^-\<<%!^C_+BW_ U!+ P04 " Q@?Y8\L8JS[D# #>"0 &0 'AL M+W=O+*$6J)!4G_WY'4E;++W7//O9$<;Y7^ M:DI$"\^5D&82E=;65W%LLA(K9OJJ1DD[A=(5LS35F]C4&EGNE2H1ITER'E>, MRV@Z]FM+/1VKQ@HN<:G!-%7%],L"-<+>J^UG M;/WQ!#,EC/_"-LB.T@BRQEA5MG9Z1W&[X9+)C#,!LRQ3C;1<;F"I ME:1QAI0!:^!DJ03/.)K3<6S)KM..L];&/-A(W[!Q#E^4M*6!3S+'_'O]F/AV MI-,=Z7EZ%/#71O9AF/0@3=*S(WC#+@A#CS=\ V_/[47)Y 8-,)G#)ZV5AH72 M.I20@3]F:V,U5=*?AZ(0C)P=-N*ZZ\K4+,-)1.UC4#]A-'W_;G">?#SBPEGG MPMDQ]'T75I;(,YT;F.6JMI@#EY1CDU&"?PQ8H/[3P.%.2>P?<6C4.33Z]S:M M@C7N+!_RX[]BPJV$:Z2B7Z-V_@Q[8$L\W"&O$'-%/SAQDM'-;#6/3H$;TQ#< M0?''.F<6X22:K1Y)U)GYD/S2(]N9JA >V#,5X,F#JGD&%V?)Z17<5K563VTK M$N%72;BFV ME&BJI'FQ+GI7 \IQFAD!XD+,DEW=R=)9^:[@.:#VH-:?CF(L7 M8)JXYM[A/6E5^!7M*%,C*(J#X"P';>6MFFC3L>J$% R8D*;]A7X_;O+='#QD="IP>F,DN MX01@0ZCZKCCN7!K^5AR4\2[?Y';(YT4/5KAQBG"/M=*>;)O4]/)04H,86POL M-(\FU[1"_R"S/Z;4\(WD!<\8 >R \)FN>D+^61FD^(0*H4U>04U?E?\?$W_H M.(OW[MP*]<:_+!P8M7NX?KO5[O$R"W?VJWAX^7QAFB)B0&!!JDG_@DXQ'5X3 M86)5[6_PM;+T'O##DAY@J)T [1=*V=W$&>B>=-._ %!+ P04 " Q@?Y8 MJWD%GH\" #'!0 &0 'AL+W=OA M66MDA0=5(HRC:!A6C,L@&_O87&=CM;&"2YQK,)NJ8OK/#(7:38)^< C<\U5I M72#,QFNVP@>TW]9S35[8L!2\0FFXDJ!Q.0FF_=$L=?D^X3O'G3FRP76R4.K) M.5^*21 Y02@PMXZ!T;'%:Q3"$9&,WWO.H"GI@,?V@?W6]TZ]+)C!:R5^\,*6 MD^ R@ *7;"/LO=I]QGT_ \>7*V'\+^SJW(0JYAMC5;4'DU]Q69_L>7\/1X#+ MZ U O ?$7G==R*N\899E8ZUVH%TVL3G#M^K1)(Y+]R@/5M-73CB;3?-<;:0U M<(\Y\BU;"(2S1W>8[CBT5,'EA?F>;5:SQ6^P#>%.25L:^"0++/[%AZ2LD1#G=&&LIK_%K[9&:YZTG<>- MRLBL68Z3@&;!H-YBD'UXUQ]&'T^H3!N5Z2GV[*&>$%!+:'F?-K4G^=K5-LSZ MY>69<37ITK&Y=&"R@!M*J1:H(>G[: *YHKDT%@L'L"7"4@D:<"Y7H\X9EQ12 M&T-0T_V/[A55ITW(>^@G26\P&#JK?]7K7R6=N59;[I MP; WN(RAZZUT&$&W\Z@L$S3VK]A[(&G;$7$\[%U=I+Y$W+M($FA[N_!HN"K4 M*[]"#'C6>LZ::+.EIO5POJ37*^Z.Z167!@0N"1J=7PP"T/7:J!VKUGY4%\K2 MX'NSI$V+VB70]Z52]N"X LWNSOX"4$L#!!0 ( #&!_EAA"/"WI ( !T& M 9 >&PO=V]R:W-H965TS;[^R$E&[ 7HA]N?O=_^S< M,=DH_6AR1 O;0D@S#7)KRW$8FC3'@ID+5:*D-RNE"V9IJ]>A*36RS <5(NQW MN\.P8%P&R<3;;G4R49457.*M!E,5!=._YRC49AKT@IWACJ]SZPQA,BG9&N_1 M?BUO->W"EI+Q J7A2H+&U328]<;S@?/W#M\X;LS>&EPE2Z4>W>93-@VZ3A * M3*TC,'H\X0*%<""2\:MA!FU*%[B_WM$_^-JIEB4SN%#B.\]L/@U& 62X8I6P M=VKS$9MZ8L=+E3#^%S:U[R *(*V,54433 H*+NLGVS;GL!W-G[WEDDRJ,A1JSO_"_8,Z6RC32$%C.74D09%I22P#A,)MBL8+(YW"6ZGO M*YFJHA3HO-.F+ .O(8X[T>6(%L-A)[X=D97 M5W#H PCW6K9 O?:#R1"BDK;NWM;:SKY9W?+/[O7@O&%ZS:4!@2L*[5YAC5&ZM*/P"6RM(X\&ULA53; M;MLP#'W/5Q!>,32 4=]R<;+$0+.N6 <4*]IN?1CVH-A,+-26/$ENVK\?92=N MMJ79BTU2/$>'DLC91JI'G2,:>"X+H>=.;DPU]3R=YE@R?28K%+2RDJIDAERU M]G2ED&4-J"R\T/='7LFX<))9$[M1R4S6IN ";Q3HNBR9>EE@(3=S)W!V@5N^ MSHT->,FL8FN\0_.MNE'D>1U+QDL4FDL!"E=SYSR8+@8VOTGXSG&C]VRPE2RE M?+3.539W?"L("TR-96#T>\*/6!26B&3\VG(ZW986N&_OV"^;VJF6)=/X418/ M/#/YW(D=R'#%ZL+O32LH#U>3^($HM@=C(?6H/QX H?NT=OKM!+5NIDGF@ZG M%J9MNB[:C:SSME-?T]MY=\W4F@L-!:X(ZI^-APZH=H:TCI%5T[=+:6@*-&9. M8Q>53:#UE91FY]@-ND&>_ 902P,$% @ ,8'^6%P];_!#! > L !D M !X;"]W;W)K&ULG59M;]LV$/[N7W%PAR(!M$BB M7IW8!IQDW3*L0-!D&X9A'VB)MKE*I$O2<;)?OR-E*TZL:&N!("1/O.?NR(>/ M;[R5ZK->,6;@L:Z$G@Q7QJS/?5\7*U93?2;73."7A50U-;A42U^O%:.E4B^%T[&RW:CJ6&U-QP6X5Z$U=4_5TR2JYG0S#X=[PB2]7QAK\Z7A- ME^R.F5_7MPI7?HM2\IH)S:4 Q1:3X2P\OTSM?K?A-\ZV^F .MI*YE)_MXJ:< M# .;$*M882P"Q>&!7;&JLD"8QI<=YK -:1T/YWOT#ZYVK&5.-;N2U>^\-*O) M,!]"R19T4YE/P2RO*:&3L=*;D'9W8AF)ZY4YXW)<6$OY* 9_ MSN;:*.3/7UW'T$2)NZ/8-W6NU[1@DR$^&LW4 QM.W[\+T^"BIX:XK2'N0W^N MP8=[14LF:,VZ@Z M$VB-?:;!):VH*!A0 W.VY$)PL02Y@#537);P'9 P]"*2XFSD)5F 8YA'7CC* M&DN0#V;%EPW7W"J.AC ,X/V[G(3D DCFA0G9+P$.V98@1? M6'NH"P?&Z[AC9X/ M7OH?4^@5&Z^D-C KBDU]!K-:*G/681KE.<[2Y@U MEB -!U=.VS%JA5DB58+(B[,0TM3+2/B\Q($$@Y:BVKF/8DB\%&';11"$QY2B MY=\8!']!K9 #\@%Y:DE%@F8,O2"/<):D@WMI:-5QWHZNX04L#FX%2XB(EV:6 M7#E6-0IVIM%H9$W$2Z*\CW!I2[BTEW!W3:-@+[#EV0/K$NM9HU&A9^DR)VJMZ;,O>:@0[&4?/F_UR1!\*F^9:*)8$7IR%.HL0C23AP!.;_--K# M'K'?T\QJCQ>%B2,*DC *X/2EN.V%+0R\#(7O/]B7HC]$6?"5!;P6NCA%SEKB MQ<3+D6Y=+/,/NB%\8$O7\VD4A(TP36/46MNV&UL?57?;],P$'[O7W$*$V)26'XWW6@K;6,(D! 3'?" >'"3:V/AV,5VU^V_ MY^RTH8RN+XE]ON^[[\ZYRWBC]"_3(%IX:(4TDZ"Q=G411:9JL&7F3*U0TLE" MZ999VNIE9%8:6>U!K8C2.!Y&+>,RF(Z][59/QVIM!9=XJ\&LVY;IQRL4:C,) MDF!G^,*7C76&:#I>L27.T'Y=W6K:13U+S5N4ABL)&A>3X#*YN,J=OW?XQG%C M]M;@,IDK]HQ".B&3\WG(&?4@'W%_OV-_YW"F7 M.3-XK<1W7MMF$HP"J''!UL)^49OWN,VG<'R5$L8_8=/Y9ED U=I8U6[!I*#E MLGNSAVT=]@"C^!E N@6D7G<7R*M\RRR;CK7:@';>Q.86/E6/)G%EE5>HTUW#S0-1LT\.J.S06:TW%DB=XY1=66ZJJC2I^A&L(G)6UCX$;6 M6/^+CTA6KRW=:;M*CQ)^7,LSR.(0TCC-C_!E?:Z9Y\N>X;MECSXW8+(&GS@3 M!GY'I-AZ0>)3LL=4>+N]MGQD6CPF-?>%^MMUAA.T<-6>*M&52*&M-8 M A/ -@@+):C#N5Q>#%YQ22:U-@0UIT_H_J,:7*O6A6==FU(TC8(YYCE*7'!K MX 1&X:C(Z9TD85J.!COA&Z8UD_81BC O1_1,XH+XI+]0$)S-N>!T?!XFYR64 MX:@L!K-&:?O:HFZ!9INFL'() JFU]P!9>%[$D/M@GRD]#4D9ID4)21&6PV)P MIRP3-%.>U.\$\CPLLV&WR.($#GT'T5Z_MJB7?BH9*NE:VJYU>VL_^"Z[?O_K MWDW-3TPON32D?T'0^*PL M#=).HV5JU\]\^5I5GBEPT-;]3.@)DSYPPYP]E>FT]VB^C@2R.5G4=; MY]IIDMAJBPVW-[I%12MK;1KN:&@VB6T-\CHX-3)A:3I.&BY4M)B%N4>SF.G. M2:'PT8#MFH:;ESN4>C^/LN@X\20V6^46C2HK- * M#*[GT6TVO1OY_6'#[P+W]I4-7LE*ZT]^\',]CU)/""56SB-P^NWP'J7T0$3C M\P$S.H7TCJ_M(_K[H)VTK+C%>RW_$+7;SJ,R@AK7O)/N2>]_PH.>W.-56MKP MA7V_EQ415)UUNCDX$X-&J/[/OQSR\,JA3-]P8 <'%GCW@0++!^[X8F;T'HS? M36C>"%*#-Y$3RA_*TAE:%>3G%DM40AMXP)6#JV>^DFBO9XDC9+^>5 >4NQZ% MO8$RA@]:N:V%'U6-]?_]$V)THL6.M.[818PX W? MP OZ'H2MI+:=0?CS=F6=H2OQUSFQ/=;H/)8ODZEM>87SB.K HMEAM/C^NVR< M_G"!Z>C$='0)?;'LJP/T.AS*.7H7 <[3"_JY]:B46CRE%KBJ*4Z%S0H-#+,P M.X1*4]59A[5W<%N$M994OD)MIH,KH6A*=Y9<[?57<-] #7[KG'6TE7QAI8T) M*!8ZNB@&[@W6PL%[7@DIW M<43V1G!I6OEM.&X=&OD!KA*I$RR4(17A2 M4F-P0<\[R/.4&!G=;;:PQ-;U#%C,ANSX&\ME(,=I<=?=.>Y MU_[TRYB@Z%OF^>"CXHTV3OQ#J0Z+-96&[LCO"K(XS<=P'2PV(>LR\XS.OF1C M^A#7]':*74N8X@!M#X*-5\"2^.\3'O<-!Z5Y0G8$XB!&H_]QHVRS-*8 MC<;!&L?%)(=S-9:\:H -FDUH\P3G)?6]\#1[>DEN^P;ZW_;^&?K S8:N&/%9 MDVMZ4^01F+ZU]P.GV]!.5]I1!#W!Z7Q?_ E!+ P04 M " Q@?Y8#BIA\ED# #S" &0 'AL+W=OA*2JL MF;E2#4I:V2A=,TM#O0U-HY&5WJD681)%H[!F7 :+F9^[UXN9:JW@$N\UF+:N MF?Y]B4+MYT$ M9L[>&_S,<6^.^N"4K)5ZU_P$/>G*'5RAA_!?VG>UH'$#1 M&JOJ@S,QJ+GL6O9\V(JO\L%LF9P'?M/(*TF@(291D9_#27FWJ\=*_4WO? MJ_WU9FVLIN3X[93>#BX[#>ALS-.*'BN$0M5- M:WTL)OQ(2936N,!T*W@!1 Q*+EJ+)>!Q5AF_SXZP)2!;:42HNSQ!ER= IXS] M*7L/+[N.;C@DI!5:\C;7'9 #F1 FXB:60I^X1A\#M7+ MP3MZ#+DDD43 6LW7I)RN!%@%J[O5>TKO'==*TMMD:3-62C=7\#5DPVR24YL. MQTDVN$6IZ+ZZT(.EC[KW+P26W[(=4=IB%XUV\.A8TVPXC2>N&<73P4K5)!?H M$2B> #^V?,>$WW2FN?%9H%5]6%:-.QOCM1$JL2Z7O/[7R1"/IQ.4]^.H_C+$V$R25R3 MI_%_D0CY&$99_$\3(4FG/A'&"9QZX<*C0D3;O?7EUE"&M-)V-:F?[2OZ35?( M_C#O?@?>,KWE)$/@AERCJW$>@.Y*;#>PJO%E;:TL%4G?K>BO!+4SH/6-4O9E MX +T_SF+3U!+ P04 " Q@?Y8&@$87Q4# "Z!@ &0 'AL+W=ORBYF MIG-*:EQ9H*YIA'U=HC+;>91&NXT'N:F=WX@7LU9L\!'=UW9E>17O64K9H"9I M-%BLYM%M>K/,O7]P^"9Q2P=S\)&LC?GA%Y_*>91X0:BP<)Y!\/",=ZB4)V(9 M_PV&?4/[)T]3R:1E!B)3KE'LSV(P[Q3#Q?810% M"]O>=Y)%4'3D3#. 64$C=3^*ER$/!X!I\@X@&P!9T-U?%%3^*9Q8S*S9@O7> MS.8G(=2 9G%2^X_RZ"R?2L:YQ6K(K] EW#>M,J^(L$2-E72P4D(3G#^)M4*Z MF,6.+_2PN!C(ESUY]@[Y%7PQVM4$][K$\BT^9J%[M=E.[3([2?BYTY9V,1/\>[LF9[E:OA\+N.?+C_/Y%W1#K2AP M'O$3(;3/&"U^_RV]2CZ<4)OOU>:GV!=WIFF-9K$$IH*37^[^A5\M(1T+X>0E MQT,XR%/+-0'8TX.D\"1*8!W/0G7"OS2"%JUO%[R_?NT!G,Y.6(D$(HAW-<(: M-U)KJ3=^ T510R6I$ I>4=A+>&*7XDW$'M0.4;^14?"EDIS7T7M51G&W8>J; MT5-M.2]-7X?HZQ"XBC!4T:-\.7XR.I>:B4Q'G%VZ".7FS?C7;/1).^0$.;Z= MS1G#8!<\9M-)&#W4CY/K%"Y& MMXVQ3OX,>?7!:6[30RXY4AO=N#T2U/*@C/<5\.@D#W/ M($V"9?&ULW5A-;]LX$+WK5Q#NHJ@!-=;W1YH82-RTV]UD&S1I][#8 RV-;*(2 MZ9)4G.ROWR%E*VY@JT4OQ>Y%HL3AFS?TO!G1)VLA/ZLE@";W3IX M,E'%$AJJCL0*.,Y40C94XZ-<3-1* BWMHJ:>!)Z73!K*^&AZ8M]=R^F):'7- M.%Q+HMJFH?+A'&JQ/AWYH^V+#VRQU.;%9'JRH@NX ?UQ=2WQ:=*CE*P!KIC@ M1$)U.CKSC\]]SRRP%I\8K-7.F)A0YD)\-@_ORM.19QA!#84V$!1O=S"#NC9( MR./+!G34^S0+=\=;]# QF3A7,1/TG*_7R=)2-2 D5;6O]0:Q_A4U L<$K M1*WLE:P[VS0=D:)56C2;QGA5?6J:8V2%%7MS2>0UJ?#+1"&T, M)L4&YKR#"0[ ).1*<+U4Y(*74'Z]?H*4>E[!EM=Y, CX6\N/2.BY)/"": O M[.,,+5YT .\M<)"T)A_:^1PDN;R MP6CZ_)F?>*\&J$8]U6B0Z@TJKVQK(*(B'SEM2Z:A)-=2$)N'Y WCE!<,@WG' M.UGBC[/<$X0HE645XJE\!] 2M-D#E12RJ!E"BUL4U-]0CS6/GG"I6H%_OR ^[6]#= M4GL+/.NH'2P60ULKD-@DCW[$?!"]%];)5/?-*BF9;,=!-#=A_%?'=!*'>H2;X M@AE7+TU5PCJ%P55 ?)SW/>>M$.6:U;5Y]OW8>8\ARBVPGSBWPFCJZ1:%H1MG M21_JOMUZ01(4<4C&&\C]-I$7H841^%,7I@S@MN1#NDK[5$T'4_6*UG=8_RYP M(SB -)MTR1I;LH?4-0CZ@^K*>LK93U77H/?_F[JB)+7J"MT@\@ZI*PGC ;6X M:9H]B@4[57Y(&[[GYE'^#6U$;H:M;NR\A@IL_][T-TWO^Q4/:)#4O'="+^4QE8TB1\=D@JVBC@\+!9L8N%N9_'<+,R_[BQ!Z!^0 M3Q"Z:9)^0SZ^&WCAKGR>ZL9/LL-]!=MMGNP5SF3GB-B 7-B#L")VM[K38O^V M/VR?=4?,1_/NI'Y%)78;A=VXPJ7>48K?:K([_'8/6JSL@7,N-!Y?[7 )M 1I M#'"^$D)O'XR#_B^(Z;]02P,$% @ ,8'^6$C3@4J_!@ HA4 !D !X M;"]W;W)K&ULS5A=;^.V$GWWKR#JK*V%_/KW5I=A=S-N\??"S6 MN<,'B\OS3;K6M]K]9_.A@;O%X"4K*EW;PM2DT:N+^15[4KCZ+-$1A/%7YW,^+(F&^^/>^X\>.V"Y M2ZU^:\H_BLSE%_-D3C*]2K>E^VAV/^L.3X3^EJ:T_I?LNKG!G"RWUIFJ,X8( MJJ)NK^E#Q\,Q!KPSX#[N=B$?Y;O4I9?GC=F1!F>#-QQXJ-X:@BMJ3,JM:^#? M NS ]>.W-1MII&RDT_I7:GMZ?G"P5)HL%AV;J];M_P%MY+\ M:FJ76_*^SG3VW'X!(0YQ\C[.:S[I\)=M?4;"@!(><#'A+QQPA]Y?^(*_'NY' MO3&-*^HU^>_5G74-5,G_QN"VWL2X-]PY;^PF7>J+.6P-JYM[/;_\[ALF@Q\F M8A5#K&+*^^6_86_>II (DM89)&AI*DU6C:G(;QO=M*FZ>R2'J1R#,;G0.(Q/ M.2Q6U&F]+-*2V(ZW8J],"@C,DI4I88?;-[-/>:,UJ=K\:\P_@>QIG[W;XF'\ MG]E)41.7FZT%C/;4IQE_PJ?1#'FPGH>3$G$6->3K>XI7W7S?1^9GG,[>UVM MIQM8X_;1.EW9(?9OB8IIJ#@,DIA&' 2417'LYLZ@^W7(.@/C5EZ M8DVY1<1/KD1 61@0P:B,%(ECREA(8D5C&<\^&0>V]1 TN Z'Y;BB+,'EN QI M$@D<@9=8B"_'WW[EF+YR[#133-$0 ,) T"!1, @C*H,8XX7 E3B.)["1B@@: M)1*P SV*,*2.S=Z:!G9@ZK0O[M]^@Q3)<(.DQ2XH\IM!AE:#K& )WCM6>^"DDUC M5H +QGX'-/<%P*3/]H#3R[PVI5D_4@_$>"!K74,4AWH=4,?7E&L1GI9'NE<8K?8(F3/@KCX6/-%+*(Q")/(Y=AOV M**' B$FCU2"STIR@X MI&@@U3/T3B]U=0>K0P?J^NG^/DG]/IDF2?"8QB$F5(10?.K(LF,"Z@',F !S M$8RW3 XIE91#8^4!%5'8-\7/8T2X*@&/"%P& >6*>?LQOYW)$N*!W@6U6X!V M+\I'8E9DF=K<3^TZKTL?0*>7X"#K[,XF.IH<.IJ<;"0_&9/MBK(<:T&3EN-R MYA_FN%_]E>H7D,XHZ4:-/7RMQ64*)^>!/&]KK=ZM.-/>GY9/;Z%EVE:/Y(<5&(%IZ5B [68 M%?>%]6RX/ 6)!.!%^V"7:M+6TDLFTCY30D[1WYDG?OE)L 71&+U5/4%%% M*(:^]7)(^M%WWR2<\1\&F7ODNTU0":T070H1@*/>#:HO7**5NF.J5LBN^9^ MQ%+J,)[>P:!_7^,^_'JY5Q%-DL"#B@%JU $,97A ?7NP.)YZR.>)UPWR.?4Q MWK?'BU'J UB&=22#-3L(J/]SCR+R].6#-(]0L/&6Y! 4MCB(J/

]FE6[6_NL@BIUM[=I/:,/3X0/D5?O=[6EZ^_7RU[0! BTI]0I, M@[,83D=-^T6PO7%FX[_"W1GG3.6'N4XSW> $^']EC.MO<('AL^SE_P%02P,$ M% @ ,8'^6-:(?/.U @ %@@ !D !X;"]W;W)K&ULK59K3]LP%/TK5H8FD IYE\?:2$"$QL2FBL+V8=H'-[UM+1R[L]V6 M_?M=.R&4$@I"?*E?]QS?2ZD[/ RY+[G0?6]FS/S$]W4Q@Y+J SD' M@2L3J4IJ<*BFOIXKH&,'*KD?!4'7+RD37M9S3"<"9@H(A>E"55_\Z MRU7?"[V'B6LVG1D[X6>].9W"$,SM?*!PY#6"-/X6W-ZS986N-Y_8+]P MVE'+B&HXE_P7&YM9WSORR!@F=,'-M5Q]A5J/2["07+M?LJIC X\4"VUD68,Q M@Y*)JJ7WM0]K@#!Y 1#5@.BM@+@&Q&\%)#4@<,6>/[*[A1W#UKA/AK:N!HUKD:.+W[%U0[Y(0U@WCU-:@E>-GG3V$W M^-+FY$>2Y1]$]L3EN'$YWL;^^.VJQLDV\RJ2KB.Q57"9A7&OURWI24L M/ Z/XZ=A^=:4WBDX:00G6P4/E%PR5W"QWI-"P9@9PJ76T'KC*K)T3=%^-SV* M-G2W127=8$/VUL3>*3MM9*=;9=](0SF^$,].NT,$F#;EZ?.SC+K'A\F&]):P M,#J,-X_\>=A1' :/#E6B_+4B;%_,[U1-&5YZ#A/$!0>'2*.J5Z@:&#EW=7DD M#59YUYWAPPW*!N#Z1&+MJ >VU#=_!;+_4$L#!!0 ( #&!_ECG64A=90, M %\- 9 >&PO=V]R:W-H965T7#DER;616@7$%&1/E/_U5/8<# M /(T X(*$!P#>H\ P@H0GJO0JP"]2]*-/=YLW+*1C*^"N,^'P_)2^?OR+/"1/DTUKFFHI4CUR#:[+,;E+I M7Y7ZP2/Z(?DHA5EK,A,II WX:3L^:L&[^"SJ!Q+L'\A5T$KX(1<7)/1>D\ + M>@WKN3X?'C9MY]_49_^F/F^'3R%!N/\H_.8OZA35O4;X RO".C?#@B]\A.]/ M2FKR;;+01F'A^MZ48R5/KYG'%O.AWM $Q@Y6:PUJ"T[\XID?>>^:#.Z2;-HE MV:Q+LGF79#<=D3U(DUZ=)KTV]GB2V0I&%HQS2,DB-T1(@Z>D31Z"U<.F56/I*G6C0M<>Z=LXO/2\D;L]3)?6Q3TU7E:3]@WWY M070YZ!VYUZK]5/?.TYQUJ3GOG_CG^\$@#(\AH4GKPDIS%'$?/6O3VU '9$ M5MK@'O1S&:A5T:IK4KP'Y?%9S]9? Y.B"3Z:O_*'UW[#_-0?SLIF_P]]^>GQ MD:H5P]+(88E2WL4 $T>5[7PY,')3=),+:; W+2[7^ 4$R@;@_:649C^P O4W M5?P;4$L#!!0 ( #&!_E@GPRT*P ( (@' 9 >&PO=V]R:W-H965T M$G\<<[U/ MLZ0E[K=WT3\Y[:AE3C5,)?_)%B8?>T./+&!)U]S,,\- MDP]D5AT((I?D)?!I"H8RKL^0=C=+R>G)&3DA3)#ON5QK1.N1;S!IN[2?U0E> M50F&SR3X=2W.211T2!B$<0M]>IR>0H;TKJ-'+?3TA=4IKAZTTGUTNK$[;.P. M7;SH);NWS.1DZO875*5@H-:@->\OY=MQ]\;//W+8.E;Q3LD?=1 MXWUT+#IZK^LS"]HP+!F +:H$$RMM#RD\9*"U/>=XH+D;Q<*T%IDL2@X6G=6[ MUWJ,J\7[;G%;;#=)KQ<-AB-_L^_F(:K?[PWBQZCT$#7H!D'0H![ICQO]\5'] M5SM5C[1FQUSY'_WQH?Z+8:_[1'\+JC^\N'BB_Q 5A8,#_?Y>V;-OU#>J5DQH MPF&)O.!\T/.(JNI^U3&R=)5P+@W>.]?,\:D$90$XOY32[#JVN#:/;_(/4$L# M!!0 ( #&!_EAAZ;P[7P, &,, 9 >&PO=V]R:W-H965T;I':&.T-JL1IOA?RJ5@":/.495Q-KI?7ZTK95 MLH*XDSNV%)60Y<,<&)A,7$ MF@TNX\C$EP%_,]BJUI@8)7,AOIK)33JQ'),09)!HPT#Q;P/7D&6&"-/XM^:T MFBT-L#W>L7\HM:.6.55P+;+/+-6KB36R2 H+6F3Z06S_A%I/8/@2D:GREVSK M6,+\*\&N 7SI322E] MB*FFT[$46R)--+*906EFB4;YC)MC?]02GS+$Z>FUX%JB^62F%&A%*$_)+:-S MEC'-0)&S69HR\NF8X.R=G,6C*,G5.WI)/CS$Y>WU.7A/&R5\K42BD M46-;8X)F&SNID[FJDG&?228D=YC.2I'W/(6TB[=16*/.W:F[5;_W"* W&C( MU9<^\RMVOY_=U)=+M:8)3"PL( KD!JSI'Z\&H?.NS[E3DL4G(NNXZC>N^L?8 MT555>PE*,[S>@",J.>-+9>XS/"6@%!$+@D9GY2K6JX(G(E]G8**3^EQZ;WRU M>5AN;FKP9AH$WG TMC=M-P^CPC 8^MVH^#!J.' T7G M#O(YR-Z"E8VCO:/\*K]OJ-RR;@B&2P0BB4&BZ"L6MIJHL6Z;/+F0F/+6 Y7^!4 MT@3@\X40>C&PO=V]R:W-H965T<:_NFMY+J2<\! M#'DNN=!];VY,=>[[NIA#2?6IK$#@RE2JDAJ_6W6Y7WY,)P)N!6$;TH2ZI>+H'+5=\+O=FU*2UP<_S*?E5[1R]CJF$@^2.;F'G?ZWID E.ZX.9.KJYA M[:=C^0K)=?TDJR8VPXS%0AM9KL$X+YEHWO1Y78<-0)B\ XC6@.A? ?$:$-=& M&V6UK2$U-.\IN2+*1B.;'=2UJ='HA@F[BR.C<)4ASN0W8@G"2,5 DQ,R:O:2 MR"G97#@<@J&,'V'$PVA(#@^.R %A@MS/Y4)3,=$]WZ 6R^@7Z[R73=[HG;R? M%^*4Q,$QB8(H<< '^^%#*! >UO#X+=S'"K1EB-HR1#5?_)*PUJ"5[^\4.8!I]LZWL>> MW]$5GB4#BE'NW,,&GM9PVP^6>91UT[.>O]RTX(CJ=,,_46^T):VV9*^V1[S] M]HQ52A:@G>H:@LY&WC#,XFA+W6[4618&;G&=5EQGK[@K)AC>N0F92>D^_9V= MK-%9T-F2Y@B*TZY;6MI*2_=*^S;6DH,N0!1 *,&PO=V]R:W-H965T>[/ODJU4][H$,.2AXD*/O-*8U=#W=5Y" M175/KD#@R4*JBAK[5FDBUX8S =>*Z'55 M4?4X 2ZW(Z_O[00W;%D:*_#39$67< OF;G6M<.>W+ 6K0&@F!5&P&'GC_G 6 M6WVG\(W!5N^MB8UD+N6]W5P6(R^P#@&'W%@&BK\-3(%S2X1N_&HXO=:D!>ZO M=^R?7>P8RYQJF$K^G16F''D?/%+ @JZYN9';+]#$"1? M:R.K!HP>5$S4?_K0Y&$/@#S=@+ !A$\!\3. J %$+[40-X#XI1;.&X +W:]C M=XG+J*%IHN26**N-;';ALN_0F"\F[#VY-0I/&>),>BDV((Q4##1Y3\9%P6S] M*">7HKZ$MIJG&1C*^!EJW-UFY/3DC)P0)L@5XQS/=>(;=,42^GEC=E*;#9\Q M&Y$K*4RIR4P44'3@L^/XP1&\CREH\Q#N\C )CQ)^78L>B8)W) S"N,.?Z*V*O$Q]G16J+7UTENPHV:1!+TS\ MS7X5NG3B0YVL2^?B4&?6I3-H=>I4^'L=K *U=*,#0[41U_>VE;;3:>R:\A/Y MI#^<]COD&4ZS>OC\H:]'X1552R8TX;! 4^@^-EA5CY=Z8^3*]<^Y--B-W;+$ MB0S**N#Y0DJSVU@#[8Q/?P-02P,$% @ ,8'^6!TY&;$\ P LPH !D M !X;"]W;W)K&ULK99M;]HP$,>_BI55TR9M39Q M AT@T;)':5+5A^W%M!S<:"/D M#[4"T.B^9%R-@Y76Z[,P5/D*2J).Q1JX>;,0LB3:#.4R5&L)I'!.)0OC*$K# MDE >3$9N[E).1J+2C'*XE$A594GDKW-@8C,.+IAROVC3V$8!RBNE1=DX&X*2\OJ?W#>)V'(P.MT.<>,0MQW2 M1QR2QB%Q@=9D+JP9T60RDF*#I+4V:O;!Y<9YFV@HM]MXK:5Y2XV?GKP7HMA0 MQA#A!?K(->%+.F> IDJ!5N@U\@8ANI&D $Y*0"]FH EE+\W[V^L9>G'R$IT@ MRM'-2E3***E1J V<72+,&Y#S&B1^!"1%GP77*X7>\@**#O^+P_XX/B 0FJSX MU,0/J3F/#RI^JO@I2J)7*([B7A?08?<9Y,8=._?D $[B=RIQ>LF_[=2,JIP) M54E WZ9SI:4Y(-^[MJ%>I=>]BKTUSM2:Y# .S+6@0-Y!,'G^#*?1FZX4_">Q MG83T?$)ZA]1]0EZA.2PIYY0OS8EFA.?0%7[G=36*,DS@=A7?;$>V; MX4&"AYDWVV'M>];^D:S3_&=%%;5W6.,3T2 MT7P1T/XQ;SOM$P>R2IF2?.CB0&7CRQ M^]E^RC#&O5Z+LM-LNTAV0 <>=' 0U%^<1Y;J8#]7_:Q=!%U&T: ;=.A!A\>" M/E6GP[WEVX"'+';HW1=HH[U1I;]!"[C!*'SE6>.L+BX^%?KI. M&ZUT9UOC]F'JM,K:Z0VWVH(2Y-)U2PKEHN*Z[A#\K._(IJX/"?^8U^W<9R)- MW2K$8&%&PO=V]R:W-H965T+&>V ==!NPPI$#3I]J'8!UJF M;:X2Z9%4W.S7CY05R;)I9BZ4+[9(W?/XN?.=[L31EHMO%&!BMP/($S\ E/F34;5WIV8C'BI M-S[3U5J9#7\RVN 5N2?JR^9.Z)7?L"QH09BD MG %!EF-OBJYF 32 RN(/2K9R[QH85^:.S/'DLQX_B==J/782SVP($M4F;_Q7@E]EVJ0XP6X ;IC!; MT7E.P%1*HB2XL.Y]H(PJ F[IDH"WUT1AFK_3VU_NK\';-^_ &T 9>%CS4FI2 M.?*5UFE^S<]J3>]WFH(3FGXOV24(X2\@@$%D@<_<\&N2:3BJX&$7[NOH-"$* MFA %%5]X@F_G[<6M3C=;B+[>:GMPHT@A_[+YNB./[.2F2J_D!F=D[.DRE$0\ M$F_R\T\H@;_:/.^)K!.'L(E#Z&*?S+A4-@=WJ*1"F:?&XP2%03)(1O[COG2K MV7 X;,PZHJ)&5.04-2K1G/^>H)?/U$BCD1UEQQDIR;*SV1=?Q-&G^3UZR9I,\X M]$36B<.@BI"*5BLTL*=BVDA*>ZN8]%A %*:',FU6,$%V MF<-&YM =N:KW$:&[C#09XZ@:)]&YV=(36<=G!-MN#%^S;FKVGD+1%ULW%GN3 M"?JAVJEAG7R#831 !VGYLEU76#L/(&>;/:N":JI]$4DR"(ZT6LS"*( GI+8M M&[E[]H/ "\)P09P%Y"8Y.VUZ8NNZW X$*'K5$G+.&V?'HB>V;BS:J0.YQXZ3 M)13;'MG#Z# K7S+KRFJ' ^3LN><54'*D(4Z.6I#-"L)3E=YV;^1NW_I-4;\' M,C KA2 L>P+3Q=^Z+^G7V!=:DIOW["SJB:T;A79@0.FK5I1S'CD[%CVQ=6/1 M3B7HA;'D5$4-CQ+P H7#P6&>VLQ@&MH3-6CGAL#9B\^JJ)IJ_TWL(H"'2BU6 M<7(@T]\[=S"'/I^P6%$F04Z6&@0O!]I/L3M'V2T4WU1'$7.N]'!77:Z)[E#" M&.C[2\[5\\*<;C2G69/_ %!+ P04 " Q@?Y8>$&?0'\# *#0 &0 M 'AL+W=OY 5#HMJ),3IR-4MM+UY7%!BHL+_@6F'ZSXJ+"2@_%VI5; ;AL0!5U \]+ MW H3YF3C9NY*9&->*TH87 DDZZK"XOL,*-]-'-^YF_A UAME)MQLO,5KN ;U M<7LE],CM64I2 9.$,R1@-7&F_N4B-?:-P=\$=G+O&9E,EIQ_-8-WY<3Q3$! MH5"& >N_&Y@#I89(A_&MXW1ZEP:X_WS'_K;)7>>RQ!+FG'XBI=I,G-1!):QP M3=4'OOL=NGQBPU=P*IM?M.ML/0<5M52\ZL Z@HJP]A_?=CKL 32/'1!T@. 8 M$-T#"#M ^% /40>('NHA[@!-ZFZ;>R-)VCYT]?H*>(,/37AM=2.Y)C5^G8301NT<4Y M:^,,[HDS1.\Y4QN)%JR$TH+/A_') -[5FO7"!7?"S8)!PC]J=H%"[R4*O""R MQ#-_.#RTI?/_O"]^V?N!&&&_BL*&+_RU590365 N:P'HG^E2*J&/A\^V-=!Z MB>Q>S)%Y*;>X@(FCST0)X@:<[-D3/_'>V IP3K+\G&2+,Y$=E"KJ2Q4-L6=[ MU<%M=9X]20/??X-6[4ZG9 4O$=-7%%9H"6O"&&%KQ%=H"X)PV]Z;#;I\;-W. M29:W9$E#9N[,FRSVHL0?NS?[!3FU"N,@_F%UH'3<*QT/*GUP-$)[--K$BT^< MOPKT-7\8XMQBY8^.K?+6*MZWBD(_/DK78A5&H6=/-^G338;3+;[51!*3K2W+ M0?!CE\@YR?+D1(TC51>G%KXW\E*[7J->K]&@7KK/T5T,TY>\$,"*[PB77_1] MKWLP9;T?!]D>*^ YR?+1Z7)*CB4\M0E']RRXM!

-)!OIF&CS#TI,-%B5> MFAQM0XM5D+Y^?;0-'\2U^!E7JXJ[U]Q5(-9-5RU1P6NFVANZG^T;]VG3KQ[- MS_S+N6^9SW6CW_;E/^C;KX3W6.CC7R(**^W*NQCI^HFV\VX'BF^;UG+)E6Y4 MF\>-_E@!80ST^Q7GZFY@'/2?/]E_4$L#!!0 ( #&!_EA$U6S<90, /T. M 9 >&PO=V]R:W-H965T_'CO)0K-D40O92QL[=]]W]]W% MR4VV7/R0*8!"MQEE MP26HJ_6YT"N[0HE)!DP2SI" 9&K-!B?1L;'/#;X0V,J=:V0RN>;\AUF$4H19C,Z8PFQ%KBF@F92@)'J%9G%,3$DQU;>+ MOC0%?KX A0E]H2VN+A?H^=,7Z"DB#'U.^49J+#FQE0[/D-C+,I1Y$8K[0"@> M^LB92B6*6 QQB_^BVS_H\+>U+)4V[ITV<[<3\/V&'2'/>8EZ,SXEJ&J:F6Z:3RH%T=(ZWSYH!'2F M()/?VYJAH//;Z"+7> E32Y]_$L0-6.&S)X/ >=U6B3[!%GV"13V!U6KF M5S7SN]##6<:%(K^+)Q9N];M% N()2@@C"A E">AGMBH]1"(GW4/?3D MS0NF82V)AAR=X1S:DOLP1CTQUN0-*GF#QY!WV"9OT$AV%#3D[0SG4'GW88QZ M8JS).ZKD'3V&O$&;O*-&LD'S8>X,YU!Y]V&,>F*LR3NNY!T_AKRC-GG'S62= MAKR=X1PJ[SZ,44^,-7F/*WF/'T/><9N\QXUWP[!Y.'2&:U6;YB')O?SXX.1VT["_T;%>,8G_AB\'P(Q8K MPB2BD&@JYVBDVTH4PU:Q4'R=3Q/77.G9)+],]7P*PACH^PGGZFYA"*J)-_P# M4$L#!!0 ( #&!_EAYEXM%Z0( $\( 9 >&PO=V]R:W-H965T':0\F7(A5 M)V:V@?;?[SH)$26![6$OQ([O.3[G7L>7P5;()Y4#:/)<\%(-K5SKU8UMJRR' M@JHKL8(25Q9"%E3C5"YMM9) YQ6HX+;G.)%=4%9:Z:!Z-Y'I0*PU9R5,)%'K MHJ#RY0ZXV XMU]J]N&?+7)L7=CI8T25,03^N)A)G=LLR9P64BHF22%@,K5OW M9I28^"K@.X.MVAL3XV0FQ).9?)X/+<<( @Z9-@P4'QL8 >>&"&7\;CBM=DL# MW!_OV#]6WM'+C"H8"?Z#S74^M!*+S&%!UUS?B^TG:/R$AB\37%6_9-O$.A;) MUDJ+H@&C@H*5]9,^-WG8 [C!$8#7 +Q_!?@-P*^,ULHJ6V.J:3J08DNDB48V M,ZAR4Z'1#2M-%:=:XBI#G$YOLTRN84X^/..Y4*#()9G6!25B03JKYV/0E/$+ M#'N4<\QPMZ MX*/3\#%D"'A+W3&T2JZJ?U3KLC/VYG2$L_< MKSZ#-6/0SVB^PQNUHAD,+?S0%,@-6.G;-V[DO.^S^Y_(7IGW6_/^*?9T) I3 M:%I_89@ "9QJ/ S*&'!=&]Y:\JHHC27QB9-DA KN=EWU0UR72].VJA7IJAG!OXS#8V[=6UQ/D.F&_N+ 5%_XEEV5U8@AG=,8X MZY<7=G:^=J_C WG=H#B)C\B+6GG127G37$A]J4$6!%N"Q)*72\(!;\33@J.. M%O\Z= X$=X."H\6.6\'Q2<'?= ZR3U'&UL MO5A=CYLX%/TK%ENM6JD=,"1 9A.D;:*J4TW5T:2S^U#UP0$G\19PUC9)VU^_ M-C!\) XSD;Q]2?BX]_@>^]@<>WJ@[!O?8BS ]RS-^;W&&^!7= MX5R^65.6(2%OV<;F.X914B9EJ>TZCF]GB.16-"V?W;%H2@N1DAS?,<"++$/L MQUN=G=,WMD-2D(RG'-"<\#P>F;]":_G MKJ,2RHB_"#[PSC505%:4?E,W-\G,I0I)U_%N#6DV; M*K%[_8C^KB0OR:P0QW.:_DT2L9U9H042O$9%*N[IX3VN"8T57DQ37OZ"0Q7K MCRP0%US0K$Z6%60DK_[1][HC.@GP7();)[C/3?#J!*\D6E56TEH@@:(IHP? M5+1$4Q=EWY39D@W)U3 N!9-OBE@OP\L4K\ *0''S>TH*C/.%36\@B%)0=UPV^K1ITSS3XH\!J[C MCC3I\^'T!8YE.BS3O7ZZ+:DW_-V&OUOB>6?Q),V;G M62'$*\.56!H ;@3/^ M54>N0AOIT=2CWWZ#O_*&C:@BL1]QKB'M#Z-%G*E * MY,3F0@XDR3=@19G$D%<<%'F"&1!;#.8,)T2 =R@F*1$_=%U2M>.7[:A58Q]! MSPE=?VKONV1U88$;>DU8C\:HH3$:I'&+.;^6$X4Q-7H[RM3BH*NR@AEWFG\# MG7'H'%6I#1N%H;[*<5/E^!F=G4BMO0:IK/@Y!8]/*H%JRAQWJR[,#R9C?<%^ M4[ _7#!F&;BE* =?/N)LA9EV,@QB7#H9#('UZ 8-W<#H*A"8)&X(K$<\;(B' MOV@5"$]UZ$@93H[DJ@F#[DA]"71RG30T)H,T[O&>IGM5?EWID](=Q+MT! V! M]:A#I_V".T;%6\,9XFX*K4^^8U_@,T<^KD9^/:#1&JNG/OD)./X&Z,("KQ/6 MK[6U&G#P@][S6D/:'(:Y>(#^#Y @-H?5YMT8(^F;U M:]04F4+KDV]M$1PT']$GG7([POV'$MDE>]DO!<- *-.H3*ZV7X(388;0]8[E MJXD*QV?,+&Q=#GS"YJC*GEYW!T$N'CI#:'W*K2."$[.Z->J(3*'U]_2M)7(' M74?TD*-,[:Q^XJ04)$@(CVF1:Y598W5WIFIK>+S1TH:Y$_](FW;G+$8=A'U$ M;$-R+K=]:YGG7 52VZPZ6ZIN!-V5QS,K*@3-RLLM1G*&J0#Y?DVI>+Q1)S[- M"5_T'U!+ P04 " Q@?Y8[ABH52T# !B"P &0 'AL+W=O*;!5$7!].TA"K6:!KW@;N&<+W/K%L)D4K(ESM!>EF>:9F&+DO$"I>%*@L;% M-'C?.SCL]9V#M_C&<676QN!2F2MUY28GV32('",4F%H'P>AS@TP%DN&"5L.=J]0F;A(8.+U7"^%]8 M-;91 &EEK"H:9V)0<%E_V:^F$&L.Q,Y+MVIS*RF74Y^-IFAY$K#,*@AGX(#/,_O0/*:\VN?@NN<.X$_!S)7>A'VU#',4#N)P=P];KMQVX_;9H M?8_;?P37U^9$&JLK$JB%'U_( $XL%N;GIK1KM,%F-'?O#DS)4IP&=+$,ZAL, MDC>O>J/H70?70?-1X7:%,_:&6J+G*> HENW7,-Y'MAKNNF+:HQ6T' MM6%+;=B)]:",VW".&1:ENZW;I".MJF4.,RRMUY<[Q&$KMDW,.Z,]L:3(5P.1FG M&C87"*Q0U6;QU(%'/K![$&Z2..['D_!F ]V]EN[>O\N$KCHZA?0[%=(9Z(E5 MWV_3V']6A>R_ -=>=/\L1/]+(TWDX9I(AL-HLT9Z:^]8[U]4@M2R+(AXISRZ M0SRUYO%]"O&S*J2!>V:Z]X]@K_/=>E&)]/_^']D?CQ]H)%QK>PK42]_<&4@= M:MT!M:MM _F^;IONS>ON\Y3I)7$$@0MRC7;'I$Y=-W3UQ*K2-U%S9:DE\\.< MFF#4SH#V%TK9NXD+T+;5R6]02P,$% @ ,8'^6(6&ULO9UM;YO('L6_RLB[6K52;FW MQDXWB=2:>5IMME5SN_MB=5\0>Y*@VN +.&FE_? 7,,EX#)E >WSWQ=8/S.\, MS@'^S&'@["%)OV1W2N7DZWH59^>#NSS?O!T.L\6=6H?9FV2CXN*;FR1=AWGQ M-KT=9IM4A49-OU.DR_O5>K MY.%\X P>/_@4W=[EY0?#B[-->*NN5/YY\S$MW@V?*,MHK>(L2F*2JIOSP3OG MK9QZ98-JB3\C]9#MO2;EJEPGR9?RC5R>#T9EC]1*+?(2$1;_W*NY6JU*4M&/ M_];0P9-FV7#_]2.=52M?K,QUF*EYLOHK6N9WYX/9@"S53;A=Y9^2!Z'J%9J4 MO$6RRJK_DX=ZV=& ++99GJSKQD4/UE&\^S?\6O\0>PU<]YD&;MW [=K JQMX M71N,ZP;CK@TF=8-)UP9^W<#OVF!:-YAV;3"K&\RZ-CBM&YQ6=MC]_:H_?A#F MX<59FCR0M%RZH)4O*@=5K8N_>1279K_*T^+;J&B77URI.$I2$JCKG/R+O%LN MH]*#X8K(>+_EI]>1JM5 ML6QV-LR+;I7PX:+NPOM=%]QGNN"1RR3.[S)"XZ5:MK0/[.U]2_MA\7,\_2;N MXV_RWK4"?]O&;X@W.B'NR!V3SU?7SZY9^S;MC/ LFP/2&]L'0SY_(J_JO MUP9CF%7C=DR@%@7&>1$C[)C+,.V$D1TPHVF%<=LQAIV\ITW,J[C>,]S?B_?D MPPV9IZK8N@@+%]$JRK^1OZLO9*[6V7_:MIH===Q.+0^";[--N%#G@^(HEZGT M7@TN?OG)\4>_MED5"0N0,(J$,22,(V$""9,@F&'G\9.=QS;Z16WCFT<;;](H M7D2;XI"Q";\595">5=MAFZ-W8+\"EU78_<7$&XW.AO?[3K6J]W5J%T6*5&1( M&$?"!!(F03##@9,G!TX #ARW.7 'GNSYP7&:%K3*][5@)TF*E&1(&$?"!!(F M03##@_Z3!WV !R=M'O1;#.&,&R:TZOUX-=%"E2D2%A' D32)@$P0P'SIX<. ,X<-KFP%FC M-CNTGU6ZK_U>E*-(.8:$<21,(&$2!#.\=_KDO5.K]ZI!*QEG>;HMG792O,Y5 M(9.33V&N3@B]N5'56"KYJ-)%L41XJ]J,N%-Q1OO6>#.:.<[I_G\'WK1VK:\W MOZ<'%-D#AH3Q]M693LT5$$A-"8(91G1&>A1U9+7B7]6@NEJ2\%ZEA[#Q"*BL1-%,]^V-X3M6][W+,E4<:.?;-"WV-/#(ZY= MJ+>ENJE2J"J#TGC[.HR]PYT95%6B:*:A7&THUVJHWZ/PNJSG(M6^AW(;OXDW MF7FN<^@FJTIO-W53I5!5!J7QMG7PW=GA:9" JDH4S723SC\0>4%D!IM*8YSIX+II,#"S"H)H?2!)0F4333GCK/<.R!!F67 MY+<_R=^7:GVMTM8HSD[H[4UHQ &E42B-06D<2A-0FD313 _K1,29'"5C=I # M\G,H+8#2*)3&H#0.I0DH3:)HIK%US.+8MNKDRB%BC(H MC;>MPGC2/"F"IB8HFNDFG9LX]N!DYZ83\D<2+RR.FC5",]=WFHZ")B7=1"E4 ME$%IO'45&AN%@(I*%,UTE$Y#''L<\M*@S6DS?QVY32M!@XUNHA0JRJ TWK(* MCMNR?VSCC-<>YSQ.&+3YJ.ZJ?%[>$T?U8OM[]-/&W%_T )S6ZX* ML'>WKS]:NN:<-B[)XE!1 :5)%,WTAPX<7'O@4)]FOKM-E2JC5^O@B9W5]QP3 M2@N@- JE,2B-0VD"2I,HFNEFG7:X[E$&3USD(/T<2@N@- JE,2B-0VD"2I,H MFFEL';RX]N#E<[S-U)(L=KX.[\-HM2L1OY%MO%3IXS>/5V^UFMQK'BR=XF2@ M<;R'!BX=52E4E4%IO*89A=+HM''1K8"J2A3-M)P.4UQ[F/)L94#^(1V"%CN] M]RX5&K1 :11*8U :A]($E"91--/?.FAQCQ.TN-"@!4H+H#0*I3$HC4-I DJ3 M*)II;!VTN/:@Y4HMMH6GJYG@K09&#N7/H;0 2J-0&H/2.)0FH#19T\R:;;]D M,YVIC>KH4&-U : MA=(8E,:A- &ER9HV,W)-WWO&M#K><>WQ#E/%^56X(JPXTIRZ%QF+S*&T $JC4!J#TCB4)J TB:*9 M]V;149=GC[JJ2631WB2RZS"+,K*[=5AY?=%]F$;A]4I5%QRU6=PNT-?B4%K@ MM<^'&4T.QM$Z+L>@O>-0FH#2)(IFVE(G;)X]87L\'?MPK]*XO 2.L"@.XT5Y ME5M53;RZ^L ^O=[[7L9+]95R0'*#>P]X7#WAC. M:R\CG,,Y>ET79-#^<2A-0&D213.-J8,[SQ[<749QM-ZN[64#-)V#T@(HC4)I M#$KC4)J TB2*9II8IW/><=(Y#YK.06D!E$:A- :E<2A-0&D213.-K=,YSY[. M789?J[WS(HFS9!4MPW)*U$K5=U@ID'_(D4E!9 :11*8U :A]($E"91-'.+ MT&&?-SM.V0%-_:"T $JC4!J#TCB4)J TB:*9QM:IGV>?4O:]94?[#>"<::/N M@.9Y764I5)9!:1Q*$U":1-',^\[KJ&YLC^J.6G@4L%ZSFNQ][;OOAM("*(U" M:0Q*XU":@-(DBF9N+3I!'#M'*4K&T&P02@N@- JE,2B-0VD"2I,HFFELG0V. M[3W'Z&1'I1&H30&I7$H34!I$D4SG;WWR*?Q<6H):& (I050&H72&)3& MH30!I4D4S32V#@S']D=) 6H):'0(I04U[>4!D:X+,FC_.)0FH#2)HIG&U('? MN%O@9RT;H%/RH+0 2J-0&H/2.)0FH#2)HIDFUDGA>'J%D=)22 M8P*-\Z"T $JC4!J#TCB4)J TB:*9QM9QWL0^(? [2XZ:VD@)W,-+,>SRO2W; M499"91F4QJ$T :5)%,UTH\[@)O8,[JB%1]]+,>Q][;WOAL9Y4!J%TAB4QJ$T M :5)%,W<6G0P./&.4Y1 A- &E213--*;.]2;V7*^E/NEV*8:=V]N/ MT#@/2J-0&H/2.)0FH#2)HIG.UL'@Q#].+0$-"Z&T $JC4!J#TCB4)J TB:*9 MQM9AX<0^K1!02T!C0R@MJ&F-.;'- 9&."S)H_SB4)J TB:*9QM1AW\0>]OVN M\ERE&4F>=KK6 @(ZIP]*"Z T"J4Q*(U#:0)*DRB::6>=&4Z.> M$;Q[\DU^IPZ>?O/,8Q/]EH?%M3SNSMZWOG[N)DJAH@Q*XW[;8P(;#]D34%&) MHID.U!F=;\_HGJ\4NCW]QH[ONXN%T@(HC4)I#$KC4)J TB2*9AI/>VD29=DVC!>JK@JNHU51/Y3/?"K;9:0H&<@B6=4?MAH>&LE! M:0&41J$T!J5Q*$WXS8?@S4:-YQ9+E*CI9)VU^?:L[<#)X=-EEOO%[J[^;37N MM%&AC6>-L9VYO1.]'=E)E$)%&93&VU9A,FN6MM#T#$4SK:;3,]^>GCU7VI8C M8MLT(8&*DW445Y>SF\O:JV!HS :E!5 :A=(8E,:A- &E213-]+V.V?SCQ&P^ M-&:#T@(HC4)I#$KC4)J TB2*9AA[JF.VJ3UF^\':8=J2"S5&=^;V/O3U;2=- M"M5D4!IO6X-FF ;5E"B:Z3,=IDWM8=H?*K]3Z:HP5+:W]\14#W;IOCM9*"V MTBB4QJ T#J4)*$VB:*;Y== V/4[0-H4&;5!: *51*(U!:1Q*$U":1-%,8^N@ M;6H/VGZT>O :PRMNXP1Z;N]#;]]VT:1030:E\;8U:*D>H(D:BK;SV3"[4RH/ MPCR\.%NK]%;-U6J5D47IDW(ONO;\%9=ANEM%&=DI6X*J=&;:5&$I>7\Y<;(Y'Q2'B^LDSY-U]?). MA4N5E@L4W]\D2?[XIA1X2-(OU>I<_ ]02P,$% @ ,8'^6,!!7YRK P MT@P !D !X;"]W;W)K&ULK5?;CMLV$/T50@V* M+)"L[A=O;0-K2T43-.DBF[0/11]HB;:)E4B%I.SD[S.4M%I;9IQ%ZA=;),\< MSAR..*/IGHL'N25$H2]5R>3,VBI5W]BVS+>DPO*:UX3!RIJ+"BL8BHTM:T%P MT1I5I>TY3F17F#)K/FWG[L1\RAM54D;N!))-56'Q=4%*OI]9KO4X\8%NMDI/ MV/-IC3?DGJA/]9V D3VP%+0B3%+.D"#KF77KWF2)QK> ORG9RX-GI"-95HATA)%!1UOWC+[T. M!P; 8S;P>@-O;!!\Q\#O#?SG[A#T!L%S=PA[@S9TNXN]%2[%"L^G@N^1T&A@ MTP^M^JTUZ$69SI-[)6"5@IV:9U@PRC82U42@^RT6!+U&[YMJ!4.^[F8D^JM1 M4F%6 !)!;J(E+O.FQ.U1 VH@N1M(7J9$85I> =NG^Q2]?'&%7B#*T,]1NX9TE M?-NP:^0[KY#G>('!G^7SS7U3./]O]^RG=S\2PQ\2R6_Y_!\ETE,._'N[DDK M5?"?Z; [NL!,IZ_'&UGCG,PLN/\D$3MBS7_]Q8V<-R7L'[^">7\LIT#AU%U%+HJK*;!T$23NW=H;ZG(#_667<( M2D]!X63B'X,R RAVW %T%&S;V4, YW(U9J,L M- $C=^*YT2@33< D<2-OE->9"1CZKA,ZYHR,!SWBLWHL>55!;83RG3\@\KFA M.UP2IB3"@LJVB@I>] >PH[T2@:]DK-ZI;1L=- _F4')Z3%&ON-%T>B* M6AJ H1OX<3)*M=3$Z/D3WW='>A@98S?VXI$B]D&35A&Q:;MCB7+>,-65V6%V M:,!OV[YS-+]P;Y:N83Z%AKWKKY_HNV[_'18;"AE6DC5LY5S'X*[H.NANH'C= MMH@KKJ#A;!^W\-%!A ; ^IIS]3C0&PR?,?-O4$L#!!0 ( #&!_EB(%2JU MD , ($/ 9 >&PO=V]R:W-H965T?:/L>/.SMP<2=C0A3ZE29,SHU8J6QJFC*,28KE!<\(@R];+E*LX%7L3)D) M@J,"E":F8UF>F6+*#']6M&V$/^.Y2B@C&X%DGJ98_+XD"3_,#=NX;[BFNUCI M!M.?97A';HCZDFT$O)DU2T13PB3E# FRG1L+>[J>Z/@BX"LE!]EX1GHDMYS? MZ9)NN:']Z0:SUCSA3R1Q7]T*&,G$!SF4O&T D,/4LK*7_RK MFH<& 'BZ 4X%<$X!HP< ;@5PGPH858#14[LTK@#CIV;P*H!W"G ? $PJ0*&^ M6HDH0Y]CGDO,(CDS%71) M$YMAE?ZR3.\\D-Y%GSA3L41+%I&H [_LQWL]>!.FHIX/YWX^+IU>PH\YNT"N M]1HYEC/JZ,]5/_P3%@"W'X0'3\_N=LW&_W5^]7_9UX^-_3>R2[33HX1;.],M MZ-S'G+E@$0KHGD8$+(8VM4^_+VZE$K"7_>CR74D^ZB;7^_M49C@DV9[WK$GU(LF!(LN609*LAR=8#D1UY9U1[9]3'[B^8HF\BFN3ZG$,\ MT]N71+!%P>$)GJ&A(A&"O36\0SFC2B(XHZ6"[V"X+C.5V<9%-GVV[WUK9NZ; M#NGMSW,=TDYGNY;^.TZZ[(CK"%NUPR8=8>N!AG DV+@6;-PKV"8780PW"L2W M32V0U"M=ZM:0IRF<085H71+U\C]WO0])%@Q)MAR2;#4DV;HD\QHNL>K6NEY<%&722?NE/0WLCO:E/5V5Y>!?^K(X MA2ONCL)IFI MI+(N)N!3419\Y8OB65%OW'(%U4OQ&$.-3(0.@.];SM7]BTY0 M5]W^'U!+ P04 " Q@?Y8FJ>2-UT$ "K%0 &0 'AL+W=O-,+EB", M(6$A21"%]5B;FG>>Z4B!%/%G"$=6>D;2E!4AS_+E/AAKAM0((O"YI,#BYP!S MB"+))/3X)R?5BCFE8/GYQ/YS:KPP9H49S$GT5QCP[5@;:"B -=Y'_)$,P^B003TL7 M??SP"7U 88(>PB@2W]E(YT(OR:[[N0ZS3 ?K#1UL]$ 2OF7(2P((%/)NLWRO M05X7_BB<8IV<,K,:"7_;)QUD&S?(,BQ'H<_\>G%;9[][]DKSK"+%6*G M?';C"EG55\B44IQL0&0-CE:OJ(Q;X-=T>'K$-$!??A>4Z)Y#S/Y6K8YL?D<] MO\R4=VR'?1AK(A4RH ?0)C_^8/:,GU2A:9/,;9/,:XFL$D2G"*+3Q#YY!)]L MDO!?$1M6BI-?CB>6P5)NWXQ[F'++RG.86!UKI!_*?J]CS$N,6\?8G4$5XV68 M7GFN E$QO5N8WFTT_8]=:AV\ /5#8?2-2%:B HSVH+,XH3:NDAE$S M^1J0VZC<>Y=02V05/_8*/_8:_?B9)+=>O(O(*P!R0RHJ/:'HRP/$*Z#*?=W( M]]Y]W2:9VR:9UQ)9)2C](BC][YR<^VT&L4TRMTTRKR6R2A '11 'C3MKCME6 M'+I]$$?F *TIB1&<-IHX /K/B%SD,%6@!K7D6L]8*HQ]D;"NP'@JS%"=IH>% M$X:-3OCFE7R#LDS/;I"7^XG)<^D":$B4'LL4ZI9+EB'^+GQ61UG=&LI5H.I< M7AW5[Y=1%<^9QOD,;[1?XG+.:A#-"^.O ;G-VKUW)[;%5O5EZ3YD?N6DQ(3K M?"Z6US+=>T])R%ECG6MF?&^.;)7-;97-:XNM&AOK'!OK.U>[7(&V0MDFF]LJ MF]<66S64YTNEV7C=F7S>R^V$R%H4OF+#9<4NNX>@C0@I5Y>ZG+N<1[O]>N96 MP>I)V57 ;,>L)V\5;FB\G;[/=S.S^7)V]D51P7YI,-ZIJ5$S_*L05P%1E#6O MD2DS5R\UGV*@F[3KQ\35BRJ$(UF(JH],7>M*L,YB]<+)+6U\KPCF)T\&PO=V]R:W-H M965T;)'ZOH_G0A[QS Z,?Q5[ (D>BIR* MN;.7LKQR79'NH<#B@I5 U9LMXP66:LAWKB@YX,R0BMP-/&_L%IA09S$SG"3S1U/6P0YI%)+8/5W#RO( MN M$#6$Z*4KC!J"<=VM?3>!B['$BQEG!\0U6JGI!Q-]PU;Q(E1OE#O)U5NB>'*Q M;G*.:8:2HLS9-P"T! I;(M$ZQU2@MVC%BI)1H%(@MD6]E.1!;6$! KV.06*2 MOU'TSWOWJ#7J%"$6_[EDE%%7,7*GLUU:X:6/KLK8U>,+6$-TR*O<")32# MS,*/^_GC'KZKXM8&+W@,WC+H%?REHA'-G?^V^K)OU[] M)!AANY-"HQ<]LY/TID%?;J'8 /_#EN1>&5T8KT2)4Y@[JO()X/?@+'[\P1][ M/]LB/*18/*18,I#822ZB-A>140^?R$6LSB*%[.0@HYB(-&>BXH"^?%"OT8V$ M0EA3% V9HB'%XB'%DH'$3E(T:E,TZCTN']4EH 1.6$92M&GRE#(A;?FHI<9& M2G_Z[Q>CR<"[W:(75 MSGNV.O1*_=.M-Z18/*18,I#823XF;3XF_VMUF R9HB'%XB'%DH'$3E(T;5,T M[3TR-U2"4GVZ(M3TT=$Q#;VH4Q(L&'_:*0GGF+'7P2063#BQEX3+UK_+7O_T M-3&5:@]RD!6G2-T;2KT+L1 @K5?#RS,CWIY[; $%TU''90OHW&<+:#3Q[4[[ MWO?+MM?K]G7!N"1_8=,CJ:LT51\!U2I5F!.<(W7\[+=B[_GR;\%,.M&)+9CS M^F\#1=..X^Y1PU$ WYE.3ZC-6E%9WQC;V;:;O#8]5&=^Z5^M?,M\K+M/T^!\ MEZ];UUO,=T1U)3ELU5+>Q43EB-?=8#V0K#3MSH9)U3R9Q[WJH(%K@'J_94P^ M#O0";4^^^!M02P,$% @ ,8'^6&8U'4XD P "@P !D !X;"]W;W)K M&ULK59M;]HP$/XK5E9-G;21%T*V,D""!K1.JH1: M=?LP[8,A!UAU[,PV4/[];"=D0$-*5[Z ?;[GN?/=^7*=-1>/<@&@T%-*F>PZ M"Z6RMNO*Z0)2+!L\ Z9/9ERD6.FMF+LR$X 3"TJI&WA>Y*:8,*?7L;*QZ'7X M4E'"8"R07*8I%IL!4+[N.KZS%=R1^4(9@=OK9'@.]Z >LK'0.[=D24@*3!+. MD(!9U^G[[5%D]*W"#P)KN;-&YB83SA_-YB;I.IYQ""A,E6' ^F\%UT"I(=)N M_"DXG=*D >ZNM^PC>W=]EPF6<,WI3Y*H1=?YXJ $9GA)U1U??X/B/BW#-^54 MVE^T+G0]!TV74O&T &L/4L+R?_Q4Q&$'H'FJ 4$!" X!X1% LP T3[40%H#P M5 NM M Z%1 5 )M,-P^6C72,%>YU!%\C8;0UFUG8=%FT#C!AIK#NE="G1.-4 M;US4"&8)&J89Y1L - &,Z+0F&(FT2?43Q)BZ@!3=,/R8C:8RQ@4)O2#UGBX MC]'EQ0=T@0A#MX12?2X[KM(>&CONM/!FD'L3'/&FB6XY4PN)ABR!I (?U^.C M&KRK(U.&)]B&9Q#4$GY?L@9J>A]1X 5AA3_7I\.;5==YF_7AVZR/ZN$Q3#7< MKX+OQ;)9EEK3\C6/\-V!(@)T4U+; I/H5W\BE=#MY7=5L>1\836?:;EMF>$I M=!W=4R6(%3B]]^_\R/M:E:ESDL7G)!N>DVQT)K*]#(=EAL,Z=ETQ,RU)T*3H M'YGN'VBJ7Z0@DZ4ZUA)RSBO+:;Z#JY[7"#KN:C=YN4ZTJ[.O$9_ ,GR1951[ MO_^,7JN,7JLV>F.\L8]#-UBT;V&QI/C>($CPAE*B-+?S*G$7/*C \J/1:6Z]-Q(OFANO<&PX9<&\^"Z.[-*"F)NITJIN\22J?Q;4DK+P;5OY[4#^J"A,-.FO,9G734BGSSSC>*9G90F7.FYRRX7>E@'813T M^8QSM=T8 ^7XW_L+4$L#!!0 ( #&!_EA:RI-)< 4 +8F 9 >&PO M=V]R:W-H965TH4IE:"Y M+*M!BV!F]V&U#VYR2JU)G([M "/MAU_G0MJ48%)T7J!Q?'X^]OD[MH\\>TS% M#[D&4.0IB;D\[ZV5VISU^S)<0T+E2;H!KM^L4I%0I1_%?5]N!-"H,$KBOF-9 MXWY"&>_-9T79C9C/TDS%C,.-(#)+$BI^74*@] MW('ZOKD1^JE?4R*6 )!1[OPF>5>6:?HC?[B* MSGM6[A'$$*H<0?6_!UA './F?/E4# ML6/@.*\8.)6!T]5@4!D,NAH,*X-A5X-193#J:C"N#,9=#2:5P:0(5CFZ16A< MJNA\)M)'(O+:FI;_*.);6.N(,)Y+\4X)_99I.S6_XF&: /E>"2W\A%%+%< M(C0F5[P4>BZ8(Q<49?%G\I$P3KZMTTQ2'LEC\NG#=# >?LE+KUD#RL?+DL?G%=\&)#KE*NU)!Z/(&JQ=\WVX[?L [.][1@ ?3V@]:@ZSZ-Z MZ1B)?V3\A RL8^)8SI!\OW/)TK?DNN%"3RWS9UEZAA.RI?2\[DAH9P MWM.+A03Q +WYIP_VV/K2I@A,F(L)\S!A/B8L0((UE#*LE3(TT>=?&5VRF*E? M1'\N2<9#$/I3R8FB3V23RN)KVOI-++'C IMO&![F>OLPZS_LBL'8]*%BZ-"@ MA]F@CPD+S-XW0C>J0SN''4Z:#88(#78&/]Q/?YCX_CKKZO>.$20<+9B8;G3 M$!""WINVK>*7XQ?]&;V8,<86#YTQF# /$^9CP@(D6$,#DUH#$Z,&O-4*BM.( M5D(]&P55K5.Q1-G6C@*L$VNR/QM;J]FGT[T)V5YM8.]-R6[5_%>J[<\WXVB\ M27,MG=B/QGM+2P^9HL!$JP1>MO:'ODM8_"KV4SN MLJ5D$:."Y8><:TB6(%H/.&;>H4) I;FH- ^5YJ/2 BQ:4S4[B2(;[TA*LU'I058M*9BG*UB'.-WQH45" '1SM9.2T=O\C,>,:D$6V9*OP4J M../W[8E#8PL'ZPB3YE:TW?/(],6!&K5)'Y46M'1@\MJ9VMYFSFQCNF7N0P2" MQN0B4^M4,/7FXH*:/D.EN:@T#Y7FH]("+%I3--LDFCU$7%PP$TL+5)J+2O-0 M:3XJ+<"B-16SS=W9YN3=GQLHDZR_]/K1OG9@)M,6J#3WC(*PU2NJY2#";-1:5YJ#0?E19@T9J*V69-;7/:M,-*@YK[1*6Y;W1.+QF3 M5CV\R\Q']3W HI6![^_'O('ZJMK\?U!+ P04 " Q@?Y8U/FXPRD# "8"0 M&0 'AL+W=O'OJ_2' NB#D2)W'Q9"%D0;;IRZ:M2(LDZS+4=\)-)299XB?JJ MO)"FYS0(OG[^"YT Y?,M%I0C/ MU,37)BO+[:>;#([K#,)',HCA7'"=*WC',\Q:\+-N?#_L(/"-'8TGX=:3X["3 M\4/%#R *>A &X: MH6[X":8&WG?PJ".=J"E1Y/BBQTI$J(1KPBJ$+PMH+]C- M)P.",XV%^M%6@GJ&0?L,]J0X5"5)<>J9HT"A7*&7O'C6CX.W;?*?B&S/C$%C MQJ"+/9D1E8-9:)#:!MY6=$68M:!-=4T5.RI[G*V2*![:FJQVY3R,&@Y&HS=- MU%Z>PR;/X=_SS)%E8(Y.13.$*TXU9G"IB4;5@U)24\:2,'9O-]!GU#E*9K=0 M;QOZD?)E)HH>S')3])Z3/2.<9*1-;)W/<$=&.(Z#X ^Q#Z.B\7 G:D]LW(B- MN\5*-*<%G)*4,JKOX>8V9 M,6[,&'>N &?&RIDA%N8:G6N@2E6MY_GQ^,&&ZT?]-P^6:EO8WHJN,_5W+K\" MY=*]"12DHN*ZO@>;T>;9<>1N6_]W>/UF.2=R2;D"A@L##0Y&9I_(^AU0=[0H MW54Z%]I+J$2J)&7'P'[\CI2LVHFB M;JG]P28EWL-[[MV3K51?=(IHX"'/A)YZJ3'%A>_K.,669'P;!R,\9%]YLXI[=J=E$EB;C N\4Z#+/F=I=82:W4Z_O[1]\ MX.O4V ?^;%*P-=ZC^5C<*=KY#4K"8#7"#&-C(1C];'".66:12(^O-:C7W&D%#]=[]%\=>2*S9!KG M,ON;)R:=>F,/$ERQ,C,?Y/8WK D-+5XL,^V^85N?#3R(2VUD7@N3!CD7U2][ MJ WQ7P3"6B!\)!"&SPA$M4#DB%::.5H+9MALHN06E#U-:';A;..DB0T7UHWW M1M%;3G)F-I=YS@WYQ6A@(H&Y%(:+-8J8HX:W<(-KEL$M,P:5W5\F";?VIX?7 MHHHBZXW7"S2,9V\FOB&E++0?UPI<50J$SR@P@ENZ,M7PBT@P.9;WB4S#*-PS MN@H[ 7\OQ1E$00_"(!S Q_L%O/[Y#P?W3I*C@T/:?;N@(7!O,]>4.B]](:7SAM)YM^\TA:9V M(:O(.\K1N9%:DS?WA7,'/"<%#"Q0QXH7MD"V<>V\J9T'"&F ;9E":U4F=HU) M:PM3]K!&1=T#Z0J-21DU3$WMS2JTI%!C2[G!'FQ3'J?43G:0,DI(1DNJ\YRB MCB44I1KW5*C$<\K.C'\M.36 70]67#!J$G2TD-JUA!Z91%/WU%8WFC.4:PU6 M"9?2*:QH9M!G;07I!:;XKDO'C4O'W2Z-8U622?"!;*G;V^M^.5]/_+5-K+JA>X(I$@[-SJNBJ&JBKC9&%FTF7TM"$ZY8I M_0E!90_0^Y649K^Q%S1_:V;_ E!+ P04 " Q@?Y8W0%(N"80 :^@ M&0 'AL+W=O9/GR^"/V]F\?'MRLUS>O3X]+<+ MXC9;5I\6UZ?E79%GD\U&M[/3J-<;GMYFT_G)^9O-USX5YV\6J^5L.L\_%4&Y MNKW-BN_O\]GBV]N3\.3'%SY/KV^6ZR^<7^6RVEJK]^,\6/7D<<[WA[L<_=+$Y^.I@+K,ROUC,_CF=+&_> MGIR=!)/\*EO-EI\7WU2^/:#-#HX7LW+SW^#;P\^.1B?!>%4N%[?;C:L]N)W. M'_Z?_;']1>QL$$4_V2#:;A"UW2#>;A"WW:"_W:#?=H/!=H-!VPV&VPV&;3<8 M;3<8M=W@;+O!6=L-7FTW>-5V@[#WXR_7:[W)XQ_[X:1[.$LVIUB2+;/S-\7B M6U"L?[[RUA]LSM/-]M69-9VO(_5E653?G5;;+<_?C?^SFI;3]>E=!G\-WDTF MFX^S6:#G#X%=G_B_)/DRF\Y^#?X<3.?!;S>+59G-)^6+X"]_.HN'_;^MO_IQ M.INME3>GRVJ_UOKI>+L/R<,^1#_9ASCXN)@O;\H@G4_R2/RE1#]^*>\C+_AN=?TRB.(70=2+XN#W+TGPRY]_;=BO"S_S,2M>!G%XE$G\ MC%G-*Z:W8?H>)FW/^/9&,'LCNS#I[Y^#7[;G4A.FF$/3[?]>OD,S?B;)QZW^ M[/;(0675087>@W).[O@Q\?'&C7_BOE^5U5?*,MB)?G!1!6@ZO\[GR_6'Y722 M%P_)_]>'ZH<#OEW?9.'][4CW@EWEQGY^<_^5/ MX;#WMZ8XD5A"8BF)"1*3)*9(3).8(3$+84[\^H_QZ_OT\S0KYD%U;?LB$-FT M".ZSV2IO"I97Z1HL$DM(+"4Q06*2Q!2)Z0=LN,'64Z;[\VC4Z[TYO=\-##FB MA3 G,(/'P R\@7E7EOFR#"Y615$]/#5%Q;M]UZB06#(X_$N=A?%H[V^5DF.* M=F-*'!V1T/H[/]QP(+C>F< MW:/'LWOD/;L_Y_?Y?)67P7]_/%G0=))[C:XG.8DE)):2F" Q^8"%X*'%&3F"$Q"V%.7,X>XW+FC#LX!^L_JO1W@^)0^FL=[;W0Y+<=W6X6Z/^('9'U.2(AL0LA#DG[*O' M$_;5L7_?%[/[Z?PZN"CRR71936O'ZZN9[\&_/N:WEWG1^+21U^QZ&I-80F(I MB0D2DR2F2$R3F"$Q"V%.S,)>?:.F]XS/VVX'@Q*(:@FJI:@F4$VBFD(UC6H& MU2REN5'A_SDOPJ+ZI'NV"#=XC5GS:IVS%AX^I='?G_(EZ)@I MJ@E4DZBF4$VCFD$U2VENAJ(Z0Y$W0Q^SV7U6!.G\NOI&7JPO(#],;Z?+*E6^ M"T>_VCE+I):@6HIJ M4DJBE4TZAF4,U2FINY^LY_^)RW_D/TWC^J):B6HII M-8EJ"M4TJAE4LY3F1K%N 83^&L!N A=705Y]MOS>F#*T"(!J":JEJ"903:*: M0C6-:@;5[%8[VYFLU+?JW.C4?8#07PC8>< Z/O5"NP&HEJ!:BFH"U22J*533 MJ&90S8:'[85^N#/5=P-4]PU"?^&@;07-SW0.#]H]0+44U02J2513J*91S:": M#0^K(L.?9J=N,X3^.L.[\7BQFB_+X"[[GEW.\B";3X)L/"Y6^23(_[C+YV5S MCOSZ&CY =425$M1 M3:":1#6%:AK5#*K9\+#6TO]IA.KV1>BO7_P]7P;90T,Z6S^E4#2^@.Z]7^D< M';1Q@6HIJ@E4DZBF4$VCFD$UN]5VYT&#,#IKSDY4-RHB[VWB-K>@@O\&%YN7 MX>9%];VR2IGOYI1_O*XI0[4$U5)4$Z@F44VAFD8U@VJ6TMPTUJ6**'S&FU,1 MVKE M0354E03J"913:&:1C6#:I;2W"C6W8S(W\UXM[V2#*;S958].FZ>Y]A< M9#9&#:UDH%JRU78ONL/!?EDJ1<<4K<:4Z)@*U32J&52SE.9&HZY01-[[PN)@;M#R!:AK5#*I92G-S M4[D'QHW.?+;5WY;$?(/^ 70.$:BFJ"523J*90 M3:.:035+:6Z ZEI$[%]KHNV+-;:,NL@0'RLR//'5&GZWZS0(U9*XH5\0'G0:T#%%JS$E.J9"-8UJ!M4LI;DI MV7E#"'^GH66'?*LX3TT/X^C5_D,,^RX.[-LXL._CP+Z1 _M.#NQ;.;#OY<"^ MF@6HIJ M4DJBE4TZAF4,U2FIO# MNI\0#YZQ*A2CZT:@6H)J*:H)5).HIE!-HYI!-4MI;A3KOD/L[SMTJX_[LC\1+X+?R_QJ M-:LN#Z^:G]=#:PRHEAPYV+ 7?,^SHBGU*;HCXND[(M$=4:BF4Z(0C6-:@;5+*6Y0:J[%'U_E^+HC"L?W\P7L\6U_YW?_*-T M3A?:K$"U%-4$JDE44ZBF47ID"U!-525!.H)E%- MH9I&-8-JEM+<*-:]C[Z_]]%QRH56.U MV6K.].?@%7\I.J9H-:9$QU2HIE'- MH)JE-#<:=16C[U\JX@E3+K1N@6K)D8,=>69<:+7BR?LAT?U0J*91S:":I30W M1G6-HN^O4?Q69/-RG,\GP9?%;/5P1>>;6*$]"E1+4"U%-8%J$M44JFE4,ZAF M*P6OW$W30%-4$JDE44ZBF4-S%7ZA:W &C6M>[,4&'3)%-8%J$M44JFE4,ZAF*MAV@#0I42U M136!:A+5%*II5#.H M9BG-C6+=H!C0*UOXP(?HG-@T 4F4"U%-8%J$M44JFE4,ZAF*.&5CF.'*QG%0MT/\23]T.B^Z%03:.:035+:6Z,ZHK&T+^*1=M9%MJ]0+5D M>/B.'(=WL] A19LA)3JD0C6-:@;5+*6YB:B;$D/_/7N9SZL+N%GP>75YN:X( M?KCPSZ?0F@2J):B6HII -8EJ"M4TJAE4LY3F9JTN4PS/GG,^A78N4"U!M135 M!*I)5%.HIE'-H)JE-#>*=8=CZ.]PR&PZ#W[YL"C+7X,J:U^R65ZN%WCYL,CF MU=RJNDYLC!S:VD"U9*LY+Z:,1X,HVK\T/%P<(XP'T7#O>DXT>-$P/AOT]Z_[ MT Y%P]Y%@U%_,'!'U>BH!M4LI3FG]JAN1XS\JT8D7Z*P>BAY^2+XL)R\;-U( M\JM=SVU42U M136!:A+5%*II5#.H9BG-S5Q=@QB%SWAE-T(K$JB6H%J*:@+5 M)*HI5-.H9E#-4IH;Q;I(,?(7*;HMA>['.D<-[5.,#LL-\<$S?>B0HLV0$AU2 MH9I&-8-JEM+<8-1]BM&192KVKPOW7A>LU0Q0DL5J):@6HIJ M4DJBE4TZAF4,U2FAO%NE0QHDL5 M?K!SW-!2Q9&#]977T1T13]\1B>Z(0C6-:@;5+*4]!.FTO,GS99(ML_,WU?7A M=7Z1SV9E,%ZLYLOU ]O.5X,BOZJ"%KY^%YV<'GP]"5^G8GE0SS,O%LKIXW7QXDU<7 MK<7Z!ZKO7RT6RQ^?K ?XMBB^;@[G_']02P,$% @ ,8'^6/]F[K^^!P MZ$X !D !X;"]W;W)K&ULM9Q=Q@'83*8GY33KK+Y2;J149B(JXSDFS@.LL?W(DH? M3@=T\#3A8WA[)XL)P_G).K@5UT)^7E]EZMUP1UF&L4CR,$U()E:G@S/ZSN>3 MHJ"W$NHJ@@J?7X7D$' MNV46A?NOG^A>N?%J8VZ"7)RGT3_A4MZ=#J8#LA2K8!/)C^G#[Z+:H''!6Z11 M7OY+'JIYK0%9;'*9QE6Q6H,X3+9_@Q_5%[%70$?/%+"J@!U:P*L"?FC!J"H8 M'5HPK@K&AQ;858%]:,&D*BB[/]Q^NV5KG$ &\Y,L?2!9,;>B%2_*_I;5JB-A M4D3Q6F;JTU#5R?G9XOLFS,,B%CDY(M$&;D2Q!M M1%Y\<);G0N:D+,W4QT&R)!=A\??,+ M>4/"A'RZ2S>Y*LI/AE)M0K$BPT6UNN^WJ\N>6=T_-LDQX=:OA%ELU%%^;BYW MQ$*5T[*<=Y0[YO*SS>TQ8?S9//\-YOJ&FD0]2Q/F_7=W=(D?=R&+8?9>O@X4X M':AQ-1?9O1C,?_Z)VM9O7;U&PAPDS$7"/"3,!\&TQ/!=8KB)/B_W&7OMI^GR(8RBKE:.6DUBE-+1J-'+SMDX M:S;3N!Y]FXF$>4B8W_XVZ)336?T?0&O3>->FL;%-?XIXD9+KQ[P8L(;D74.X$9"!ASJ0UXDYG%M/W/BYRB1X2 MYH-@6MNGN[9/C6V_RHI#.OE8GAH*-5:L8Y6"KO8;.7W;CX0Y6]AXK_U\1!O= M1R[00\)\$$SK_FS7_=GK'><;T7T#@80YLU8@U)S-\0"Y1 \)\T$P+1'4JC63 M9E^2B:WOE:&%*C79K_+>]$ M5MGCSNY#[2"4YE0T??1OMAZJ_: T'T736U^;/VI6?Y]2&41/QP)!=>&@,P-( M W8.I3D533LDY.-I*P90(PBE^2B:'H-:"E*S%7PZ'8SVKA8%VZM%G6% &K1S M*,VI:/MA.+*G8]X, ]0H0FD^BJ:'H5:/U.P>M[N#J'WAL#,*4/$(I3D538O" MR!HUDP!UBE":CZ+I2:BU(C4ZJ/E?0AZT;X"J1"C-J6C:U0J;LUDS!%!-"*7Y M*)H>@MH44K,J_)0%2;X0R9)G)J14G-CO+E"Q-F0.^80%4DE.96-'W? M11O'+QYTF3Z*IM^Z5.M(9M:1AU^@,(-ZW[($E9%0FLNZU&;SA,:#+M-'T?08 MU"Z2F5UD'RMM1O4. M1-0FDN:YO.Z8Q;S2! U22*I@=A[UY&LYHT26ES:>_& M8^]:Q-ZVV"$YK2F?-3N/O2/Q-AMI%,K.+=,1*9,6O6F3P8Y>( MQ\X<0'4DE.9 :6Y%TW-@3YLQ@-I(%$V/06TCF=E&'JBDS93>&8!:2"C-9>W; M(1GC,[L9 JA>1-'T$-1ZD9EO8[P,HOL@(ZXZ14R$R(H;UR["."Q^$F=2TV9J M[U! !2.4YD)I'I3FHVAZ=FK!R&9X-[26YV MDR^K:3.@;TR@- =*88#*22C-A=(\WG4/Y]1N M'1N^AISDM9SD*#EI!O7. 51.0FDNE.;Q#M4YLVDS!J\A)WDM)SE$3IHIO3, ME9-0F@NE>;RM.L>4M8X+H6YRN/<(K^(9<)=!=ALF.8G$2N&MXXE*9+9]K-KV MC4S7Y5.];E(IT[A\>2>"I&UL MM9GO;YLX&,?_%8N;3IW4A0#YT?222&D ;;=VJIIM]V*Z%PX\2:P!SFR3;/_] MV4!I:!.ND9Z]2<#V]^,?7_L![/&>B^]R Z#(SS3)Y,3:*+6]MFT9;2"ELL.W MD.F<%1S$=\UPE+(-[062>IE3\ MNH&$[R>68STF/+#U1ID$>SK>TC4L0'W9W@M]9]>4F*602<8S(F UL6;.=>AX M1E"4^,I@+P^NB>G*DO/OYN9#/+&ZID600*0,@NJ_')>@]%_1/"/J5H/_: M&@:58%",?3E8Q4C[5-'I6/ ]$::TIIF+PJY"K0>8969F+930N4SKU'06_;H(CH_3W7ZQ3T5D*D-*!;1Y"VY\$%1IB_>D2\+GUR\>4O>$):1SQN>2PV1 M8UOI+IF&V5'5_*!LOGNB^0-RQW4-D@19#'%3;^NAJ,?#?1R/&[<5.,O7'>)Z ME\3MNMZ1]LS;Y7=4=(CGG)3[[?*_:=8A3O>D//@?>:[E7BGO'9&'KY=[+6/I MU7/+*WC>"=Y-+G6*K&9*.FWFO,1THB3Q2]IEAN9UB8/?U>(';Z(*J[G7C5# MS_QE(: #U#I#+%K3R8-=#:?5R<^"9C*"+"8+ MGN3E7=2"FIP,QZ@9213L,G7WWV9LQ:HT!*BW$HI6FV0?[S"F( M=7$B($GQT"RW6.O4^M1A5NRU/TL/S&E$L7_]A"F/,NZHT*_2DB2PTLAN9ZB_ MKD5Y.E#>*+XM=K.77"F>%I<;H#$(4T#GKSA7CS>F@OJ,9OH?4$L#!!0 ( M #&!_EC9_?GQD0, &\, 9 >&PO=V]R:W-H965T_#;;0"RY6XJD"Y)E^U#T RV=;:(2Z9*4W?[[ M'B5%LQW&-3I_L60A948U>N7+610+.*5.2N[WD]MZ",.]-Q9;N3T[$H= #]N+F3V'-;E8P5P!43G$A83IRK[F@^,/@* M\ ^#G=IK$^/)0HC/IG.=31S/+ AR2+51H/BWA1CRW CA,KXTFDX[I2'NMY_4 MWU6^HR\+JB 6^;\LT^N),W!(!DM:YOI>[/Z$QI_(Z*4B5]4OV358SR%IJ;0H M&C*NH&"\_J=?FSCL$5#'3O ;@G],"%\@! TA.'>&L"&$Y\X0-83*=;?VO0I< M0C6=CJ78$6G0J&8:5?0K-L:+<9,G#UKB*$.>GEZE7TJFF-DT17XC#YB'69D# M$4ORR&F9,0T9N9."5-M"WC%.>J;&K MT3^S2C=M?)G5OO@O^!*06\'U6I$YSR"S\)/3_-X)OHMQ;8/K/P5WYI\4?%_R M#@F\M\3W_-"RGOA\>F!SY__-/O_IV0^"$;29%E1ZP0MZLU*A12FREW+DXPW: MR+6&0GVR;7@M&=HES1TZ4AN:PL3!2U*!W((S_?67;L_[W1;M2XHEEQ2;7TCL M8%_"=E_"4^K3#_@8*9J#]<#5U%Y%-4_.=MH-^I'OC]WM?F1ML,CO>8>PY#G, M[P6#*#R$S2VPJ!]&40L[\#-J_8Q^Z"?CJ2B 4*TE6Y2:+O"FTX+$\_@O//1; M)@7'-U#C]14+N>G8(A(]6UP8#J*C>%A _O H:,ES4#0Q> [J>]VA/1*] M-A*]DR=Q3B5G?*7(!B_HZA8>V3SM7?+L75(LN:38_$)B!SO1;W>B?S(G9U2Q MU!;[FM;?VW:OTSW*C=@*.LXR*ZA_E&4U:'@ \NU)-FA=&YQT+6%YJ:VO\&QP MQKKC M8#5=%[__R=>E^"V5*X;%5PY+G,KK]/'(R[J\K3M:;*KZ;2$T5H-570NBGCIF@_<:8?@=02P,$% @ ,8'^6%RQ7ROH! ]1@ !D !X M;"]W;W)K&ULM5E;4^,V&/TK&G>GLSO#8LMWTR0S M2["G=$J7(=WV@>F#B97$L[:52@J!?U_)=AQ?%"]0\0*V?+ZC[R(=/HG)'I/O M=(,0 T]Y5M"IMF%L>Z'K=+E!>4S/\185_,L*DSQF_)6L=;HE*$Y*HSS33<-P M]3Q."VTV*<=NR6R"=RQ+"W1+ -WE>4R>+U&&]U,-:H>!NW2]86) GTVV\1HM M$/NVO27\36]8DC1'!4UQ 0A:3;4O\"*"OC H$7^E:$];ST"$\H#Q=_%RG4PU M0WB$,K1D@B+FOQ[1'&698.)^_%N3:LV "#1G$P]EN4IKGN"T$"MKP0C_FG([-KO<43Y"*5B@-5\P#%P7U7(59?\, M_N!K>Q%GB(*X2/BW)54=*(S[KWP05_6GLXK3\T3GEK@!A=L0T%8)"B1V(?C]NZ(O\<#JX9RND_LLI7W+:<6XCK!=W&2S35N'I21!Z1-OOY M)^@:O\C2KI(L5$D6*2+K%,AN"F2/L<_$3J9B)\OR7YFZI:GX6_0X@Y;GF.9$ M?VQG5@(S ^C#+BP0CR7P>ZA(@K(-]T2X;A.N.QIN6*SY""(H 8MG*C98 MH\'W-RA_0$2ZX49)7[OA5)*%*LDB162=RGA-9;QW5$1/98%4DH4JR2)%9)T" M^4V!_+7*!")HH T5Z& SG M#RS+Z(4L0=F&'_1"'J(LQS5ZXAH-4:;E!R<4$1K'EM;X0<@);YQ)&F?@EN!E MV9?B;%<&_B)U'.=_[>Y3RA8J98M4L74KU3I\P'?4R)I<59E4LH5*V2)5;-TR MF<E%Y=)I5LH5*V2!5;MTS' M(Q@Q^-RK%&8;7[T=E. O:UD!D97Q!X)X2 M''$RZHX<6W$XWHOSR,7M8K9+$ 7+1H]X7K>HH&5"S\"6X!5OYO@S[^Q$&5/> MVYV!M+4G&%IN"ISA]?-9*6:X%+,U*GA5LG(D3O*T2'E[&(LK[=9BY M;$WHK1O6')%U>1J?PC&ULM5IM;]LV$/XKA%<,+=#% M(O5F98F!));4#"L6).OV(=@'QJ)MH7IQ23II]NM'2HID48SFI,R7Q*+OGM,] M1]_IL7GR4-*O;$,(!]_SK&"GDPWGV^/IE"TW),?LJ-R20KRS*FF.N;BDZRG; M4H*3RBG/ILBRO&F.TV(R/ZG6KNC\I-SQ+"W(%05LE^>8/IZ3K'PXG<#)T\)U MNMYPN3"=GVSQFMP0_F5[1<75M$5)TIP4+"T+0,GJ='(&CV-D2X?*XJ^4/+"] MUT"F67^7%97(ZL>0=D8PLN83 XM\]N2!9)I'$?7QK0"=M3.FX__H)/:J2 M%\G<848NRNSO-.&;T\EL A*RPKN,7YD.KC/.-B-@ZTZ.,\X.(V#H0Y^X^!7Q:K9K4JSP!S/3VCY *BT%FCR157?REM4)"WD5KSA5+R;"C\^ M/]\QL<(8N"%KL<,XN"SJ_2WWR2_@BHI-3_DCP$4"PF^[=%L9G25)*BW81[ @ MXB.P3&L':766EY2G_W8+EXEP25+PC':?9!A/ARLP#OWWT M[T!:@#\WY8X))W8RY2([>8_399/)19T)>B83&WPN"[YA("P2DFC\PW%_;\1_ M*EAMJ45/U%Z@4<#?=L41L*V/ %G(T=S/XG!W6Y?.CT6/?BQZ/.Z^($OA#G7N M/2[M=IO:%9[]#-[3[KPF6[F[BG5OG][^+LS!)2W<6IL1X\MF_TQV^(E M.9V(K3^<\_0<_Z55MMC.&/N]U'=)V'?S4 M=70UKA&]"E'.W_NY ^76N]^OW= (00_UC<*AD8]L!2D:&MD!#/I&\6B6K^30 M;3ET1SD<]&6\UY=U!-9P[GY&C@<5 H=&R/=P0RJ^V4Q&NNE7>.PF)')F+$WV/">9:&@VR ] MDOV69'^4Y+!8BQ5"20)N'IELX.V#R.UGDM\1JFWHHZ O;>@FP4*38)%)L-@0 M6*_,L[;,LS<M4.VFH'QL=W,&AILT"9!HNAC>,X MRNP9VH@G4%]IC$,C;S931L]HBJ\D$%J=*K/,3N\&;S\G.(,*.PN=%?)5#C56 MMALH#S>1Q@HY,T^A<3S/U_*XIVZAB2'>H/2V%O)]&ZG\C49[:?J-HH5&T MR"A:; JM7_=.FL.WU.;0J#@WBA8:18N,HL6FT/I%[Q0Z-"_1&\A^OPO4%CLT MLJ$JT35&T+)=M6]JK'P(U0GU%BH==C(=&M;I<*B<(;15H:ZQ"IQ I5$CYY$J MPB.=%;1\E<:WT.JP$^O0B%J'0^D,'0<.![U1O7Y@U,AHU%@;U?<=ZYE!WVEV M."[:+THJ.CWFI-JO?_ -H>-SW:A<-XH6&D6+C*+%IM#Z9>XT.WQ+T0Z-JG:C M:*%1M,@H6FP*K5_T3KI#\]H=:D3WS!IHSZ$5="Q/'4D:D2^&MMHH-5@N4K\] M'D_UE52B3L,CPQH>#16U"Q6"%HW1_A>QKJ,^'VF0($1*12(-%+1<=;"/9_E: M%CL%CTPH^//_0;F%VB;5>/5^$/*0ISZ3CH._M/L<%C0R&C36!;4+Z!F/83' MD6[]#*'C".F0!#OBG>I\R;2[I?IYM7+#<$)H=) O+\J2_YT(0.T!Y;F_P%02P,$% @ ,8'^6.<5 M'&( P $ T !D !X;"]W;W)K&ULM5=;;YLP M%/XK%JNF5MK*-;P MS?D^G_/Y'&R/=XS?B0V 1/<)H6)B;*1,+TQ3A!M(L#AG*5#U9<5X@J7J\K4I M4@XXRD$),1W+ZIL)CJGAC_.Q.??'+),DIC#G2&1)@OG#)1"VFQBVL1^XCM<; MJ0=,?YSB-2Q WJ1SKGIFQ1+%"5 1,XHXK";&9_LB&&G[W.!W##MQT$8ZDB5C M=[HSBR:&I1T" J'4#%B]MC %0C21 M]H7DZFNL<-*_S(0:$0(M8*U64Z(9+7))+\I'](VQ:!<3@DX#D#@F9VKL9A&@ MTY,S=()BBGYM6"8PC<38E,H=36J&Y=27Q=3.,U/_R.@YTU<^O2OQ I#F%BJ-H6P+=@^._?V7WK4Y-N79(%'9'5-'4K3=TV=G^? M?4V*%0;($WI@,K:0O388NR8*.R&IB]BHQ>V]88+TN->V2 M+.B(K*9IO]*T_^H"*Y"]PY+P'*LW?%1@C6:.,WI48*U^O#+*017EH#7*&8W4 M1LIC3-"8JWU/( (K M16^=#]3?@1?G[Z(C69J?2)=,JO-MWMRH*PMP;:"^KQB3^XX^Y%:7(/\_4$L# M!!0 ( #&!_ECHQQ.?3P8 ,S 9 >&PO=V]R:W-H965T%)NQA>KB MBG+2 OOQHV1%,BF:B9//+XE%G^_P\E''/!0U?2BK+WS%6&U]R[."GTU6=;T^ MM6T^7[$\X>_+-2O$-W=EE2>UN*R6-E]7+%FT07EF8\?Q[3Q)B\ELVI9=5[-I MN:FSME<4W>9Y4W\]95CZ<3=#DL>!CNES538$]FZZ3);MA]:?U=26N[)YE MD>:LX&E96!6[.YM\0*>4N$U B_@[90]\Y[/5=.6V++\T%Y>+LXG3M(AE;%XW M%(GX=\\N6)8U3*(=7SO225]G$[C[^9']E[;SHC.W"6<79?9/NJA79Y-P8BW8 M7;+)ZH_EPZ^LZY#7\,W+C+=_K8<.ZTRL^8;79=X%BQ;D:;']GWSK!F(G0/#H M W 7@-4 =T\ Z0+(6>]L=+"^FM5;KB(XU.[%LUM M*K7G7=/.MTW#>YI&K*NRJ%?-\3;8ICZL<*/8W6.C82_;8KW M%G%^LK"#74U[+IX?3G3=>5WM],6U2X-!^HE#6CZRAV^8 >NRJM-B*,K7R9R=383Z<5;=L\GLQQ^0[_RL&W9(LAB2C *1 M20ER^P2Y)O;9'^)7AB<9T]YYVU"_#6U^2^YGB 0>QE/[?G=D-3 &40W,18$[P*1^>GT_/6,_:;$4):QB"^OF.V]F7*]EGZ]8?LLJ[0PT MDAXZ R')8D@R"D0F9<;O,^,?42)\R 1!DL609!2(3$I0T"+E$;$.]G;LU M"DBD*L08%8YU)!ZC4.@'KJ(C5 /S410$>H$(^UZ&QEY>%@NQCJK2)+.NJW+> M+G;*;--,PN=)A9'^T)D(219#DE$@,BE'49^CZ(A2$4$F")(LAB2C0&12@I S M& 7GY6+1Q>[>NJZ#B*.HA0Z&?"]2Y$(#"P*$B"(7.E@4^'OD NU8(F3LZ9]K M5B7M).RF)3?*@YGMT.D'RA:#LE$H-CDO>,@+/J)(=.10:8)DBT'9*!2;G*;! M&"*CK7E"*,CX-][U0^2J2J'#.1Y6K8<&AX,P0NK20H?S/-_#>\1B<%G(;+,, M8F']I^R?W#2C8M828V4'3U)(MAB4C4*QR6D;3"/RCJDEH.X1E"T&9:-0;'*: M!@>)C/[G"2WQ1_?T21A%1)42#0PYH3.2$AW.]9&C2HD.1U"P9Q\##6X,F>V8 M64I>N,]AKO/@J0K)%H.R42@V.7N#RT3A,14%U&2"LL6@;!2*34[38#21T28] MH2C1>-7A8*1N5%QH<)$7AHZJ*!JZR!WY':K#!2@*'+VBX,&S8;-G>[6BO& ) M8V[2H3,9E"T&9:-0;')R!YN*T1$%!X.Z5E"V&)2-0K'):1I<*S;:+;/@=+'2 M6L+U/'4)HX,%4>0I>J.%^42!41TL\@C9HS:#\<-FX_>4%7KE-JRY]H-G+.A3 M0U V"L4FYW&PM-@]IK" 6EA0MAB4C4*QR6D:+"PV/_@T"XLWWFEU_6 D+%J8 MNMZ)-;#0Q1Y6A44#(WZX9X\%#RX0FUT@H+"\9$$#^B02E"T&9:-0;'*:!_^+ M@V/J#JC1!66+0=DH%)NNJ#X)T,!PZOJH[&I@?!:,% MC09&=E5,[NG@%;'9*\IGW6B6YFG13<97[\N8JSYXNH(^M01EHU!L\C&UP0,3 MYXBJ0D#=+"A;#,I&H=CD- UNEI@?NAI5I8M5MG#5Q8P6%:B:HD7YZEDU'0KO MV^(E@QDD9C/X+$5YM5,R-^+@20OZJ!.4C4*QR>G<.0-[U$.PL*=@88_!PIZ# M/8:A)8.A):\X"DO&QU)/4.2KVJ)!$9^HVJ)!X5 ]MZ)#N;ZZV6OO'.K/6;5L MWZ;@UKS<%/7VF'9?VK^Q\:%]3T$I/T>G%TA3'J-3NGT?8Z#?OAYRE51B3<.M MC-V)JISW@9#!:OO&Q?:B+M?M*P6W95V7>?MQQ9(%JQJ ^/ZN+.O'BZ:"_KV7 MV?]02P,$% @ ,8'^6#@([ET< @ T00 !D !X;"]W;W)K&ULM51=;]HP%/TKEE=-5)IP"!0VED0J95.9AH2*NCU,>S#) MA5CU1VH[I/OWLQV(F$117_82^]KWG'N.X^ND4?K)E 6O0@N38I+:ZLI(28O M05#35Q5(M[-56E#K0KTCIM) BP 2G,11-":",HFS)*RM=):HVG(F8:61J86@ M^L\,N&I2/,#'A0>V*ZU?(%E2T1VLP3Y6*^TBTK$43( T3$FD89OBV\%T-O+Y M(>$'@\:+(L61%P0<<>R(GX_G B;N2'G@Z/[)_ M#=Z=EPTU<*?X3U;8,L4?,2I@2VMN'U1S#P<_-YXO5]R$+VK:W/$$H[PV5HD# MV"D03+8C?3FK=%@7S)T8Y6LCVM[OH&O7F8"GCYAI=(2;1 MDG'NUDU"K-/AV4A^J#EK:\:OU/Q6\SZ*/WU <12/T.-ZCGI7U__2$&>C\Q)W M7N+ .WJC%_1K"6(#^OI?"M,345S2+&[ZP;T'G#V_MU@''V^('38"1T& M]N&;A7YW&6AA09BS8H?_0>RH$SNZ>*JK6N>EN_=HI5D.Y]2U^'' ^T=@GPTF M"=F?UB0G-]0W^Y+J'9,&<=@Z4-2?W&"DVP9J ZNJ<&DWRKH6"-/2O3F@?8+; MWRIECX'O@^X5R_X"4$L#!!0 ( #&!_EB&1),"30, "(4 - >&PO MEU!>O G<_>G-TU+D] MO=B-GUC@-(R\HN>/$#WKX+H&PZ23^])V^+$1/L=]: M@@Y&3OVN?O_\A2Q_B^S=@'['ZVK+DR5&=8F,A[D4;:7$H0L895+0X([P43@A MG$T5 U9."L;7+MR#P$QRJ0)M2M2DZD*D^N'@KNM!]=8Z!1-2V=PN@_L]K8?O M )L>&&2<-P9[H0N,AR71FBIQ:3IVL T^@(*Z?;,NC<.Y(NMN[SQL"?9FDDRE MRJAJTG3#36@\Y#0'.XK-%W#7LHP U%H6II$Q,I>"6 \;1MTPLC/*^34\VE_S M>]JK?&O/[(Z)IFD,U4TGXSJ@OZWFM+=EXR?I!B6[D_K#TDQ'V#Z4&+U2-&0?G7 \)!M>L)"*_3#9H%1F)D!5&-Q1I=EL M._)=D?*&KO2FG%8Y[KEW@)[_[3K/J:"*\&W3IO9?\BH_V7''8#(] )/]9_O6W&LRJD\96T>9>P>9)AK @7$4 M?H&C)V^3!M,EXYJ)NK=@64;%@_.,D==D:OX NJ=OQF?@3C M.,R/ (;EP1Q@',?"\OQ/\QF@\W$8YFW@108H9X!R',N'3.P'R^/GI.;RSS1- MXSA)L!6=3+P.)MBZ)0G\^-4P;\# \D"FOUMK?+?Q"ME?!]B>[JL0;*9X)6(S MQ=<:$/^Z 2--_;N-Y0$&M@M8[4!^?QZH*3\GCF%7,6_8$XPC:8HA4(O^&DT2 M9'42^/CW!WM*XCA-_0A@?@=QC"'P-.((Y@ \8$@-8?20$3;8T.P6BP^0"X99K>] M9!:GCZ6'#5^6"+E\UKSK(.[GV?4N0ZR\20&:C8@('W&CG0[]' M?WP)C'L%.Q_6VF _ZCHH=RV#^N1LN]/FOCL,7,48748?A^?E(8CG[O^$T6XV MNE37MFP;9<(ACD[5':#Q6[WS(V%DHV:CYUV$-)6X,0&")!;F<"C8M[M2./6B M.EQU %P40W>N88-;5#TX'^0':RIEO*H$_/*VUA5P5.)*UM*42B#(A(!,3@CY M;X(@4P(R/0GDJL.!OR+(C(#,3@@913(G(/-30J8(LB @BU-"9@CR+0'YEA=R M*1_%WHNE!$7QNM*.7'G9 4CM9@[)\U]UV." M1X3O"<+WO(17TFLO[$9\43L+N@)(.,[OVX['\0DUD$]X,6]!QQ^U@9NL92WF M96E;T\."R(UM,2;I&V;A/(%YB&:I]%[V9S^B49:9\FLF.$@GQ-Q[R UZ;W_6 MLL]OM,)/XY3RS)19- NSAQT@HXJ1**M,F;7RR=KJ0==U'[(%Y'GFOB-X"B2F MI+0R9?8*/'JNA3'ZYL>N&[DC+LHD4V:5K)31,*!DO]G5]E$I M<:6,VN@@EC5.J"E;),RV6)C2-DK[["?'P+#BAW) PNV'5KKWZWG9T-_N7SQTEAX19#F1:%\W8$DH8";,P!M(Z M\>:N6_@_,".ECH19'61^%X>2,DC";!"4WPV%,*6TD3)K@T[T<+DHI4R2\D\R MHDQO,(Z435)FFZ"4;Y"-K&,Q*^1U[C>(2!DE938*F63%!4%**BG[A.,HX\$8 M4F))F<5"61E@,28EEO0$8CD3J[9II'L4%F-2;DF9W3*,.:^J_NY+C$FY)65V M"ZU 7%K-*,UDS)JA,7%Q-:,TDS%K!IL:/9,;<=B ,2G99,RRB3%_/Y/U4X_' MF)1W,F;OD+E%-*AGY!N44]:ZXBY$N2=C=@^-&74ARD(9LX5HS!QC4A;*^"T4 M)Y11=Y]C3,I"&7=Q#*65$>$AT<28E(4R9@N1F/%;2,I".;.%8DQJW,PI"^7, M%AK(U\_$;=NL815BBC$I"^7,%AK$/ 858U(6RIDM]%_UY2=8C$E9*#_I# A; M*"??Y#-;B,;$%LHI"^7,%L+5\(&NCC$I"^7,%AHLD!]Y,29EH9R]SD:4RN/A MG;)0SFRA:'9.WO2"LE#!;*$7F"LX9-5"A@1#^XT/>$ J* L5["4W C.ZZ05E MH8+90@3F/T;BKR0*RD(%LX7(XLP9=GI!6:@XX9N=N Y74!8JF"U$8T8?E)%? ME)VR(A?)LJ L5#!;Z-6K,O$&CYT8D[)0T5MHW._L+R\J2 F,JF[A%![:2UF7 M2R>ZQ>&[H"SO7NMOVKK^ &U_F\]65L^?]3Y_DGSY"U!+ P04 " Q@?Y8 M%MUK%"8" !C* &@ 'AL+U]R96QS+W=O )6ZKT"+,.H)4\0&K%!YB"2.7&X!N^\H#))C]: GR&=DE2U? M_Z-/5MF/+V7?#KON6+>[4YU]'O;'NFRVPW#ZE5)=;F\W)Z+65H9J]MORG#LDF?^^OIFBZ'?'>>W,R>WY9-__R6FS1UD$"03!^D$*33 M!QD$V?1!#D$^?5! 4$P?M("@Q?1!]Q!T/WW0 P0]3!^4YRCCG"!IA#6!UAFY MS@1>9P0[$XB=D>Q,8'9&M#.!VAG9S@1N9X0[$\B=D>Y,8'=&O#.!WH)Z"X'> M@GH+@=XR>MDFT%M0;R'06U!O(=!;4&\AT%M0;R'06U!O(=!;4&\AT%M0;R'0 M6U%O)=!;46\ET%M1;R706T>;)01Z*^JM!'HKZJT$>BOJK01Z*^JM!'HKZJT$ M>BOJK01Z&^IM!'H;ZFT$>AOJ;01Z&^IM!'K;:+.;0&]#O8U ;T.]C4!O0[V- M0&]#O8U ;T.]C4!O1[V=0&]'O9U ;T>]G4!O1[V=0&]'O9U ;Q]]K"30VU%O M)]#;46\GT-M1;R?0VU%O)] [4.\@T#M0[R#0.U#O(- [4.\@T#M0[R#0.U#O M(- [1C^;$.@=J'<0Z!VH=_RDWG7XVI=Z[?E>X_-_DNKA?&^Y/OZR_#Z)$BXN M.*?;BOKT%U!+ P04 " Q@?Y8X>Q>$?0! "B)P $P %M#;VYT96YT M7U1Y<&5S72YX;6S-VLM.PS 0!=!?J;)%C>LG#]%N@"VPX =,,J51D]BR72A_ MCY,"$@@J4)&XFT:M[;D3CW16/;][]A0GVZ[MX[Q8I>3/&(O5BCH;2^>ISRM+ M%SJ;\M?PP+RMUO:!F)C-#*M/C4=Y0L"\3AI7O U[/W3Q2 M"$U-DUL;TK7M\BZV;5E,SRW%VJ39>/E-$'LG5<$:6N+7=% MC_8GIWS#M/OD!^>/9?8%YIVWP?F8)Q;H]W%O(QE.3WTN1"$U^U_Q/3&7/OC] M:)AV3?4/L_/U/KFP'N<1V?@X_(X_SOB]_B_[$"!]2) ^%$@?&J0/ ]+',4@? M)R!]G(+TP6^?6 M?QP_/LO.-OU;/AO_FK=X 5!+ 0(4 Q0 ( #&!_E@'04UB@0 +$ 0 M " 0 !D;V-0&UL4$L! A0#% @ M,8'^6 M6_1;N *P( !$ ( !KP &1O8U!R;W!S+V-O M&UL4$L! A0#% @ ,8'^6)E&PO=V]R:W-H965T&UL4$L! A0#% @ ,8'^6#X>YU3!!P 3R$ !@ M ("!*PX 'AL+W=O4C#( , /\) 8 " @2(6 !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% M @ ,8'^6 >'@,\[ P <0L !@ ("!.B 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ ,8'^6-MXORJ" @ MNP< !@ ("!-CH 'AL+W=OX\ M !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ M,8'^6$@?VL'W P 6@D !D ("!TD@ 'AL+W=O&PO=V]R:W-H965T 9 " @ !X;"]W;W)K&UL4$L! A0#% @ ,8'^6&3D44@I!0 ;@X !D M ("!96D 'AL+W=O&PO=V]R:W-H M965T!R !X;"]W;W)K&UL4$L! M A0#% @ ,8'^6(WNR\-B!P <1( !D ("!@G< 'AL M+W=O<$# M "@" &0 @($;?P >&PO=V]R:W-H965T&UL4$L! A0#% @ ,8'^ M6-8KE MM# XR, !D ("!TXL 'AL+W=O&PO=V]R:W-H965TBA !X;"]W;W)K M&UL4$L! A0#% @ ,8'^6/+&*L^Y P W@D M !D ("!5Z8 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ,8'^6%&WXH6W @ U 4 !D M ("!Z*\ 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ ,8'^6-.*?$1Q P :P< !D ("!6+H 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ ,8'^6,$3 MF,Y.!0 CA !D ("!W,0 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ,8'^6.=92%UE P 7PT !D M ("!0]0 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ ,8'^6 F?M%2W @ @@< !D ("! M;-X 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ ,8'^6&,X+5_D P V1( !D ("!KN< 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ,8'^6'F7BT7I M @ 3P@ !D ("!&_, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ,8'^6(6&PO=V]R M:W-H965T&UL M4$L! A0#% @ ,8'^6)JGDC==! JQ4 !D ("!6!0! M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M,8'^6%K*DTEP!0 MB8 !D ("!)R ! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ,8'^6-T!2+@F$ M&OH !D ("!72T! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ,8'^6-G]^?&1 P ;PP !D M ("!%4H! 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ ,8'^6.<5'&( P $ T !D ("!_U@! 'AL M+W=O&PO=V]R:W-H965T6QEX-SBS % 6+0 #P M @ %P:0$ >&PO=V]R:V)O;VLN>&UL4$L! A0#% @ ,8'^6!;= M:Q0F @ 8R@ !H ( !S6X! 'AL+U]R96QS+W=O XML 78 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 79 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 81 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.2 html 221 293 1 true 52 0 false 6 false false R1.htm 100000 - Document - Document and Entity Information Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 100010 - Statement - Condensed Consolidated Balance Sheets (Unaudited) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited Condensed Consolidated Balance Sheets (Unaudited) Statements 2 false false R3.htm 100050 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) Statements 3 false false R4.htm 100070 - Statement - Condensed Consolidated Statements of Income (Unaudited) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited Condensed Consolidated Statements of Income (Unaudited) Statements 4 false false R5.htm 100080 - Statement - Condensed Consolidated Statements of Comprehensive Income (Unaudited) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited Condensed Consolidated Statements of Comprehensive Income (Unaudited) Statements 5 false false R6.htm 100090 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited Condensed Consolidated Statements of Shareholders' Equity (Unaudited) Statements 6 false false R7.htm 100100 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited Condensed Consolidated Statements of Cash Flows (Unaudited) Statements 7 false false R8.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Notes 8 false false R9.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 9 false false R10.htm 995455 - Disclosure - Basis of Reporting for Consolidated Financial Statements Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBasisOfReportingForConsolidatedFinancialStatements Basis of Reporting for Consolidated Financial Statements Notes 10 false false R11.htm 995465 - Disclosure - New Financial Accounting Pronouncements Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureNewFinancialAccountingPronouncements New Financial Accounting Pronouncements Notes 11 false false R12.htm 995475 - Disclosure - Accounts Receivable Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivable Accounts Receivable Notes 12 false false R13.htm 995485 - Disclosure - Contract Assets and Liabilities Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilities Contract Assets and Liabilities Notes 13 false false R14.htm 995495 - Disclosure - Inventories Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventories Inventories Notes 14 false false R15.htm 995505 - Disclosure - Goodwill and Intangible Assets Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssets Goodwill and Intangible Assets Notes 15 false false R16.htm 995515 - Disclosure - Accrued Expenses Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpenses3 Accrued Expenses Notes 16 false false R17.htm 995525 - Disclosure - Senior Debt Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebt Senior Debt Notes 17 false false R18.htm 995535 - Disclosure - Earnings per Share Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShare Earnings per Share Notes 18 false false R19.htm 995545 - Disclosure - Share-Based Compensation Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensation Share-Based Compensation Notes 19 false false R20.htm 995555 - Disclosure - Pension and Employee Benefit Plans Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlans Pension and Employee Benefit Plans Notes 20 false false R21.htm 995565 - Disclosure - Income Taxes Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxes Income Taxes Notes 21 false false R22.htm 995575 - Disclosure - Financial Instruments Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstruments Financial Instruments Notes 22 false false R23.htm 995585 - Disclosure - Commitments and Contingencies - Legal Matters Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMatters Commitments and Contingencies - Legal Matters Notes 23 false false R24.htm 995595 - Disclosure - Acquisitions Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitions8 Acquisitions Notes 24 false false R25.htm 995605 - Disclosure - Business Segment Information Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformation Business Segment Information Notes 25 false false R26.htm 995615 - Disclosure - Subsequent Events Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEvents Subsequent Events Notes 26 false false R27.htm 995625 - Disclosure - New Financial Accounting Pronouncements (Policies) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureNewFinancialAccountingPronouncementsPolicies New Financial Accounting Pronouncements (Policies) Policies http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureNewFinancialAccountingPronouncements 27 false false R28.htm 995635 - Disclosure - Accounts Receivable (Tables) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableTables Accounts Receivable (Tables) Tables http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivable 28 false false R29.htm 995645 - Disclosure - Contract Assets and Liabilities (Tables) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesTables Contract Assets and Liabilities (Tables) Tables http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilities 29 false false R30.htm 995655 - Disclosure - Inventories (Tables) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesTables Inventories (Tables) Tables http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventories 30 false false R31.htm 995665 - Disclosure - Goodwill and Intangible Assets (Tables) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsTables Goodwill and Intangible Assets (Tables) Tables http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssets 31 false false R32.htm 995675 - Disclosure - Accrued Expenses (Tables) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesTables Accrued Expenses (Tables) Tables http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpenses3 32 false false R33.htm 995685 - Disclosure - Senior Debt (Tables) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtTables Senior Debt (Tables) Tables http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebt 33 false false R34.htm 995695 - Disclosure - Earnings per Share (Tables) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureEarningsPerShareTables Earnings per Share (Tables) Tables http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShare 34 false false R35.htm 995705 - Disclosure - Pension and Employee Benefit Plans (Tables) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansTables Pension and Employee Benefit Plans (Tables) Tables http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlans 35 false false R36.htm 995715 - Disclosure - Acquisitions (Tables) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables Acquisitions (Tables) Tables http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitions8 36 false false R37.htm 995725 - Disclosure - Business Segment Information (Tables) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationTables Business Segment Information (Tables) Tables http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformation 37 false false R38.htm 995735 - Disclosure - Accounts Receivable - Summary of Accounts Receivable (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableSummaryOfAccountsReceivableDetail Accounts Receivable - Summary of Accounts Receivable (Detail) Details 38 false false R39.htm 995745 - Disclosure - Accounts Receivable - Additional Information (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableAdditionalInformationDetail Accounts Receivable - Additional Information (Detail) Details 39 false false R40.htm 995755 - Disclosure - Contract Assets and Liabilities - Summary of Contract Assets and Liabilities (Details) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesSummaryOfContractAssetsAndLiabilitiesDetails Contract Assets and Liabilities - Summary of Contract Assets and Liabilities (Details) Details 40 false false R41.htm 995765 - Disclosure - Contract Assets and Liabilities (Additional Information) (Details) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesAdditionalInformationDetails Contract Assets and Liabilities (Additional Information) (Details) Details http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesTables 41 false false R42.htm 995775 - Disclosure - Inventories - Summary of Inventories (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesSummaryOfInventoriesDetail Inventories - Summary of Inventories (Detail) Details 42 false false R43.htm 995785 - Disclosure - Inventories - Additional Information (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesAdditionalInformationDetail Inventories - Additional Information (Detail) Details 43 false false R44.htm 995795 - Disclosure - Goodwill and Intangible Assets - Goodwill / Tradename (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsGoodwillTradenameDetail Goodwill and Intangible Assets - Goodwill / Tradename (Detail) Details 44 false false R45.htm 995805 - Disclosure - Goodwill and Intangible Assets - Intangible Assets - Finite Life (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail Goodwill and Intangible Assets - Intangible Assets - Finite Life (Detail) Details 45 false false R46.htm 995815 - Disclosure - Goodwill and Intangible Assets - Finite Lived Intangible Assets Amortization Expense (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsFiniteLivedIntangibleAssetsAmortizationExpenseDetail Goodwill and Intangible Assets - Finite Lived Intangible Assets Amortization Expense (Detail) Details 46 false false R47.htm 995825 - Disclosure - Goodwill and Intangible Assets - Additional Information (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail Goodwill and Intangible Assets - Additional Information (Detail) Details 47 false false R48.htm 995835 - Disclosure - Accrued Expenses - Summary of Accrued Expenses (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesSummaryOfAccruedExpensesDetail Accrued Expenses - Summary of Accrued Expenses (Detail) Details 48 false false R49.htm 995845 - Disclosure - Senior Debt - Summary of Debt (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail Senior Debt - Summary of Debt (Detail) Details 49 false false R50.htm 995855 - Disclosure - Senior Debt - Summary of Debt (Parenthetical) (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail Senior Debt - Summary of Debt (Parenthetical) (Detail) Details 50 false false R51.htm 995865 - Disclosure - Senior Debt - Additional Information (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail Senior Debt - Additional Information (Detail) Details 51 false false R52.htm 995875 - Disclosure - Earnings per Share - Number of Shares Outstanding for Calculation of Earnings Per Share (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareNumberOfSharesOutstandingForCalculationOfEarningsPerShareDetail Earnings per Share - Number of Shares Outstanding for Calculation of Earnings Per Share (Detail) Details 52 false false R53.htm 995885 - Disclosure - Earnings per Share - Additional Information (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetail Earnings per Share - Additional Information (Detail) Details 53 false false R54.htm 995895 - Disclosure - Share-Based Compensation - Additional Information (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail Share-Based Compensation - Additional Information (Detail) Details 54 false false R55.htm 995905 - Disclosure - Pension and Employee Benefit Plans - Components of Pension and Employee Benefit Expenses (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail Pension and Employee Benefit Plans - Components of Pension and Employee Benefit Expenses (Detail) Details 55 false false R56.htm 995915 - Disclosure - Pension and Employee Benefit Plans - Additional Information (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansAdditionalInformationDetail Pension and Employee Benefit Plans - Additional Information (Detail) Details 56 false false R57.htm 995925 - Disclosure - Income Taxes - Additional Information (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail Income Taxes - Additional Information (Detail) Details 57 false false R58.htm 995935 - Disclosure - Financial Instruments - Additional Information (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstrumentsAdditionalInformationDetail Financial Instruments - Additional Information (Detail) Details 58 false false R59.htm 995945 - Disclosure - Commitments and Contingencies - Legal Matters - Additional Information (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail Commitments and Contingencies - Legal Matters - Additional Information (Detail) Details 59 false false R60.htm 995955 - Disclosure - Acquisitions - Additional Information (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail Acquisitions - Additional Information (Detail) Details 60 false false R61.htm 995965 - Disclosure - Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Detail) Details 61 false false R62.htm 995975 - Disclosure - Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Parenthetical) (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Parenthetical) (Detail) Details 62 false false R63.htm 995985 - Disclosure - Acquisitions - Schedule of Unaudited Pro Forma Financial Information (Details) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails Acquisitions - Schedule of Unaudited Pro Forma Financial Information (Details) Details 63 false false R64.htm 995995 - Disclosure - Business Segment Information - Net Sales and Income from Operation by Business Segment (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationNetSalesAndIncomeFromOperationByBusinessSegmentDetail Business Segment Information - Net Sales and Income from Operation by Business Segment (Detail) Details 64 false false R65.htm 996005 - Disclosure - Business Segment Information - Property and Equipment Additions, Depreciation and Amortization and Identifiable Assets (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail Business Segment Information - Property and Equipment Additions, Depreciation and Amortization and Identifiable Assets (Detail) Details 65 false false R66.htm 996015 - Disclosure - Business Segment Information - Goodwill (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationGoodwillDetail Business Segment Information - Goodwill (Detail) Details 66 false false R67.htm 996025 - Disclosure - Business Segment Information - Intra-Segment and Inter-Segment Revenues (Detail) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail Business Segment Information - Intra-Segment and Inter-Segment Revenues (Detail) Details 67 false false R68.htm 996035 - Disclosure - Subsequent Events (Additional Information) (Details) Sheet http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails Subsequent Events (Additional Information) (Details) Details http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEvents 68 false false All Reports Book All Reports ceco-20240630.htm ceco-20240630.xsd img58591874_0.jpg http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 http://xbrl.sec.gov/ecd/2023 false false JSON 83 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "ceco-20240630.htm": { "nsprefix": "ceco", "nsuri": "http://www.cecoenviro.com/20240630", "dts": { "inline": { "local": [ "ceco-20240630.htm" ] }, "schema": { "local": [ "ceco-20240630.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/arcrole/esma-arcrole-2018-11-21.xsd", "http://www.xbrl.org/lrr/role/negated-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/2023/calculation-1.1.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/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-sub-2023.xsd" ] } }, "keyStandard": 266, "keyCustom": 27, "axisStandard": 21, "axisCustom": 0, "memberStandard": 31, "memberCustom": 21, "hidden": { "total": 6, "http://xbrl.sec.gov/dei/2023": 4, "http://fasb.org/us-gaap/2023": 2 }, "contextCount": 221, "entityCount": 1, "segmentCount": 52, "elementCount": 599, "unitCount": 6, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 848, "http://xbrl.sec.gov/dei/2023": 30, "http://xbrl.sec.gov/ecd/2023": 4 }, "report": { "R1": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation", "longName": "100000 - Document - Document and Entity Information", "shortName": "Document and Entity Information", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited", "longName": "100010 - Statement - Condensed Consolidated Balance Sheets (Unaudited)", "shortName": "Condensed Consolidated Balance Sheets (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:RestrictedCashCurrent", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R3": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical", "longName": "100050 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)", "shortName": "Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "U_UnitedStatesOfAmericaDollarsShare", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R4": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited", "longName": "100070 - Statement - Condensed Consolidated Statements of Income (Unaudited)", "shortName": "Condensed Consolidated Statements of Income (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:CostOfGoodsAndServicesSold", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R5": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited", "longName": "100080 - Statement - Condensed Consolidated Statements of Comprehensive Income (Unaudited)", "shortName": "Condensed Consolidated Statements of Comprehensive Income (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:ProfitLoss", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R6": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited", "longName": "100090 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)", "shortName": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "C_2451a01f-db86-4984-805d-aa5fa459e97f", "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_6c1b1dc3-e0b0-4139-9496-f0133f3508cd", "name": "us-gaap:ProfitLoss", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R7": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited", "longName": "100100 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)", "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "7", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ProfitLoss", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ForeignCurrencyTransactionGainLossUnrealized", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R8": { "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure", "longName": "995410 - Disclosure - Pay vs Performance Disclosure", "shortName": "Pay vs Performance Disclosure", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:NetIncomeLoss", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": null }, "R9": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBasisOfReportingForConsolidatedFinancialStatements", "longName": "995455 - Disclosure - Basis of Reporting for Consolidated Financial Statements", "shortName": "Basis of Reporting for Consolidated Financial Statements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureNewFinancialAccountingPronouncements", "longName": "995465 - Disclosure - New Financial Accounting Pronouncements", "shortName": "New Financial Accounting Pronouncements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivable", "longName": "995475 - Disclosure - Accounts Receivable", "shortName": "Accounts Receivable", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilities", "longName": "995485 - Disclosure - Contract Assets and Liabilities", "shortName": "Contract Assets and Liabilities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfRegulatoryAssetsAndLiabilitiesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfRegulatoryAssetsAndLiabilitiesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventories", "longName": "995495 - Disclosure - Inventories", "shortName": "Inventories", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssets", "longName": "995505 - Disclosure - Goodwill and Intangible Assets", "shortName": "Goodwill and Intangible Assets", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpenses3", "longName": "995515 - Disclosure - Accrued Expenses", "shortName": "Accrued Expenses", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebt", "longName": "995525 - Disclosure - Senior Debt", "shortName": "Senior Debt", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShare", "longName": "995535 - Disclosure - Earnings per Share", "shortName": "Earnings per Share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensation", "longName": "995545 - Disclosure - Share-Based Compensation", "shortName": "Share-Based Compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlans", "longName": "995555 - Disclosure - Pension and Employee Benefit Plans", "shortName": "Pension and Employee Benefit Plans", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxes", "longName": "995565 - Disclosure - Income Taxes", "shortName": "Income Taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstruments", "longName": "995575 - Disclosure - Financial Instruments", "shortName": "Financial Instruments", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "22", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMatters", "longName": "995585 - Disclosure - Commitments and Contingencies - Legal Matters", "shortName": "Commitments and Contingencies - Legal Matters", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "23", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitions8", "longName": "995595 - Disclosure - Acquisitions", "shortName": "Acquisitions", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "24", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformation", "longName": "995605 - Disclosure - Business Segment Information", "shortName": "Business Segment Information", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "25", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEvents", "longName": "995615 - Disclosure - Subsequent Events", "shortName": "Subsequent Events", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "26", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureNewFinancialAccountingPronouncementsPolicies", "longName": "995625 - Disclosure - New Financial Accounting Pronouncements (Policies)", "shortName": "New Financial Accounting Pronouncements (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "27", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableTables", "longName": "995635 - Disclosure - Accounts Receivable (Tables)", "shortName": "Accounts Receivable (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesTables", "longName": "995645 - Disclosure - Contract Assets and Liabilities (Tables)", "shortName": "Contract Assets and Liabilities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:ScheduleOfRegulatoryAssetsAndLiabilitiesTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:ScheduleOfRegulatoryAssetsAndLiabilitiesTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesTables", "longName": "995655 - Disclosure - Inventories (Tables)", "shortName": "Inventories (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsTables", "longName": "995665 - Disclosure - Goodwill and Intangible Assets (Tables)", "shortName": "Goodwill and Intangible Assets (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesTables", "longName": "995675 - Disclosure - Accrued Expenses (Tables)", "shortName": "Accrued Expenses (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "32", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtTables", "longName": "995685 - Disclosure - Senior Debt (Tables)", "shortName": "Senior Debt (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "33", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:DebtDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:DebtDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureEarningsPerShareTables", "longName": "995695 - Disclosure - Earnings per Share (Tables)", "shortName": "Earnings per Share (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "34", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansTables", "longName": "995705 - Disclosure - Pension and Employee Benefit Plans (Tables)", "shortName": "Pension and Employee Benefit Plans (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "35", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables", "longName": "995715 - Disclosure - Acquisitions (Tables)", "shortName": "Acquisitions (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "36", "firstAnchor": { "contextRef": "C_9f15121a-558b-4efd-9402-5a11935625fd", "name": "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_9f15121a-558b-4efd-9402-5a11935625fd", "name": "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R37": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationTables", "longName": "995725 - Disclosure - Business Segment Information (Tables)", "shortName": "Business Segment Information (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "37", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableSummaryOfAccountsReceivableDetail", "longName": "995735 - Disclosure - Accounts Receivable - Summary of Accounts Receivable (Detail)", "shortName": "Accounts Receivable - Summary of Accounts Receivable (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:AccountsReceivableGrossCurrent", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "div", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:AccountsReceivableGrossCurrent", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "div", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableAdditionalInformationDetail", "longName": "995745 - Disclosure - Accounts Receivable - Additional Information (Detail)", "shortName": "Accounts Receivable - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "ceco:ContractReceivableRetainage1", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_f6d351cf-8d35-4859-8d61-9c3008e38bf1", "name": "ceco:ContractReceivableRetainage1", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R40": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesSummaryOfContractAssetsAndLiabilitiesDetails", "longName": "995755 - Disclosure - Contract Assets and Liabilities - Summary of Contract Assets and Liabilities (Details)", "shortName": "Contract Assets and Liabilities - Summary of Contract Assets and Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:ContractWithCustomerAssetNetCurrent", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": null }, "R41": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesAdditionalInformationDetails", "longName": "995765 - Disclosure - Contract Assets and Liabilities (Additional Information) (Details)", "shortName": "Contract Assets and Liabilities (Additional Information) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:ContractWithCustomerAssetNetCurrent", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "ceco:ContractLiabilitiesRecognizedAsRevenue", "unitRef": "U_pure", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "span", "p", "us-gaap:ScheduleOfRegulatoryAssetsAndLiabilitiesTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R42": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesSummaryOfInventoriesDetail", "longName": "995775 - Disclosure - Inventories - Summary of Inventories (Detail)", "shortName": "Inventories - Summary of Inventories (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:InventoryRawMaterials", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "div", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:InventoryRawMaterials", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "div", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R43": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesAdditionalInformationDetail", "longName": "995785 - Disclosure - Inventories - Additional Information (Detail)", "shortName": "Inventories - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:InventoryWriteDown", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:InventoryWriteDown", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:InventoryDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsGoodwillTradenameDetail", "longName": "995795 - Disclosure - Goodwill and Intangible Assets - Goodwill / Tradename (Detail)", "shortName": "Goodwill and Intangible Assets - Goodwill / Tradename (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "C_f6d351cf-8d35-4859-8d61-9c3008e38bf1", "name": "us-gaap:Goodwill", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:GoodwillPurchaseAccountingAdjustments", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock", "div", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R45": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail", "longName": "995805 - Disclosure - Goodwill and Intangible Assets - Intangible Assets - Finite Life (Detail)", "shortName": "Goodwill and Intangible Assets - Intangible Assets - Finite Life (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "div", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "div", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsFiniteLivedIntangibleAssetsAmortizationExpenseDetail", "longName": "995815 - Disclosure - Goodwill and Intangible Assets - Finite Lived Intangible Assets Amortization Expense (Detail)", "shortName": "Goodwill and Intangible Assets - Finite Lived Intangible Assets Amortization Expense (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "C_f6d351cf-8d35-4859-8d61-9c3008e38bf1", "name": "us-gaap:FiniteLivedIntangibleAssetsNet", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_2451a01f-db86-4984-805d-aa5fa459e97f", "name": "us-gaap:FiniteLivedIntangibleAssetsNet", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock", "div", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R47": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail", "longName": "995825 - Disclosure - Goodwill and Intangible Assets - Additional Information (Detail)", "shortName": "Goodwill and Intangible Assets - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": null }, "R48": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesSummaryOfAccruedExpensesDetail", "longName": "995835 - Disclosure - Accrued Expenses - Summary of Accrued Expenses (Detail)", "shortName": "Accrued Expenses - Summary of Accrued Expenses (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "div", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "div", "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail", "longName": "995845 - Disclosure - Senior Debt - Summary of Debt (Detail)", "shortName": "Senior Debt - Summary of Debt (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:LongTermDebt", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "div", "us-gaap:DebtDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:LongTermDebt", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "div", "us-gaap:DebtDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R50": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail", "longName": "995855 - Disclosure - Senior Debt - Summary of Debt (Parenthetical) (Detail)", "shortName": "Senior Debt - Summary of Debt (Parenthetical) (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "parenthetical", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "C_7436e234-3623-461d-b988-e60995d6a771", "name": "us-gaap:DebtInstrumentFrequencyOfPeriodicPayment", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "div", "us-gaap:DebtDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_7436e234-3623-461d-b988-e60995d6a771", "name": "us-gaap:DebtInstrumentFrequencyOfPeriodicPayment", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "div", "us-gaap:DebtDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail", "longName": "995865 - Disclosure - Senior Debt - Additional Information (Detail)", "shortName": "Senior Debt - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:DebtDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_f6d351cf-8d35-4859-8d61-9c3008e38bf1", "name": "us-gaap:DebtInstrumentInterestRateEffectivePercentage", "unitRef": "U_pure", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "span", "p", "us-gaap:DebtDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R52": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareNumberOfSharesOutstandingForCalculationOfEarningsPerShareDetail", "longName": "995875 - Disclosure - Earnings per Share - Number of Shares Outstanding for Calculation of Earnings Per Share (Detail)", "shortName": "Earnings per Share - Number of Shares Outstanding for Calculation of Earnings Per Share (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:NetIncomeLoss", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "unitRef": "U_shares", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "div", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R53": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetail", "longName": "995885 - Disclosure - Earnings per Share - Additional Information (Detail)", "shortName": "Earnings per Share - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "U_shares", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "span", "p", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "U_shares", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "span", "p", "us-gaap:EarningsPerShareTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R54": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail", "longName": "995895 - Disclosure - Share-Based Compensation - Additional Information (Detail)", "shortName": "Share-Based Compensation - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R55": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail", "longName": "995905 - Disclosure - Pension and Employee Benefit Plans - Components of Pension and Employee Benefit Expenses (Detail)", "shortName": "Pension and Employee Benefit Plans - Components of Pension and Employee Benefit Expenses (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "C_88bff4ba-8317-4837-938d-f9fc37b50aca", "name": "us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock", "div", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_88bff4ba-8317-4837-938d-f9fc37b50aca", "name": "us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock", "div", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansAdditionalInformationDetail", "longName": "995915 - Disclosure - Pension and Employee Benefit Plans - Additional Information (Detail)", "shortName": "Pension and Employee Benefit Plans - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:DefinedBenefitPlanContributionsByEmployer", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "us-gaap:DefinedBenefitPlanContributionsByEmployer", "span", "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:DefinedBenefitPlanContributionsByEmployer", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "us-gaap:DefinedBenefitPlanContributionsByEmployer", "span", "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R57": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail", "longName": "995925 - Disclosure - Income Taxes - Additional Information (Detail)", "shortName": "Income Taxes - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:LiabilityForUncertainTaxPositionsNoncurrent", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_f6d351cf-8d35-4859-8d61-9c3008e38bf1", "name": "us-gaap:LiabilityForUncertainTaxPositionsNoncurrent", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "us-gaap:LiabilityForUncertainTaxPositionsNoncurrent", "span", "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R58": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstrumentsAdditionalInformationDetail", "longName": "995935 - Disclosure - Financial Instruments - Additional Information (Detail)", "shortName": "Financial Instruments - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "ceco:CashHeldOutsideDomesticTerritory", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:FinancialInstrumentsDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R59": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail", "longName": "995945 - Disclosure - Commitments and Contingencies - Legal Matters - Additional Information (Detail)", "shortName": "Commitments and Contingencies - Legal Matters - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:LitigationSettlementAmountAwardedFromOtherParty", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:LitigationSettlementAmountAwardedFromOtherParty", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R60": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "longName": "995955 - Disclosure - Acquisitions - Additional Information (Detail)", "shortName": "Acquisitions - Additional Information (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "C_7b0ccbd8-cde1-4fa0-92b8-fbefef7f7aea", "name": "ceco:EarnOutFairValue", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_7b0ccbd8-cde1-4fa0-92b8-fbefef7f7aea", "name": "ceco:EarnOutFairValue", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R61": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "longName": "995965 - Disclosure - Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Detail)", "shortName": "Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:OperatingLeaseRightOfUseAsset", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_4589bd88-a00e-4db0-96ae-ae6be744a07c", "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssets", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "ix:continuation", "div", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R62": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "longName": "995975 - Disclosure - Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Parenthetical) (Detail)", "shortName": "Acquisitions - Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed (Parenthetical) (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "parenthetical", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "C_b3462824-949c-41a4-841e-4bb62a638246", "name": "us-gaap:IncreaseDecreaseInAccountsReceivable", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_0c5f4bc0-2224-4e45-bf01-f8c41f9559f3", "name": "us-gaap:IncreaseDecreaseInAccountsReceivable", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "ix:continuation", "div", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R63": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails", "longName": "995985 - Disclosure - Acquisitions - Schedule of Unaudited Pro Forma Financial Information (Details)", "shortName": "Acquisitions - Schedule of Unaudited Pro Forma Financial Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "63", "firstAnchor": { "contextRef": "C_3a0b3e75-3056-44a8-8753-0879f494583f", "name": "us-gaap:GainLossOnSalesOfLoansNet", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "div", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_3a0b3e75-3056-44a8-8753-0879f494583f", "name": "us-gaap:InterestIncomeExpenseNet", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "div", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R64": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationNetSalesAndIncomeFromOperationByBusinessSegmentDetail", "longName": "995995 - Disclosure - Business Segment Information - Net Sales and Income from Operation by Business Segment (Detail)", "shortName": "Business Segment Information - Net Sales and Income from Operation by Business Segment (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "64", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_90362dbf-1569-4da3-96cf-507dc082275b", "name": "us-gaap:OperatingIncomeLoss", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "div", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R65": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail", "longName": "996005 - Disclosure - Business Segment Information - Property and Equipment Additions, Depreciation and Amortization and Identifiable Assets (Detail)", "shortName": "Business Segment Information - Property and Equipment Additions, Depreciation and Amortization and Identifiable Assets (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "65", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:SegmentExpenditureAdditionToLongLivedAssets", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock", "div", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:SegmentExpenditureAdditionToLongLivedAssets", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock", "div", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } }, "R66": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationGoodwillDetail", "longName": "996015 - Disclosure - Business Segment Information - Goodwill (Detail)", "shortName": "Business Segment Information - Goodwill (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "66", "firstAnchor": { "contextRef": "C_7f19d873-0ea9-4575-9270-315df0f6b819", "name": "us-gaap:Goodwill", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_4903b239-8211-4916-a44e-128a6e7b7e35", "name": "us-gaap:Goodwill", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "us-gaap:ScheduleOfGoodwillTextBlock", "div", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R67": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail", "longName": "996025 - Disclosure - Business Segment Information - Intra-Segment and Inter-Segment Revenues (Detail)", "shortName": "Business Segment Information - Intra-Segment and Inter-Segment Revenues (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "67", "firstAnchor": { "contextRef": "C_aa55f74d-96c2-401e-82d8-106e147d0edb", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true }, "uniqueAnchor": { "contextRef": "C_431f62b4-8e96-4f2e-bb8b-938899c3d8c7", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "td", "tr", "table", "ceco:IntraSegmentAndInterSegmentEliminationByRevenueTableTextBlock", "div", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "unique": true } }, "R68": { "role": "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails", "longName": "996035 - Disclosure - Subsequent Events (Additional Information) (Details)", "shortName": "Subsequent Events (Additional Information) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "68", "firstAnchor": { "contextRef": "C_48e9a337-b814-47fb-aae0-b5faa898eb44", "name": "us-gaap:PaymentsForPreviousAcquisition", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "span", "p", "us-gaap:SubsequentEventsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "C_48e9a337-b814-47fb-aae0-b5faa898eb44", "name": "us-gaap:PaymentsForPreviousAcquisition", "unitRef": "U_USD", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "span", "p", "us-gaap:SubsequentEventsTextBlock", "div", "body", "html" ], "reportCount": 1, "baseRef": "ceco-20240630.htm", "first": true, "unique": true } } }, "tag": { "us-gaap_AccountingChangesAndErrorCorrectionsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingChangesAndErrorCorrectionsAbstract", "lang": { "en-us": { "role": { "label": "Accounting Changes and Error Corrections [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsNotesAndLoansReceivableLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsNotesAndLoansReceivableLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableSummaryOfAccountsReceivableDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts, Notes, Loans and Financing Receivable [Line Items]", "label": "Accounts, Notes, Loans and Financing Receivable [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableSummaryOfAccountsReceivableDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Receivable Type", "label": "Receivable Type [Axis]", "documentation": "Information by type of receivable." } } }, "auth_ref": [ "r37" ] }, "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpenses3" ], "lang": { "en-us": { "role": { "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]", "terseLabel": "Accrued Expenses", "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period." } } }, "auth_ref": [ "r25" ] }, "us-gaap_AccountsPayableAndOtherAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableAndOtherAccruedLiabilities", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Accounts Payable and Other Accrued Liabilities", "terseLabel": "Accounts payable and accrued expenses", "documentation": "Amount of liabilities incurred and payable to vendors for goods and services received, and accrued liabilities classified as other." } } }, "auth_ref": [ "r705" ] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Accounts Payable, Current, Total", "label": "Accounts Payable, Current", "terseLabel": "Accounts payable", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r24", "r803" ] }, "us-gaap_AccountsPayableTradeCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableTradeCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesSummaryOfAccruedExpensesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Trade accounts payable, including amounts due to subcontractors", "label": "Accounts Payable, Trade, Current", "documentation": "Carrying value as of the balance sheet date of obligations incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r22", "r24" ] }, "us-gaap_AccountsReceivableGrossCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableGrossCurrent", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableSummaryOfAccountsReceivableDetail" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, before Allowance for Credit Loss, Current", "terseLabel": "Accounts receivable", "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." } } }, "auth_ref": [ "r177", "r275", "r276", "r769" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableSummaryOfAccountsReceivableDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts receivable, net allowances of $6,582 and $6,460", "verboseLabel": "Accounts receivable, net allowances", "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "totalLabel": "Total accounts receivable, net", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r275", "r276" ] }, "us-gaap_AccruedIncomeTaxesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedIncomeTaxesCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Income taxes payable", "label": "Accrued Income Taxes, Current", "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." } } }, "auth_ref": [ "r96", "r143" ] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesSummaryOfAccruedExpensesDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Accrued expenses", "label": "Accrued Liabilities, Current", "terseLabel": "Accrued expenses", "totalLabel": "Total accrued expenses", "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)." } } }, "auth_ref": [ "r29" ] }, "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesCurrentAndNoncurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Accrued Liabilities, Total", "label": "Accrued Liabilities", "terseLabel": "Accrued expenses", "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." } } }, "auth_ref": [ "r89" ] }, "us-gaap_AccruedLiabilitiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Accrued Liabilities [Member]", "documentation": "This item represents 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." } } }, "auth_ref": [ "r29" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated other comprehensive loss", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "totalLabel": "Accumulated Other Comprehensive Income (Loss), Net of Tax, Total", "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source." } } }, "auth_ref": [ "r39", "r40", "r108", "r178", "r658", "r687", "r690" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Other Comprehensive Loss [Member]", "label": "AOCI Attributable to Parent [Member]", "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r5", "r16", "r40", "r555", "r558", "r588", "r683", "r684", "r911", "r912", "r913", "r922", "r923", "r924" ] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Additional402vDisclosureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Additional 402(v) Disclosure [Text Block]", "terseLabel": "Additional 402(v) Disclosure" } } }, "auth_ref": [ "r853" ] }, "ceco_AdditionalConsideration": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "AdditionalConsideration", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "additional consideration Earn Out", "label": "additional consideration" } } }, "auth_ref": [] }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalCommonStock", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Capital in excess of par value", "label": "Additional Paid in Capital, Common Stock", "periodStartLabel": "Additional Paid in Capital, Common Stock, Beginning Balance", "periodEndLabel": "Additional Paid in Capital, Common Stock, Ending Balance", "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital." } } }, "auth_ref": [ "r100" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Capital in Excess of Par Value [Member]", "label": "Additional Paid-in Capital [Member]", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r517", "r518", "r519", "r700", "r922", "r923", "r924", "r969", "r996" ] }, "ceco_AdditionalPaymentsOfContingentConsiderationRelatedToAcquisitionsFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "AdditionalPaymentsOfContingentConsiderationRelatedToAcquisitionsFinancingActivities", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "documentation": "Additional Payments of Contingent Consideration Related to Acquisitions Financing Activities", "label": "Additional Payments of Contingent Consideration Related to Acquisitions Financing Activities", "terseLabel": "Earnout payments", "negatedLabel": "Earnout payments" } } }, "auth_ref": [] }, "ceco_AdditionalPaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "AdditionalPaymentsOfContingentConsiderationRelatedToAcquisitionsOperatingActivities", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Earnout payments", "terseLabel": "Earnout payments", "documentation": "Additional payments of contingent consideration related to acquisitions operating activities.", "label": "Additional Payments of Contingent Consideration Related to Acquisitions Operating Activities" } } }, "auth_ref": [] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation Amount", "terseLabel": "Adjustment to Compensation, Amount" } } }, "auth_ref": [ "r859" ] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation [Axis]", "terseLabel": "Adjustment to Compensation:" } } }, "auth_ref": [ "r859" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToNonPeoNeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]", "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote" } } }, "auth_ref": [ "r859" ] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToPeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Adjustment To PEO Compensation, Footnote [Text Block]", "terseLabel": "Adjustment To PEO Compensation, Footnote" } } }, "auth_ref": [ "r859" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustments to reconcile net income to net cash provided by (used in) operating activities:", "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Amount", "terseLabel": "Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r824", "r835", "r845", "r870" ] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompNotYetDeterminedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]", "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined" } } }, "auth_ref": [ "r827", "r838", "r848", "r873" ] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllAdjToCompMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Adjustments to Compensation [Member]", "terseLabel": "All Adjustments to Compensation" } } }, "auth_ref": [ "r859" ] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllExecutiveCategoriesMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Executive Categories [Member]", "terseLabel": "All Executive Categories" } } }, "auth_ref": [ "r866" ] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllIndividualsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "All Individuals [Member]", "terseLabel": "All Individuals" } } }, "auth_ref": [ "r831", "r839", "r849", "r866", "r874", "r878", "r886" ] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllTradingArrangementsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "All Trading Arrangements [Member]", "terseLabel": "All Trading Arrangements" } } }, "auth_ref": [ "r884" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Recognized share-based compensation awards", "label": "Share-Based Payment Arrangement, Expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r513", "r520" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableSummaryOfAccountsReceivableDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts receivable, net allowances", "label": "Accounts Receivable, Allowance for Credit Loss, Current", "negatedLabel": "Provision for credit losses", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r179", "r277", "r316" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Amendment Flag", "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "ceco_AmortizationAndEarnoutExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "AmortizationAndEarnoutExpenses", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "documentation": "Amortization and earnout expenses", "label": "Amortization and earnout expenses", "terseLabel": "Amortization and earnout expenses" } } }, "auth_ref": [] }, "us-gaap_AmortizationOfDebtDiscountPremium": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfDebtDiscountPremium", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Debt discount amortization", "label": "Amortization of Debt Discount (Premium)", "documentation": "Amount of noncash expense included in interest expense to amortize debt discount and premium associated with the related debt instruments. Excludes amortization of financing costs. Alternate captions include noncash interest expense." } } }, "auth_ref": [ "r10", "r85", "r116", "r390" ] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsFiniteLivedIntangibleAssetsAmortizationExpenseDetail" ], "lang": { "en-us": { "role": { "negatedLabel": "Amortization expense", "verboseLabel": "Amortization expense of finite life intangible assets", "label": "Amortization of Intangible Assets", "totalLabel": "Amortization of Intangible Assets, Total", "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r10", "r55", "r58" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Anti-dilutive options and restricted stock units outstanding", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented." } } }, "auth_ref": [ "r236" ] }, "us-gaap_ArrangementsAndNonarrangementTransactionsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ArrangementsAndNonarrangementTransactionsMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Collaborative Arrangement and Arrangement Other than Collaborative", "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Domain]", "documentation": "Collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations." } } }, "auth_ref": [ "r546" ] }, "us-gaap_AsbestosIssueMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AsbestosIssueMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Asbestos Issue [Member]", "documentation": "Individual or consolidated class action claims alleging that asbestos caused cancer or other illnesses to persons exposed to it." } } }, "auth_ref": [] }, "ceco_AsbestosLitigationExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "AsbestosLitigationExpenses", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Asbestos litigation expenses", "label": "Asbestos Litigation Expenses", "documentation": "Asbestos Litigation Expenses" } } }, "auth_ref": [] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Identifiable assets", "totalLabel": "Total assets", "label": "Assets", "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." } } }, "auth_ref": [ "r141", "r174", "r201", "r245", "r260", "r266", "r311", "r355", "r356", "r358", "r359", "r360", "r362", "r364", "r366", "r367", "r548", "r552", "r570", "r653", "r725", "r803", "r815", "r957", "r958", "r979" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "ASSETS", "label": "Assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total current assets", "terseLabel": "Assets Current", "label": "Assets, Current", "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." } } }, "auth_ref": [ "r168", "r181", "r201", "r311", "r355", "r356", "r358", "r359", "r360", "r362", "r364", "r366", "r367", "r548", "r552", "r570", "r803", "r957", "r958", "r979" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Current assets:", "label": "Assets, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AssetsFairValueAdjustment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsFairValueAdjustment", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Fair value", "label": "Assets, Fair Value Adjustment", "documentation": "Amount of addition (reduction) to the amount at which an asset could be incurred (settled) in a current transaction between willing parties." } } }, "auth_ref": [] }, "us-gaap_AssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsNoncurrent", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Assets, Noncurrent", "label": "Assets, Noncurrent", "totalLabel": "Assets, Noncurrent, Total", "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 after one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r201", "r311", "r355", "r356", "r358", "r359", "r360", "r362", "r364", "r366", "r367", "r548", "r552", "r570", "r957", "r958", "r979" ] }, "ceco_AverageCostPerSettledClaim": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "AverageCostPerSettledClaim", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Average cost per settled claim excluding legal fees", "label": "Average Cost Per Settled Claim", "documentation": "The weighted average cost per settled claim based on the number of claims settled and the amount paid in aggregate for asbestos related claims." } } }, "auth_ref": [] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Exercise Price", "terseLabel": "Exercise Price" } } }, "auth_ref": [ "r881" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardGrantDateFairValue", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Grant Date Fair Value", "terseLabel": "Fair Value as of Grant Date" } } }, "auth_ref": [ "r882" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]", "terseLabel": "Award Timing Disclosures" } } }, "auth_ref": [ "r877" ] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgHowMnpiCnsdrdTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing, How MNPI Considered [Text Block]", "terseLabel": "Award Timing, How MNPI Considered" } } }, "auth_ref": [ "r877" ] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Method [Text Block]", "terseLabel": "Award Timing Method" } } }, "auth_ref": [ "r877" ] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiCnsdrdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Considered [Flag]", "terseLabel": "Award Timing MNPI Considered" } } }, "auth_ref": [ "r877" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiDiscTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Disclosure [Text Block]", "terseLabel": "Award Timing MNPI Disclosure" } } }, "auth_ref": [ "r877" ] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgPredtrmndFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Timing Predetermined [Flag]", "terseLabel": "Award Timing Predetermined" } } }, "auth_ref": [ "r877" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Type [Axis]", "terseLabel": "Award Type", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r487", "r488", "r489", "r490", "r491", "r492", "r493", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r507", "r508", "r509", "r510", "r511", "r512" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Award Underlying Securities Amount", "terseLabel": "Underlying Securities" } } }, "auth_ref": [ "r880" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r879" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table]", "terseLabel": "Awards Close in Time to MNPI Disclosures" } } }, "auth_ref": [ "r878" ] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]", "terseLabel": "Awards Close in Time to MNPI Disclosures, Table" } } }, "auth_ref": [ "r878" ] }, "ceco_BankGuaranteesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "BankGuaranteesMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Bank Guarantees [Member]", "label": "Bank Guarantees [Member]", "documentation": "Bank guarantees." } } }, "auth_ref": [] }, "us-gaap_BaseRateMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BaseRateMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Base Rate [Member]", "terseLabel": "Base Rate [Member]", "documentation": "Minimum rate investor will accept." } } }, "auth_ref": [] }, "ceco_BorrowingsOnRevolvingLineOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "BorrowingsOnRevolvingLineOfCredit", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Borrowings on revolving credit lines", "label": "Borrowings On Revolving Line Of Credit", "documentation": "Borrowings on revolving line of credit." } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAcquireeDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition, Acquiree", "label": "Business Acquisition, Acquiree [Domain]", "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree." } } }, "auth_ref": [ "r542", "r792", "r795" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition", "label": "Business Acquisition [Axis]", "documentation": "Information by business combination or series of individually immaterial business combinations." } } }, "auth_ref": [ "r72", "r74", "r542", "r792", "r795" ] }, "us-gaap_BusinessAcquisitionContingentConsiderationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionContingentConsiderationLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition Contingent Consideration [Line Items]", "label": "Business Acquisition, Contingent Consideration [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition [Line Items]", "label": "Business Acquisition [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r542" ] }, "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Acquisition of equity", "label": "Business Acquisition, Percentage of Voting Interests Acquired", "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination." } } }, "auth_ref": [ "r73" ] }, "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionProFormaInformationTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Unaudited Pro Forma Financial Information", "label": "Business Acquisition, Pro Forma Information [Table Text Block]", "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate." } } }, "auth_ref": [ "r894", "r895" ] }, "us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Fair value adjustment to earnout liabilities", "label": "Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability", "documentation": "Amount of increase (decrease) in the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement." } } }, "auth_ref": [ "r545", "r915" ] }, "us-gaap_BusinessCombinationContingentConsiderationLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationContingentConsiderationLiability", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Contingent consideration", "label": "Business Combination, Contingent Consideration, Liability", "totalLabel": "Business Combination, Contingent Consideration, Liability, Total", "documentation": "Amount of liability recognized arising from contingent consideration in a business combination." } } }, "auth_ref": [ "r3", "r79", "r544" ] }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitions8" ], "lang": { "en-us": { "role": { "terseLabel": "Acquisitions and Joint Ventures", "label": "Business Combination Disclosure [Text Block]", "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable)." } } }, "auth_ref": [ "r136", "r543" ] }, "us-gaap_BusinessCombinationIntegrationRelatedCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationIntegrationRelatedCosts", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Acquisition and integration expenses", "label": "Business Combination, Integration Related Costs", "documentation": "Costs incurred to effect a business combination which have been expensed during the period. Such costs could include business integration costs, systems integration and conversion costs, and severance and other employee-related costs." } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail" ], "lang": { "en-us": { "role": { "totalLabel": "Total assets acquired", "terseLabel": "Total assets acquired", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets", "documentation": "Amount of assets acquired at the acquisition date." } } }, "auth_ref": [ "r76" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Cash, Current assets", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r76" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssets", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Current assets", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets", "totalLabel": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Total", "documentation": "Amount of assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer, acquired at the acquisition date." } } }, "auth_ref": [ "r76" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail" ], "lang": { "en-us": { "role": { "negatedLabel": "Current liabilities assumed", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Other", "documentation": "Amount of other liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date." } } }, "auth_ref": [ "r76" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail" ], "lang": { "en-us": { "role": { "negatedLabel": "Deferred tax liability", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date." } } }, "auth_ref": [ "r76" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIndefiniteLivedIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIndefiniteLivedIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Acquired intangible assets", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Indefinite-Lived Intangible Assets", "documentation": "Amount of assets, excluding financial assets and goodwill, that lack physical substance, having a projected indefinite period of benefit, acquired at the acquisition date." } } }, "auth_ref": [ "r76" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible - finite life", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill", "totalLabel": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill, Total", "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date." } } }, "auth_ref": [ "r76" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Property and equipment", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment", "totalLabel": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment, Total", "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date." } } }, "auth_ref": [ "r75", "r76" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail" ], "lang": { "en-us": { "role": { "totalLabel": "Net assets acquired", "terseLabel": "Net assets acquired", "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net", "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed." } } }, "auth_ref": [ "r76" ] }, "us-gaap_BusinessCombinationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationsAbstract", "lang": { "en-us": { "role": { "label": "Business Combinations [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstrumentsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Cash and cash equivalents", "terseLabel": "Cash and cash equivalents", "label": "Cash and Cash Equivalents, at Carrying Value", "totalLabel": "Cash and Cash Equivalents, at Carrying Value, Total", "periodStartLabel": "Cash and Cash Equivalents, at Carrying Value, Beginning Balance", "periodEndLabel": "Cash and Cash Equivalents, at Carrying Value, Ending Balance", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r45", "r170", "r767" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "periodStartLabel": "Cash, cash equivalents and restricted cash at beginning of period", "periodEndLabel": "Cash, cash equivalents and restricted cash at end of period", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations", "totalLabel": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations, Total", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r45", "r120", "r199" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net (decrease) increase in cash, cash equivalents and restricted cash", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r4", "r120" ] }, "ceco_CashHeldOutsideDomesticTerritory": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "CashHeldOutsideDomesticTerritory", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstrumentsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Cash held outside United States, principally in Netherlands, United Kingdom, China, and Canada", "label": "Cash Held Outside Domestic Territory", "documentation": "Cash held outside domestic territory." } } }, "auth_ref": [] }, "ceco_CertainTradeNamesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "CertainTradeNamesMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Certain Tradenames [Member]", "label": "Certain Trade Names [Member]", "documentation": "Certain trade names." } } }, "auth_ref": [] }, "ecd_ChangedPeerGroupFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ChangedPeerGroupFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Changed Peer Group, Footnote [Text Block]", "terseLabel": "Changed Peer Group, Footnote" } } }, "auth_ref": [ "r857" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "City Area Code", "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "ecd_CoSelectedMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Amount", "terseLabel": "Company Selected Measure Amount" } } }, "auth_ref": [ "r858" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Name", "terseLabel": "Company Selected Measure Name" } } }, "auth_ref": [ "r858" ] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Commitments and contingencies (See Note 14)", "label": "Commitments and Contingencies", "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur." } } }, "auth_ref": [ "r35", "r91", "r655", "r712" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMatters" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Text Block]", "terseLabel": "Commitments and Contingencies - Legal Matters", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r128", "r347", "r348", "r763", "r950" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock [Member]", "label": "Common Stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r805", "r806", "r807", "r809", "r810", "r811", "r812", "r922", "r923", "r969", "r992", "r996" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, par value", "label": "Common Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r99" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares authorized", "label": "Common Stock, Shares Authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r99", "r713" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares issued", "label": "Common Stock, Shares, Issued", "totalLabel": "Common Stock, Shares, Issued, Total", "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury." } } }, "auth_ref": [ "r99" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock, shares outstanding", "label": "Common Stock, Shares, Outstanding", "periodStartLabel": "Common Stock, Shares, Outstanding, Beginning Balance", "periodEndLabel": "Common Stock, Shares, Outstanding, Ending Balance", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r17", "r99", "r713", "r731", "r996", "r997" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, $.01 par value; 100,000,000 shares authorized, 34,923,701 and 34,835,293 shares issued and outstanding at June 30, 2024 and December 31, 2023, respectively", "label": "Common Stock, Value, Issued", "totalLabel": "Common Stock, Value, Issued, Total", "periodStartLabel": "Common Stock, Value, Issued, Beginning Balance", "periodEndLabel": "Common Stock, Value, Issued, Ending Balance", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r99", "r657", "r803" ] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Company Selected Measure" } } }, "auth_ref": [ "r863" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsNetIncomeTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Net Income [Text Block]", "terseLabel": "Compensation Actually Paid vs. Net Income" } } }, "auth_ref": [ "r862" ] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsOtherMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Other Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Other Measure" } } }, "auth_ref": [ "r864" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]", "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return" } } }, "auth_ref": [ "r861" ] }, "ceco_CompanyReceivedWorkingCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "CompanyReceivedWorkingCapital", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Company Received Working Capital", "documentation": "Company Received Working Capital" } } }, "auth_ref": [] }, "ceco_CompassWaterSolutionsIncMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "CompassWaterSolutionsIncMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "documentation": "Compass Water Solutions, Inc [Member]", "label": "Compass Water Solutions, Inc [Member]" } } }, "auth_ref": [] }, "us-gaap_CompensationAndRetirementDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CompensationAndRetirementDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Retirement Benefits [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Comprehensive income", "label": "Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest", "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r84", "r138", "r183", "r185", "r191", "r647", "r668" ] }, "srt_ConsolidatedEntitiesAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidatedEntitiesAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Consolidated Entities", "label": "Consolidated Entities [Axis]" } } }, "auth_ref": [ "r205", "r548", "r549", "r552", "r553", "r593", "r764", "r956", "r959", "r960" ] }, "srt_ConsolidatedEntitiesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidatedEntitiesDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Consolidated Entities", "label": "Consolidated Entities [Domain]" } } }, "auth_ref": [ "r205", "r548", "r549", "r552", "r553", "r593", "r764", "r956", "r959", "r960" ] }, "srt_ConsolidationItemsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Consolidation Items", "label": "Consolidation Items [Axis]" } } }, "auth_ref": [ "r205", "r247", "r258", "r259", "r260", "r261", "r262", "r264", "r268", "r355", "r356", "r357", "r358", "r360", "r361", "r363", "r365", "r366", "r957", "r958" ] }, "srt_ConsolidationItemsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Consolidation Items", "label": "Consolidation Items [Domain]" } } }, "auth_ref": [ "r205", "r247", "r258", "r259", "r260", "r261", "r262", "r264", "r268", "r355", "r356", "r357", "r358", "r360", "r361", "r363", "r365", "r366", "r957", "r958" ] }, "ceco_ContractLiabilitiesRecognizedAsRevenue": { "xbrltype": "percentItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ContractLiabilitiesRecognizedAsRevenue", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Contract Liabilities Recognized As Revenue", "label": "Contract Liabilities Recognized As Revenue" } } }, "auth_ref": [] }, "ceco_ContractLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ContractLiabilityCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesSummaryOfAccruedExpensesDetail" ], "lang": { "en-us": { "role": { "label": "Contract Liability Current", "documentation": "Contract liability current.", "terseLabel": "Contract liability" } } }, "auth_ref": [] }, "ceco_ContractReceivableRetainage1": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ContractReceivableRetainage1", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Amount billed but not received under retainage provisions in contracts", "label": "Contract Receivable Retainage1", "documentation": "Contract receivable retainage1." } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Contract Assets and Liabilities", "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]", "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." } } }, "auth_ref": [ "r963" ] }, "ceco_ContractWithCustomerAssetIncreaseDecreaseInCostInExcessOfBillingOnUncompletedContract": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ContractWithCustomerAssetIncreaseDecreaseInCostInExcessOfBillingOnUncompletedContract", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Costs and estimated earnings in excess of billings on uncompleted contracts", "label": "Contract With Customer Asset Increase Decrease In Cost In Excess Of Billing On Uncompleted Contract", "documentation": "Contract with customer asset, increase decrease in cost in excess of billing on uncompleted contract." } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetNetCurrent", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesAdditionalInformationDetails", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesSummaryOfContractAssetsAndLiabilitiesDetails", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Costs and estimated earnings in excess of billings on uncompleted contracts", "label": "Contract with Customer, Asset, after Allowance for Credit Loss, Current", "totalLabel": "Contract with Customer, Asset, after Allowance for Credit Loss, Current, Total", "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, classified as current." } } }, "auth_ref": [ "r401", "r403", "r406" ] }, "us-gaap_ContractWithCustomerAssetNetCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetNetCurrentAbstract", "lang": { "en-us": { "role": { "label": "Contract with Customer, Asset, after Allowance for Credit Loss, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesAdditionalInformationDetails", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesSummaryOfContractAssetsAndLiabilitiesDetails", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Billings in excess of costs and estimated earnings on uncompleted contracts", "label": "Contract with Customer, Liability, Current", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r401", "r402", "r406" ] }, "ceco_ContractWithCustomerLiabilityIncreaseDecreaseInBillingInExcessOfCostOfEarnings": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ContractWithCustomerLiabilityIncreaseDecreaseInBillingInExcessOfCostOfEarnings", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Billings in excess of costs and estimated earnings on uncompleted contracts", "label": "Contract With Customer Liability Increase Decrease In Billing In Excess Of Cost Of Earnings", "documentation": "Contract with customer, liability increase decrease in billing in excess of cost of earnings." } } }, "auth_ref": [] }, "us-gaap_CorporateAndOtherMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CorporateAndOtherMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationNetSalesAndIncomeFromOperationByBusinessSegmentDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail" ], "lang": { "en-us": { "role": { "label": "Corporate and Other [Member]", "documentation": "Component of an entity that provides financial and operational oversight and administrative support for other segments and other segments not separately reported due to size or nature of business activities. Excludes intersegment elimination and reconciling items." } } }, "auth_ref": [ "r927" ] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfGoodsAndServicesSold", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of sales", "label": "Cost of Goods and Services Sold", "totalLabel": "Cost of Goods and Services Sold, Total", "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." } } }, "auth_ref": [ "r114", "r628" ] }, "srt_CounterpartyNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "CounterpartyNameAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Counterparty Name", "label": "Counterparty Name [Axis]" } } }, "auth_ref": [ "r203", "r204", "r372", "r398", "r592", "r771", "r773" ] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "ceco_CreditAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "CreditAgreementMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Credit Agreement [Member]", "label": "Credit Agreement [Member]", "documentation": "Credit agreement." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Credit Facility", "label": "Credit Facility [Axis]", "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Credit Facility", "label": "Credit Facility [Domain]", "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "ceco_CreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "CreditFacilityMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstrumentsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Credit Facility [Member]", "label": "Credit Facility [Member]", "documentation": "Credit facility." } } }, "auth_ref": [] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Current Fiscal Year End Date", "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "ceco_CustomerListsAndTradeNameMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "CustomerListsAndTradeNameMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Customer Lists and Tradename [Member]", "label": "Customer Lists And Trade Name [Member]", "documentation": "Customer lists and trade name." } } }, "auth_ref": [] }, "us-gaap_CustomerListsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerListsMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Customer Lists [Member]", "label": "Customer Lists [Member]", "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." } } }, "auth_ref": [ "r78" ] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Debt Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebt" ], "lang": { "en-us": { "role": { "terseLabel": "Senior Debt", "label": "Debt Disclosure [Text Block]", "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants." } } }, "auth_ref": [ "r129", "r200", "r368", "r374", "r375", "r376", "r377", "r378", "r379", "r384", "r391", "r392", "r394" ] }, "us-gaap_DebtInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstrumentsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument", "label": "Debt Instrument [Axis]", "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities." } } }, "auth_ref": [ "r21", "r95", "r96", "r142", "r144", "r205", "r369", "r370", "r371", "r372", "r373", "r375", "r380", "r381", "r382", "r383", "r385", "r386", "r387", "r388", "r389", "r390", "r583", "r782", "r783", "r784", "r785", "r786", "r918" ] }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Debt instrument, basis spread on variable rate", "label": "Debt Instrument, Basis Spread on Variable Rate", "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument." } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentFairValue", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstrumentsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Fair value of debt issued", "label": "Debt Instrument, Fair Value Disclosure", "totalLabel": "Debt Instrument, Fair Value Disclosure, Total", "documentation": "Fair value portion of debt instrument payable, including, but not limited to, notes payable and loans payable." } } }, "auth_ref": [ "r382", "r569", "r783", "r784" ] }, "us-gaap_DebtInstrumentFrequencyOfPeriodicPayment": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentFrequencyOfPeriodicPayment", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Frequency of periodic payment", "label": "Debt Instrument, Frequency of Periodic Payment", "documentation": "Description of the frequency of periodic payments (monthly, quarterly, annual)." } } }, "auth_ref": [ "r33", "r93" ] }, "us-gaap_DebtInstrumentInterestRateEffectivePercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentInterestRateEffectivePercentage", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument, Interest Rate, Effective Percentage", "label": "Debt Instrument, Interest Rate, Effective Percentage", "documentation": "Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium." } } }, "auth_ref": [ "r31", "r86", "r396", "r583" ] }, "us-gaap_DebtInstrumentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument [Line Items]", "label": "Debt Instrument [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r205", "r369", "r370", "r371", "r372", "r373", "r375", "r380", "r381", "r382", "r383", "r385", "r386", "r387", "r388", "r389", "r390", "r393", "r583", "r782", "r783", "r784", "r785", "r786", "r918" ] }, "us-gaap_DebtInstrumentMaturityDate": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentMaturityDate", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Term loans, year of maturity", "label": "Debt Instrument, Maturity Date", "documentation": "Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format." } } }, "auth_ref": [ "r161", "r782", "r971" ] }, "us-gaap_DebtInstrumentNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentNameDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstrumentsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument, Name", "label": "Debt Instrument, Name [Domain]", "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities." } } }, "auth_ref": [ "r33", "r205", "r369", "r370", "r371", "r372", "r373", "r375", "r380", "r381", "r382", "r383", "r385", "r386", "r387", "r388", "r389", "r390", "r583", "r782", "r783", "r784", "r785", "r786", "r918" ] }, "us-gaap_DebtInstrumentRedemptionPeriodAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentRedemptionPeriodAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument, Redemption, Period", "label": "Debt Instrument, Redemption, Period [Axis]", "documentation": "Information about timing of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r19" ] }, "us-gaap_DebtInstrumentRedemptionPeriodDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentRedemptionPeriodDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument, Redemption, Period", "label": "Debt Instrument, Redemption, Period [Domain]", "documentation": "Period as defined under terms of the debt agreement for debt redemption features." } } }, "auth_ref": [ "r19" ] }, "us-gaap_DebtInstrumentRedemptionPeriodOneMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentRedemptionPeriodOneMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Redemption, Period One [Member]", "terseLabel": "Debt Instrument, Redemption, Through September 2025 [Member]", "documentation": "Period one representing most current period of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r19" ] }, "us-gaap_DebtInstrumentRedemptionPeriodThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentRedemptionPeriodThreeMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument, Redemption, Thereafter [Member]", "label": "Debt Instrument, Redemption, Period Three [Member]", "documentation": "Period three representing third most current period of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r19" ] }, "us-gaap_DebtInstrumentRedemptionPeriodTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentRedemptionPeriodTwoMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument, Redemption, Through June 2023 [Member]", "label": "Debt Instrument, Redemption, Period Two [Member]", "documentation": "Period two representing second most current period of debt redemption features under terms of the debt agreement." } } }, "auth_ref": [ "r19" ] }, "us-gaap_DebtInstrumentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument [Table]", "label": "Schedule of Long-Term Debt Instruments [Table]", "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer." } } }, "auth_ref": [ "r33", "r59", "r60", "r85", "r86", "r88", "r92", "r130", "r131", "r205", "r369", "r370", "r371", "r372", "r373", "r375", "r380", "r381", "r382", "r383", "r385", "r386", "r387", "r388", "r389", "r390", "r393", "r583", "r782", "r783", "r784", "r785", "r786", "r918" ] }, "us-gaap_DebtInstrumentUnamortizedDiscount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentUnamortizedDiscount", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "negatedLabel": "Unamortized debt discount", "label": "Debt Instrument, Unamortized Discount", "totalLabel": "Debt Instrument, Unamortized Discount, Total", "documentation": "Amount, after accumulated amortization, of debt discount." } } }, "auth_ref": [ "r85", "r88", "r962" ] }, "us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentUnusedBorrowingCapacityAmount", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Unused credit availability under credit facility", "label": "Debt Instrument, Unused Borrowing Capacity, Amount", "documentation": "Amount of unused borrowing capacity under the long-term financing arrangement that is available to the entity as of the balance sheet date." } } }, "auth_ref": [ "r32" ] }, "us-gaap_DebtWeightedAverageInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtWeightedAverageInterestRate", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average interest rate on outstanding borrowings", "label": "Debt, Weighted Average Interest Rate", "documentation": "Weighted average interest rate of debt outstanding." } } }, "auth_ref": [] }, "us-gaap_DeferredCompensationCashBasedArrangementsLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredCompensationCashBasedArrangementsLiabilityCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Deferred Compensation Cash-Based Arrangements, Liability, Current", "terseLabel": "Deferred cash consideration", "documentation": "Aggregate carrying value as of the balance sheet date of the liabilities for deferred compensation arrangements payable within one year (or the normal operating cycle, if longer). Represents currently earned compensation under cash arrangements (such as a profit-sharing plan, rabbi trust, and employee contract--excluding equity-based arrangements) that is not actually paid until a later date." } } }, "auth_ref": [ "r62", "r63" ] }, "ceco_DeferredConsiderationPaidForAcquisitions": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "DeferredConsiderationPaidForAcquisitions", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Deferred consideration paid for acquisitions", "label": "Deferred Consideration Paid For Acquisitions", "documentation": "Deferred Consideration Paid For Acquisitions" } } }, "auth_ref": [] }, "us-gaap_DeferredCostsAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredCostsAndOtherAssets", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred charges and other assets", "label": "Deferred Costs and Other Assets", "documentation": "Amount of deferred cost assets and assets classified as other." } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxAssetsNet", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Deferred Income Tax Assets, Net, Total", "label": "Deferred Income Tax Assets, Net", "terseLabel": "Deferred income taxes", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting." } } }, "auth_ref": [ "r522", "r523" ] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "verboseLabel": "Deferred income taxes on undistributed earnings", "label": "Deferred Income Tax Expense (Benefit)", "totalLabel": "Deferred Income Tax Expense (Benefit), Total", "terseLabel": "Deferred income tax benefit", "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r10", "r135", "r157", "r537", "r538", "r920" ] }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilitiesNet", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred income tax liability, net", "label": "Deferred Income Tax Liabilities, Net", "totalLabel": "Deferred Income Tax Liabilities, Net, Total", "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting." } } }, "auth_ref": [ "r522", "r523", "r654" ] }, "us-gaap_DeferredRevenueRevenueRecognized1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenueRevenueRecognized1", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "EIS revenue", "label": "Deferred Revenue, Revenue Recognized", "documentation": "Amount of revenue recognized that was previously reported as deferred or unearned revenue." } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsDeferredIncome": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsDeferredIncome", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail" ], "lang": { "en-us": { "role": { "label": "Deferred Tax Assets, Deferred Income", "terseLabel": "Deferred income taxes", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from deferred income." } } }, "auth_ref": [ "r71", "r966" ] }, "us-gaap_DefinedBenefitPensionPlanLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedBenefitPensionPlanLiabilitiesNoncurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Unfunded liability plans", "label": "Liability, Defined Benefit Pension Plan, Noncurrent", "documentation": "Amount of liability, recognized in statement of financial position, for defined benefit pension plan, classified as noncurrent. Excludes other postretirement benefit plan." } } }, "auth_ref": [ "r64", "r65", "r97", "r133" ] }, "us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedBenefitPlanAmortizationOfGainsLosses", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail" ], "lang": { "en-us": { "role": { "negatedLabel": "Amortization of net actuarial loss", "label": "Defined Benefit Plan, Amortization of Gain (Loss)", "documentation": "Amount of gain (loss) recognized in net periodic benefit (cost) credit of defined benefit plan." } } }, "auth_ref": [ "r409", "r447", "r468", "r790", "r791" ] }, "us-gaap_DefinedBenefitPlanContributionsByEmployer": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedBenefitPlanContributionsByEmployer", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Defined benefit plan contributions", "label": "Defined Benefit Plan, Plan Assets, Contributions by Employer", "documentation": "Amount of contribution received by defined benefit plan from employer which increases plan assets." } } }, "auth_ref": [ "r424", "r434", "r472", "r788", "r789", "r790", "r791" ] }, "us-gaap_DefinedBenefitPlanDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedBenefitPlanDisclosureLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Defined Benefit Plan Disclosure [Line Items]", "label": "Defined Benefit Plan Disclosure [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedBenefitPlanExpectedReturnOnPlanAssets", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail" ], "lang": { "en-us": { "role": { "negatedLabel": "Expected return on plan assets", "label": "Defined Benefit Plan, Expected Return (Loss) on Plan Assets", "documentation": "Amount of expected return (loss) recognized in net periodic benefit (cost) credit, calculated based on expected long-term rate of return and market-related value of plan assets of defined benefit plan." } } }, "auth_ref": [ "r409", "r446", "r467", "r790", "r791" ] }, "us-gaap_DefinedBenefitPlanInterestCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedBenefitPlanInterestCost", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Interest cost", "label": "Defined Benefit Plan, Interest Cost", "documentation": "Amount of cost recognized for passage of time related to defined benefit plan." } } }, "auth_ref": [ "r409", "r413", "r445", "r466", "r790", "r791" ] }, "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedBenefitPlanNetPeriodicBenefitCost", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail" ], "lang": { "en-us": { "role": { "totalLabel": "Net periodic benefit cost", "label": "Defined Benefit Plan, Net Periodic Benefit Cost (Credit)", "documentation": "Amount of net periodic benefit cost (credit) for defined benefit plan." } } }, "auth_ref": [ "r443", "r464", "r790", "r791" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Depreciation and amortization", "label": "Depreciation, Depletion and Amortization", "totalLabel": "Depreciation, Depletion and Amortization, Total", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r10", "r250" ] }, "srt_DirectorMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "DirectorMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Non-Employee Director [Member]", "label": "Director [Member]" } } }, "auth_ref": [ "r929", "r993" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensation" ], "lang": { "en-us": { "role": { "terseLabel": "Share-Based Compensation", "label": "Share-Based Payment Arrangement [Text Block]", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r482", "r486", "r514", "r515", "r516", "r799" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DisclosureTextBlockAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureTextBlockAbstract", "lang": { "en-us": { "role": { "label": "Disclosure Text Block [Abstract]" } } }, "auth_ref": [] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "verboseLabel": "Document Fiscal Period Focus", "label": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Document Fiscal Year Focus", "label": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Document Period End Date", "label": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentQuarterlyReport", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Document Quarterly Report", "label": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r819" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Document Transition Report", "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r852" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Document Type", "label": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "us-gaap_DomesticCountryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DomesticCountryMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Federal Authorities [Member]", "label": "Domestic Tax Authority [Member]", "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile." } } }, "auth_ref": [] }, "ceco_Ds21CoLtdMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "Ds21CoLtdMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "terseLabel": "DS21 Co., Ltd.", "label": "DS21 Co., Ltd. [Member]", "documentation": "DS21 Co., Ltd. [Member]" } } }, "auth_ref": [] }, "ceco_EarnOutFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "EarnOutFairValue", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Earn out, Fair value", "label": "Earn out, Fair value" } } }, "auth_ref": [] }, "ceco_EarnOutLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "EarnOutLiability", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Earn Out Liability", "label": "Earn Out Liability", "documentation": "Earn-out liability." } } }, "auth_ref": [] }, "ceco_EarningsAndDividendsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "EarningsAndDividendsPerShareAbstract", "lang": { "en-us": { "role": { "label": "Earnings And Dividends Per Share [Abstract]", "documentation": "Earnings and dividends per share." } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Abstract]", "terseLabel": "Earnings per share:" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Basic", "label": "Earnings Per Share, Basic", "totalLabel": "Earnings Per Share, Basic, Total", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r192", "r215", "r216", "r217", "r218", "r219", "r226", "r228", "r233", "r234", "r235", "r239", "r564", "r565", "r648", "r669", "r774" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted", "label": "Earnings Per Share, Diluted", "totalLabel": "Earnings Per Share, Diluted, Total", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r192", "r215", "r216", "r217", "r218", "r219", "r228", "r233", "r234", "r235", "r239", "r564", "r565", "r648", "r669", "r774" ] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShare" ], "lang": { "en-us": { "role": { "terseLabel": "Earnings per Share", "label": "Earnings Per Share [Text Block]", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r225", "r236", "r237", "r238" ] }, "ceco_EarnoutPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "EarnoutPayments", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Earnout Payments", "label": "Earnout Payments", "documentation": "Earnout payments." } } }, "auth_ref": [] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Effect of exchange rate changes on cash, cash equivalents and restricted cash", "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations", "totalLabel": "Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents, Total", "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. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r574" ] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateContinuingOperations", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Effective income tax rate", "label": "Effective Income Tax Rate Reconciliation, Percent", "totalLabel": "Effective Income Tax Rate Reconciliation, Percent, Total", "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r525" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationTaxSettlementsForeign": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationTaxSettlementsForeign", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Effective Income Tax Rate Reconciliation, Tax Settlement, Foreign, Percent", "label": "Effective Income Tax Rate Reconciliation, Tax Settlement, Foreign, Percent", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax settlement." } } }, "auth_ref": [ "r965", "r967" ] }, "ceco_EffoxFlextorMadderMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "EffoxFlextorMadderMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Effox Flextor Madder [Member]", "label": "Effox Flextor Madder [Member]", "terseLabel": "EFM JV [Member]" } } }, "auth_ref": [] }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeRelatedLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesSummaryOfAccruedExpensesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation and related benefits", "label": "Employee-related Liabilities, Current", "totalLabel": "Employee-related Liabilities, Current, Total", "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r29" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeStockOptionMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Employee Stock Option [Member]", "terseLabel": "Employee Stock Option", "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time." } } }, "auth_ref": [] }, "ceco_EngineeredSystemsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "EngineeredSystemsMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationGoodwillDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationNetSalesAndIncomeFromOperationByBusinessSegmentDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Engineered Systems Segment [Member]", "label": "Engineered Systems [Member]", "documentation": "Engineered systems member." } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Address Line One", "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine2": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine2", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Address Line Two", "label": "Entity Address, Address Line Two", "documentation": "Address Line 2 such as Street or Suite number" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, City or Town", "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Postal Zip Code", "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, State or Province", "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Central Index Key", "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r817" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Common Stock, Shares Outstanding", "label": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Current Reporting Status", "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Emerging Growth Company", "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r817" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity File Number", "label": "Securities Act File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFilerCategory", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Filer Category", "label": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r817" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Incorporation, State or Country Code", "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Interactive Data Current", "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r891" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Registrant Name", "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r817" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Shell Company", "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r817" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Small Business", "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r817" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Tax Identification Number", "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r817" ] }, "ceco_EnvironmentalIntegratedSolutionsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "EnvironmentalIntegratedSolutionsMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Environmental Integrated Solutions [Member]", "label": "Environmental Integrated Solutions [Member]", "documentation": "Environmental Integrated Solutions." } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Component", "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r17", "r163", "r186", "r187", "r188", "r206", "r207", "r208", "r212", "r220", "r222", "r240", "r312", "r315", "r400", "r517", "r518", "r519", "r530", "r531", "r554", "r555", "r556", "r557", "r558", "r560", "r563", "r575", "r576", "r577", "r578", "r579", "r580", "r588", "r683", "r684", "r685", "r700", "r752" ] }, "us-gaap_EquityFairValueAdjustment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityFairValueAdjustment", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "label": "Equity, Fair Value Adjustment", "negatedLabel": "Fair value of noncontrolling interest equity (see Note 14)", "terseLabel": "Fair value of noncontrolling interest equity", "documentation": "Amount of addition (reduction) to the amount at which an instrument classified in shareholders' equity could be incurred (settled) in a current transaction between willing parties." } } }, "auth_ref": [] }, "srt_EquityMethodInvesteeNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "EquityMethodInvesteeNameDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Investment, Name [Domain]" } } }, "auth_ref": [ "r308", "r309", "r310" ] }, "us-gaap_EquityMethodInvestmentOwnershipPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityMethodInvestmentOwnershipPercentage", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Percentage of equity method investment in joint venture", "label": "Equity Method Investment, Ownership Percentage", "documentation": "The percentage of ownership of common stock or equity participation in the investee accounted for under the equity method of accounting." } } }, "auth_ref": [ "r308" ] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "EquityValuationAssumptionDifferenceFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Equity Valuation Assumption Difference, Footnote [Text Block]", "terseLabel": "Equity Valuation Assumption Difference, Footnote" } } }, "auth_ref": [ "r860" ] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompAnalysisTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneous Compensation Analysis [Text Block]", "terseLabel": "Erroneous Compensation Analysis" } } }, "auth_ref": [ "r824", "r835", "r845", "r870" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompRecoveryTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Erroneously Awarded Compensation Recovery [Table]", "terseLabel": "Erroneously Awarded Compensation Recovery" } } }, "auth_ref": [ "r821", "r832", "r842", "r867" ] }, "ceco_EuroDenominatedBankGuaranteeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "EuroDenominatedBankGuaranteeMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Euro-Denominated Bank Guarantee [Member]", "label": "Euro Denominated Bank Guarantee [Member]", "documentation": "Euro-denominated bank guarantee." } } }, "auth_ref": [] }, "ecd_ExecutiveCategoryAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Executive Category [Axis]", "terseLabel": "Executive Category:" } } }, "auth_ref": [ "r866" ] }, "ceco_ExecutiveTransitionExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ExecutiveTransitionExpenses", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "documentation": "Executive transition expenses.", "label": "Executive Transition Expenses", "terseLabel": "Executive transition expenses" } } }, "auth_ref": [] }, "us-gaap_FairValueDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresAbstract", "lang": { "en-us": { "role": { "label": "Fair Value Disclosures [Abstract]" } } }, "auth_ref": [] }, "ceco_FairValueOfFinancialInstrumentsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "FairValueOfFinancialInstrumentsLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstrumentsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Of Financial Instruments [Line Items]", "label": "Fair Value Of Financial Instruments [Line Items]", "documentation": "Fair value of financial instruments." } } }, "auth_ref": [] }, "us-gaap_FairValueOffBalanceSheetRisksDisclosureInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueOffBalanceSheetRisksDisclosureInformationLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contract Assets and Liabilities [Line Items]", "label": "Fair Value, off-Balance-Sheet Risks, Disclosure Information [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "ceco_FederalFundsRateMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "FederalFundsRateMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Federal Funds Rate [Member]", "label": "Federal Funds Rate [Member]", "documentation": "Federal Funds Rate [Member]" } } }, "auth_ref": [] }, "us-gaap_FinancialInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialInstrumentAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Financial Instrument [Axis]", "documentation": "Information by type of financial instrument." } } }, "auth_ref": [ "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r325", "r393", "r399", "r561", "r597", "r598", "r599", "r600", "r601", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r617", "r618", "r619", "r620", "r621", "r622", "r623", "r624", "r625", "r626", "r667", "r779", "r897", "r898", "r899", "r900", "r901", "r902", "r903", "r930", "r931", "r932", "r933" ] }, "us-gaap_FinancialInstrumentsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialInstrumentsDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstruments" ], "lang": { "en-us": { "role": { "terseLabel": "Financial Instruments", "label": "Financial Instruments Disclosure [Text Block]", "documentation": "The entire disclosure for financial instruments. This disclosure includes, but is not limited to, fair value measurements of short and long term marketable securities, international currencies forward contracts, and auction rate securities. Financial instruments may include hedging and non-hedging currency exchange instruments, derivatives, securitizations and securities available for sale at fair value. Also included are investment results, realized and unrealized gains and losses as well as impairments and risk management disclosures." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetUsefulLife", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "verboseLabel": "Intangible assets, Useful Life", "terseLabel": "Intangible assets, Useful Life", "label": "Finite-Lived Intangible Asset, Useful Life", "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." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Amortization", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r172", "r340" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization expense of finite life intangibles for 2025", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r126" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization expense of finite life intangibles for 2024", "label": "Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in remainder of current fiscal year." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Finite Lived Intangible Assets Activities", "label": "Finite-Lived Intangible Assets Amortization Expense [Table Text Block]", "documentation": "Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization expense of finite life intangibles for 2028", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r126" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization expense of finite life intangibles for 2027", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r126" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization expense of finite life intangibles for 2026", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r126" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets by Major Class", "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r338", "r339", "r340", "r341", "r629", "r633" ] }, "us-gaap_FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsFiniteLivedIntangibleAssetsAmortizationExpenseDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency adjustments", "label": "Finite-Lived Intangible Assets, Foreign Currency Translation Gain (Loss)", "negatedLabel": "Foreign currency adjustments", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Cost", "label": "Finite-Lived Intangible Assets, Gross", "totalLabel": "Finite-Lived Intangible Assets, Gross, Total", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r125", "r633" ] }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets [Line Items]", "label": "Finite-Lived Intangible Assets [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r629" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets, Major Class Name", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r56", "r57" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsFiniteLivedIntangibleAssetsAmortizationExpenseDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets \u2013 finite life, net", "periodStartLabel": "Intangible assets \u2013 finite life, net at beginning of period", "periodEndLabel": "Intangible assets \u2013 finite life, net at end of period", "label": "Finite-Lived Intangible Assets, Net", "totalLabel": "Finite-Lived Intangible Assets, Net, Total", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r125", "r629" ] }, "us-gaap_FiniteLivedIntangibleAssetsPurchaseAccountingAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsPurchaseAccountingAdjustments", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsFiniteLivedIntangibleAssetsAmortizationExpenseDetail" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Purchase Accounting Adjustments", "terseLabel": "Acquisition", "documentation": "Amount of increase (decrease) to assets, excluding financial assets and goodwill, lacking physical substance with a finite life for purchase accounting adjustments." } } }, "auth_ref": [] }, "us-gaap_ForeignCurrencyTransactionGainLossUnrealized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCurrencyTransactionGainLossUnrealized", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Unrealized foreign currency gain (loss)", "terseLabel": "Fair value adjustment to earnout liabilities", "label": "Unrealized Gain (Loss), Foreign Currency Transaction, before Tax", "documentation": "Amount, before tax, of unrealized gain (loss) from foreign currency transaction." } } }, "auth_ref": [ "r122", "r733", "r813", "r973", "r974", "r995" ] }, "ceco_ForeignCurrencyTranslationAdjustmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ForeignCurrencyTranslationAdjustmentMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign Currency Adjustments [Member]", "label": "Foreign Currency Translation Adjustment [Member]", "documentation": "Foreign currency translation adjustment." } } }, "auth_ref": [] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "auth_ref": [ "r828", "r839", "r849", "r874" ] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Expense of Enforcement, Amount", "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "auth_ref": [ "r828", "r839", "r849", "r874" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Violation of Home Country Law, Amount", "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "auth_ref": [ "r828", "r839", "r849", "r874" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Explanation of Impracticability [Text Block]", "terseLabel": "Forgone Recovery, Explanation of Impracticability" } } }, "auth_ref": [ "r828", "r839", "r849", "r874" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r828", "r839", "r849", "r874" ] }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnSaleOfPropertyPlantEquipment", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Gain on sale of property and equipment", "label": "Gain (Loss) on Disposition of Property Plant Equipment", "totalLabel": "Gain (Loss) on Disposition of Property Plant Equipment, Total", "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property." } } }, "auth_ref": [ "r10" ] }, "us-gaap_GainLossOnSalesOfLoansNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnSalesOfLoansNet", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net sales", "label": "Gain (Loss) on Sales of Loans, Net", "totalLabel": "Gain (Loss) on Sales of Loans, Net, Total", "documentation": "The net gain (loss) resulting from a sale of loans, including adjustments to record loans classified as held-for-sale at the lower-of-cost-or-market and fair value adjustments to loan held for investment purposes." } } }, "auth_ref": [ "r10", "r153" ] }, "ceco_GeneralRubberLlcMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "GeneralRubberLlcMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "documentation": "General rubber llc .", "label": "General Rubber LLC [Member]" } } }, "auth_ref": [] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Goodwill", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationGoodwillDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsGoodwillTradenameDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill", "periodStartLabel": "Goodwill, beginning balance", "periodEndLabel": "Goodwill, ending balance", "label": "Goodwill", "totalLabel": "Goodwill, Total", "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." } } }, "auth_ref": [ "r171", "r328", "r646", "r781", "r803", "r937", "r944" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssets" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill and Intangible Assets", "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "documentation": "The entire disclosure for goodwill and intangible assets." } } }, "auth_ref": [ "r124" ] }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsGoodwillTradenameDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill, foreign currency translation", "label": "Goodwill, Foreign Currency Translation Gain (Loss)", "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." } } }, "auth_ref": [ "r335" ] }, "us-gaap_GoodwillPurchaseAccountingAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillPurchaseAccountingAdjustments", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsGoodwillTradenameDetail" ], "lang": { "en-us": { "role": { "label": "Goodwill, Purchase Accounting Adjustments", "terseLabel": "Goodwill, Acquisitions", "documentation": "Amount of increase (decrease) from adjustments after acquisition date under purchase accounting of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r2", "r943" ] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Gross profit", "label": "Gross Profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r113", "r201", "r245", "r259", "r265", "r268", "r311", "r355", "r356", "r358", "r359", "r360", "r362", "r364", "r366", "r367", "r570", "r776", "r957" ] }, "ceco_HoldbackPayble": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "HoldbackPayble", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Holdback Payble", "label": "Holdback Payble", "terseLabel": "Holdback Payble" } } }, "auth_ref": [] }, "us-gaap_ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOfIntangibleAssetsIndefinitelivedExcludingGoodwill", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsGoodwillTradenameDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Tradename, Impairment charge", "label": "Impairment of Intangible Assets, Indefinite-Lived (Excluding Goodwill)", "documentation": "Amount of impairment loss resulting from write-down of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit to fair value." } } }, "auth_ref": [ "r916", "r947" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Pre tax loss", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "totalLabel": "Income before income taxes", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r1", "r111", "r149", "r245", "r259", "r265", "r268", "r649", "r663", "r776" ] }, "us-gaap_IncomeLossFromContinuingOperationsPerBasicShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsPerBasicShare", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Basic", "label": "Income (Loss) from Continuing Operations, Per Basic Share", "totalLabel": "Income (Loss) from Continuing Operations, Per Outstanding Share, Total", "documentation": "The amount of net income (loss) from continuing operations per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r109", "r147", "r150", "r192", "r211", "r215", "r216", "r217", "r218", "r228", "r233", "r234", "r565", "r648", "r988" ] }, "us-gaap_IncomeLossFromContinuingOperationsPerDilutedShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsPerDilutedShare", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted", "label": "Income (Loss) from Continuing Operations, Per Diluted Share", "documentation": "The amount of net income (loss) derived from continuing operations during the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r109", "r192", "r211", "r215", "r216", "r217", "r218", "r228", "r233", "r234", "r235", "r565", "r648", "r988" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxAuthorityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Authority", "label": "Income Tax Authority [Axis]", "documentation": "Information by tax jurisdiction." } } }, "auth_ref": [ "r14" ] }, "us-gaap_IncomeTaxAuthorityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Authority", "label": "Income Tax Authority [Domain]", "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxes" ], "lang": { "en-us": { "role": { "terseLabel": "Income Taxes", "label": "Income Tax Disclosure [Text Block]", "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." } } }, "auth_ref": [ "r202", "r521", "r526", "r528", "r529", "r535", "r539", "r540", "r541", "r697" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Income tax expense", "terseLabel": "Income tax expense", "label": "Income Tax Expense (Benefit)", "totalLabel": "Income Tax Expense (Benefit), Total", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r156", "r160", "r221", "r222", "r253", "r524", "r536", "r670" ] }, "ceco_IncomeTaxesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "IncomeTaxesLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Income Taxes [Line Items]", "label": "Income Taxes [Line Items]", "documentation": "Income taxes." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Income taxes", "label": "Income Taxes Paid, Net", "totalLabel": "Income Taxes Paid, Net, Total", "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." } } }, "auth_ref": [ "r46" ] }, "ceco_IncomeTaxesTable": { "xbrltype": "stringItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "IncomeTaxesTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Income Taxes [Table]", "label": "Income Taxes [Table]", "documentation": "Income Taxes [Table]" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts payable", "label": "Increase (Decrease) in Accounts Payable and Accrued Liabilities", "totalLabel": "Increase (Decrease) in Accounts Payable and Accrued Liabilities, Total", "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid." } } }, "auth_ref": [ "r9" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Accounts receivable", "label": "Increase (Decrease) in Accounts Receivable", "terseLabel": "Accounts Receivable, Net Current Assets", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r9" ] }, "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Income taxes payable", "label": "Increase (Decrease) in Income Taxes Payable", "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction." } } }, "auth_ref": [ "r9" ] }, "us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued expenses", "label": "Increase (Decrease) in Accrued Liabilities and Other Operating Liabilities", "documentation": "Amount of increase (decrease) in accrued expenses, and obligations classified as other." } } }, "auth_ref": [ "r915" ] }, "ceco_IncreaseDecreaseInDeferredChargesAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "IncreaseDecreaseInDeferredChargesAndOtherAssets", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Deferred charges and other assets", "label": "Increase Decrease In Deferred Charges And Other Assets", "documentation": "Increase (decrease) in deferred charges and other assets." } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Inventories", "label": "Increase (Decrease) in Inventories", "totalLabel": "Increase (Decrease) in Inventories, Total", "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities." } } }, "auth_ref": [ "r9" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "terseLabel": "Changes in operating assets and liabilities, net of acquisitions:" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOtherOperatingLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOtherOperatingLiabilities", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other liabilities", "label": "Increase (Decrease) in Other Operating Liabilities", "totalLabel": "Increase (Decrease) in Other Operating Liabilities, Total", "documentation": "Amount of increase (decrease) in operating liabilities classified as other." } } }, "auth_ref": [ "r9" ] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Prepaid expense and other current assets", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "totalLabel": "Increase (Decrease) in Prepaid Expense and Other Assets, Total", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r9" ] }, "ceco_IncreaseInEstimatedFairValueOfEarnout": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "IncreaseInEstimatedFairValueOfEarnout", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Increase in estimated fair value of earnout", "label": "Increase In Estimated Fair Value Of Earnout", "documentation": "Increase in estimated fair value of earnout." } } }, "auth_ref": [] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareNumberOfSharesOutstandingForCalculationOfEarningsPerShareDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock equivalents arising from stock options and restricted stock awards", "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements", "totalLabel": "Incremental Common Shares Attributable to Share-based Payment Arrangements, Total", "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method." } } }, "auth_ref": [ "r229", "r230", "r231", "r235", "r485" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsGoodwillTradenameDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets \u2013 indefinite life", "periodStartLabel": "Tradename, beginning balance", "periodEndLabel": "Tradename, ending balance", "label": "Indefinite-Lived Intangible Assets (Excluding Goodwill)", "totalLabel": "Indefinite-lived Intangible Assets (Excluding Goodwill), Total", "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit." } } }, "auth_ref": [ "r127" ] }, "ceco_IndefiniteLivedIntangibleAssetsExcludingGoodwillDuringPeriodTransfers": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwillDuringPeriodTransfers", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsGoodwillTradenameDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Tradename, transfers to finite life classification", "label": "Indefinite Lived Intangible Assets Excluding Goodwill During Period Transfers", "documentation": "Indefinite lived intangible assets excluding goodwill during period transfers." } } }, "auth_ref": [] }, "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwillFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwillFairValueDisclosure", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "verboseLabel": "Finite-lived intangible asset, fair value", "label": "Indefinite-Lived Intangible Assets (Excluding Goodwill), Fair Value Disclosure", "documentation": "Fair value portion of assets, excluding financial assets and goodwill, that lack physical substance, having a projected indefinite period of benefit." } } }, "auth_ref": [ "r970" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsGoodwillTradenameDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Tradename, foreign currency translation", "label": "Indefinite-Lived Intangible Assets, Foreign Currency Translation Gain (Loss)", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit to fair value." } } }, "auth_ref": [] }, "us-gaap_IndefiniteLivedIntangibleAssetsPurchaseAccountingAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsPurchaseAccountingAdjustments", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsGoodwillTradenameDetail" ], "lang": { "en-us": { "role": { "label": "Indefinite-Lived Intangible Assets, Purchase Accounting Adjustments", "terseLabel": "Tradename, Acquisitions", "documentation": "Amount of increase (decrease) of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit, from purchase accounting adjustments." } } }, "auth_ref": [] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "IndividualAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Individual [Axis]", "terseLabel": "Individual:" } } }, "auth_ref": [ "r831", "r839", "r849", "r866", "r874", "r878", "r886" ] }, "ceco_IndustrialProcessSolutionsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "IndustrialProcessSolutionsMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationGoodwillDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationNetSalesAndIncomeFromOperationByBusinessSegmentDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Industrial Process Solutions Segment [Member]", "label": "Industrial Process Solutions [Member]", "documentation": "Industrial process solutions member." } } }, "auth_ref": [] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]", "terseLabel": "Insider Trading Arrangements:" } } }, "auth_ref": [ "r884" ] }, "ecd_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]", "terseLabel": "Insider Trading Policies and Procedures:" } } }, "auth_ref": [ "r820", "r890" ] }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Adopted [Flag]", "terseLabel": "Insider Trading Policies and Procedures Adopted" } } }, "auth_ref": [ "r820", "r890" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]", "terseLabel": "Insider Trading Policies and Procedures Not Adopted" } } }, "auth_ref": [ "r820", "r890" ] }, "ceco_InstallmentsPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "InstallmentsPaid", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Installments Paid", "documentation": "Installments Paid" } } }, "auth_ref": [] }, "us-gaap_InterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestExpense", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Interest expense", "label": "Interest Expense", "totalLabel": "Interest Expense, Total", "documentation": "Amount of the cost of borrowed funds accounted for as interest expense." } } }, "auth_ref": [ "r87", "r154", "r189", "r249", "r582", "r737", "r813", "r994" ] }, "us-gaap_InterestIncomeExpenseNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestIncomeExpenseNet", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails" ], "lang": { "en-us": { "role": { "label": "Interest Income (Expense), Net", "totalLabel": "Interest Income (Expense), Net, Total", "terseLabel": "Net income attributable to CECO Environmental Corp.", "documentation": "The net amount of operating interest income (expense)." } } }, "auth_ref": [ "r152" ] }, "us-gaap_InterestPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPaidNet", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Interest", "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities", "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." } } }, "auth_ref": [ "r194", "r197", "r198" ] }, "us-gaap_InterestRevenueExpenseNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestRevenueExpenseNet", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Net revenue", "label": "Interest Revenue (Expense), Net", "totalLabel": "Interest Revenue (Expense), Net, Total", "documentation": "Amount of interest revenue (income derived from investments in debt securities and on cash and cash equivalents) net of interest expense (cost of borrowed funds accounted for as interest)." } } }, "auth_ref": [ "r245" ] }, "us-gaap_IntersegmentEliminationMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntersegmentEliminationMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail" ], "lang": { "en-us": { "role": { "label": "Intersegment Eliminations [Member]", "terseLabel": "Inter-Segment Elimination [Member]", "documentation": "Eliminating entries used in operating segment consolidation." } } }, "auth_ref": [ "r247", "r258", "r259", "r260", "r261", "r262", "r264", "r268" ] }, "us-gaap_IntersubsegmentEliminationsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntersubsegmentEliminationsMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail" ], "lang": { "en-us": { "role": { "label": "Intersubsegment Eliminations [Member]", "terseLabel": "Intra-Segment Sales [Member]", "documentation": "Eliminating entries used in subsegment consolidation." } } }, "auth_ref": [] }, "ceco_IntraSegmentAndInterSegmentEliminationByRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "IntraSegmentAndInterSegmentEliminationByRevenueTableTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Intra-Segment and Inter-Segment Revenues", "label": "Intra Segment And Inter Segment Elimination By Revenue Table [Text Block]", "documentation": "Intra segment and inter segment elimination by revenue." } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureAbstract", "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventories" ], "lang": { "en-us": { "role": { "terseLabel": "Inventories", "label": "Inventory Disclosure [Text Block]", "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory." } } }, "auth_ref": [ "r326" ] }, "us-gaap_InventoryFinishedGoods": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryFinishedGoods", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesSummaryOfInventoriesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Finished goods", "label": "Inventory, Finished Goods, Gross", "totalLabel": "Inventory, Finished Goods, Gross, Total", "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer." } } }, "auth_ref": [ "r906" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNet", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesSummaryOfInventoriesDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total inventories", "terseLabel": "Inventories, net", "label": "Inventory, Net", "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r180", "r768", "r803" ] }, "us-gaap_InventoryNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNetAbstract", "lang": { "en-us": { "role": { "label": "Inventory, Net [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InventoryRawMaterials": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryRawMaterials", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesSummaryOfInventoriesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Raw materials", "label": "Inventory, Raw Materials, Gross", "totalLabel": "Inventory, Raw Materials, Gross, Total", "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r908" ] }, "ceco_InventoryReserveExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "InventoryReserveExpenseBenefit", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Inventory reserve expense", "label": "Inventory Reserve Expense Benefit", "documentation": "Inventory reserve expense benefit." } } }, "auth_ref": [] }, "us-gaap_InventoryValuationReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryValuationReserves", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesSummaryOfInventoriesDetail" ], "lang": { "en-us": { "role": { "negatedLabel": "Obsolescence allowance", "label": "Inventory Valuation Reserves", "periodStartLabel": "Inventory Valuation Reserves, Beginning Balance", "periodEndLabel": "Inventory Valuation Reserves, Ending Balance", "documentation": "Amount of valuation reserve for inventory." } } }, "auth_ref": [ "r53", "r909" ] }, "us-gaap_InventoryWorkInProcess": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWorkInProcess", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesSummaryOfInventoriesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Work in process", "label": "Inventory, Work in Process, Gross", "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r907" ] }, "us-gaap_InventoryWriteDown": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWriteDown", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Amounts credited to the allowance for obsolete inventory", "label": "Inventory Write-down", "documentation": "Amount of loss from reductions in inventory due to subsequent measurement adjustments, including, but not limited to, physical deterioration, obsolescence, or changes in price levels." } } }, "auth_ref": [ "r327" ] }, "us-gaap_InvestmentsAllOtherInvestmentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentsAllOtherInvestmentsAbstract", "lang": { "en-us": { "role": { "label": "Investments, All Other Investments [Abstract]" } } }, "auth_ref": [] }, "ceco_JointVentureAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "JointVentureAgreementMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "label": "Joint Venture Agreement [Member]", "documentation": "Joint venture agreement.", "terseLabel": "Joint Venture Agreement [Member]" } } }, "auth_ref": [] }, "ceco_KemcoSystemsCoLlcMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "KemcoSystemsCoLlcMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "documentation": "Kemco Systems Co Llc [Member]", "label": "Kemco Systems Co Llc [Member]" } } }, "auth_ref": [] }, "ceco_LeaseLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "LeaseLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesSummaryOfAccruedExpensesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Short-term operating lease liability", "label": "Lease Liabilities Current", "documentation": "Lease liabilities, current." } } }, "auth_ref": [] }, "us-gaap_LessorOperatingLeaseIndemnificationPaymentReceived": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LessorOperatingLeaseIndemnificationPaymentReceived", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Tax indemnification received", "label": "Lessor, Operating Lease, Indemnification Payment Received", "documentation": "Amount received for indemnification payment for tax effect other than investment tax credit for operating lease." } } }, "auth_ref": [ "r802" ] }, "us-gaap_LettersOfCreditOutstandingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LettersOfCreditOutstandingAmount", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate principal amount outstanding under the credit facilities", "label": "Letters of Credit Outstanding, Amount", "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date." } } }, "auth_ref": [] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities", "terseLabel": "Liabilities", "label": "Liabilities", "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." } } }, "auth_ref": [ "r28", "r201", "r311", "r355", "r356", "r358", "r359", "r360", "r362", "r364", "r366", "r367", "r549", "r552", "r553", "r570", "r711", "r775", "r815", "r957", "r979", "r980" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities and shareholders' equity", "label": "Liabilities and Equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r104", "r146", "r661", "r803", "r919", "r934", "r972" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "LIABILITIES AND SHAREHOLDERS\u2019 EQUITY", "label": "Liabilities and Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total current liabilities", "label": "Liabilities, Current", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r30", "r169", "r201", "r311", "r355", "r356", "r358", "r359", "r360", "r362", "r364", "r366", "r367", "r549", "r552", "r553", "r570", "r803", "r957", "r979", "r980" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Current liabilities:", "label": "Liabilities, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilityForUncertainTaxPositionsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilityForUncertainTaxPositionsNoncurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Liability for uncertain tax positions", "label": "Liability for Uncertainty in Income Taxes, Noncurrent", "documentation": "Amount recognized for uncertainty in income taxes classified as noncurrent." } } }, "auth_ref": [ "r34" ] }, "us-gaap_LineOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCredit", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "verboseLabel": "Bank guarantee agreement outstanding amount", "label": "Long-Term Line of Credit", "totalLabel": "Long-term Line of Credit, Total", "terseLabel": "Revolving credit facility", "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement." } } }, "auth_ref": [ "r21", "r144", "r987" ] }, "us-gaap_LineOfCreditFacilityLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Line Of Credit Facility [Line Items]", "label": "Line of Credit Facility [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r918" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Bank guarantee issuance under bilateral lines and collateral", "label": "Line of Credit Facility, Maximum Borrowing Capacity", "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility." } } }, "auth_ref": [ "r26" ] }, "us-gaap_LineOfCreditFacilityPeriodicPaymentPrincipal": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityPeriodicPaymentPrincipal", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding borrowings, quarterly principal installments payable amount", "label": "Line of Credit Facility, Periodic Payment, Principal", "documentation": "Amount of the required periodic payment applied to principal." } } }, "auth_ref": [ "r26" ] }, "us-gaap_LineOfCreditFacilityTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Line Of Credit Facility [Table]", "label": "Line of Credit Facility [Table]", "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line." } } }, "auth_ref": [ "r26", "r918" ] }, "us-gaap_LineOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "label": "Line of Credit [Member]", "terseLabel": "Line Of Credit [Member]", "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." } } }, "auth_ref": [] }, "us-gaap_LitigationSettlementAmountAwardedFromOtherParty": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LitigationSettlementAmountAwardedFromOtherParty", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Cumulative settlement payments for cases involving asbestos-related claims", "label": "Litigation Settlement, Amount Awarded from Other Party", "documentation": "Amount awarded from other party in judgment or settlement of litigation." } } }, "auth_ref": [] }, "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivable" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts Receivable", "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]", "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." } } }, "auth_ref": [ "r928" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Local Phone Number", "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebt", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "totalLabel": "Total outstanding borrowings under the Credit Facility", "label": "Long-Term Debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation." } } }, "auth_ref": [ "r21", "r144", "r381", "r395", "r783", "r784", "r987" ] }, "us-gaap_LongTermDebtCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Less: current portion", "terseLabel": "Current portion of debt", "label": "Long-Term Debt, Current Maturities", "totalLabel": "Long-term Debt, Current Maturities, Total", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation." } } }, "auth_ref": [ "r175" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Maturity, Year One", "terseLabel": "Credit facility principal payments 2024", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r12", "r205", "r386" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Maturity, Year Four", "terseLabel": "Credit facility principal payments 2027", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r12", "r205", "r386" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Maturity, Year Three", "terseLabel": "Credit facility principal payments 2026", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r12", "r205", "r386" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Maturity, Year Two", "terseLabel": "Credit facility principal payments 2025", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r12", "r205", "r386" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Maturity, Remainder of Fiscal Year", "terseLabel": "Credit facility principal payments 2023", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in remainder of current fiscal year." } } }, "auth_ref": [ "r921" ] }, "us-gaap_LongTermDebtNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtNoncurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Total debt, less current portion", "label": "Long-Term Debt, Excluding Current Maturities", "totalLabel": "Long-term Debt, Excluding Current Maturities, Total", "terseLabel": "Debt, less current portion", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation." } } }, "auth_ref": [ "r176" ] }, "us-gaap_LossContingenciesTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossContingenciesTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Loss Contingencies [Table]", "documentation": "Discloses the specific components (such as the nature, name, and date) of the loss contingency and gives an estimate of the possible loss or range of loss, or states that a reasonable estimate cannot be made. Excludes environmental contingencies, warranties and unconditional purchase obligations." } } }, "auth_ref": [ "r349", "r350", "r351", "r354", "r951", "r952" ] }, "us-gaap_LossContingencyManagementsAssessmentAndProcess": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossContingencyManagementsAssessmentAndProcess", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Assessment regarding Loss contingency impact Description", "label": "Loss Contingency, Management's Assessment and Process", "documentation": "Describes management's process to evaluate the contingency matter and to estimate the impact on the financial statements and ongoing operations, such as added credit risk or loss of customers, including pertinent information to adequately disclose the matter and significant assumptions underlying the estimates." } } }, "auth_ref": [] }, "us-gaap_LossContingencyPendingClaimsNumber": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossContingencyPendingClaimsNumber", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Number of claims pending", "label": "Loss Contingency, Pending Claims, Number", "periodStartLabel": "Loss Contingency, Pending Claims, Number, Beginning Balance", "periodEndLabel": "Loss Contingency, Pending Claims, Number, Ending Balance", "documentation": "Number of pending claims pertaining to a loss contingency." } } }, "auth_ref": [ "r951", "r952" ] }, "ceco_MaderHoldingsLPMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "MaderHoldingsLPMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "label": "Mader Holdings L P [Member]", "documentation": "Mader holdings.", "terseLabel": "Mader Holdings L.P. [Member]" } } }, "auth_ref": [] }, "ceco_MalvarEngineeringLimitedMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "MalvarEngineeringLimitedMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "documentation": "Malvar Engineering Limited [Member]", "label": "Malvar Engineering Limited [Member]", "terseLabel": "Malvar Engineering Limited [Member]" } } }, "auth_ref": [] }, "ceco_MaximumConsolidatedLeverageRatio": { "xbrltype": "percentItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "MaximumConsolidatedLeverageRatio", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum consolidated leverage ratio", "label": "Maximum Consolidated Leverage Ratio", "documentation": "Maximum consolidated leverage ratio." } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]", "terseLabel": "Maximum [Member]" } } }, "auth_ref": [ "r350", "r351", "r352", "r353", "r479", "r627", "r682", "r702", "r703", "r756", "r757", "r758", "r759", "r760", "r765", "r766", "r778", "r787", "r798", "r804", "r961", "r981", "r982", "r983", "r984", "r985", "r986" ] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure [Axis]", "terseLabel": "Measure:" } } }, "auth_ref": [ "r858" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Measure Name", "terseLabel": "Name" } } }, "auth_ref": [ "r858" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum [Member]" } } }, "auth_ref": [ "r350", "r351", "r352", "r353", "r479", "r627", "r682", "r702", "r703", "r756", "r757", "r758", "r759", "r760", "r765", "r766", "r778", "r787", "r798", "r804", "r961", "r981", "r982", "r983", "r984", "r985", "r986" ] }, "us-gaap_MinorityInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MinorityInterest", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "label": "Equity, Attributable to Noncontrolling Interest", "totalLabel": "Stockholders' Equity Attributable to Noncontrolling Interest, Total", "periodStartLabel": "Stockholders' Equity Attributable to Noncontrolling Interest, Beginning Balance", "periodEndLabel": "Stockholders' Equity Attributable to Noncontrolling Interest, Ending Balance", "terseLabel": "Non-controlling interest", "documentation": "Amount of equity (deficit) attributable to noncontrolling interest. Excludes temporary equity." } } }, "auth_ref": [ "r38", "r145", "r201", "r311", "r355", "r358", "r359", "r360", "r366", "r367", "r570", "r660", "r715" ] }, "us-gaap_MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MinorityInterestDecreaseFromDistributionsToNoncontrollingInterestHolders", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Noncontrolling interest distribution", "label": "Noncontrolling Interest, Decrease from Distributions to Noncontrolling Interest Holders", "documentation": "Decrease in noncontrolling interest balance from payment of dividends or other distributions by the non-wholly owned subsidiary or partially owned entity, included in the consolidation of the parent entity, to the noncontrolling interest holders." } } }, "auth_ref": [ "r132" ] }, "us-gaap_MinorityInterestOwnershipPercentageByParent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MinorityInterestOwnershipPercentageByParent", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Subsidiary, Ownership Percentage, Parent", "label": "Subsidiary, Ownership Percentage, Parent", "documentation": "The parent entity's interest in net assets of the subsidiary, expressed as a percentage." } } }, "auth_ref": [] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MnpiDiscTimedForCompValFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "MNPI Disclosure Timed for Compensation Value [Flag]", "terseLabel": "MNPI Disclosure Timed for Compensation Value" } } }, "auth_ref": [ "r877" ] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Material Terms of Trading Arrangement [Text Block]", "terseLabel": "Material Terms of Trading Arrangement" } } }, "auth_ref": [ "r885" ] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NamedExecutiveOfficersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Named Executive Officers, Footnote [Text Block]", "terseLabel": "Named Executive Officers, Footnote" } } }, "auth_ref": [ "r859" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash (used in) provided by financing activities", "label": "Net Cash Provided by (Used in) Financing Activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r196" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from financing activities:", "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used in investing activities", "label": "Net Cash Provided by (Used in) Investing Activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r196" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from investing activities:", "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by (used in) operating activities", "label": "Net Cash Provided by (Used in) Operating Activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r120", "r121", "r122" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from operating activities:", "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLoss", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareNumberOfSharesOutstandingForCalculationOfEarningsPerShareDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss)", "terseLabel": "Net Income (Loss)", "totalLabel": "Net income attributable to CECO Environmental Corp.", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r112", "r122", "r151", "r167", "r182", "r184", "r188", "r201", "r211", "r215", "r216", "r217", "r218", "r221", "r222", "r232", "r245", "r259", "r265", "r268", "r311", "r355", "r356", "r358", "r359", "r360", "r362", "r364", "r366", "r367", "r565", "r570", "r666", "r734", "r750", "r751", "r776", "r813", "r957" ] }, "us-gaap_NetIncomeLossAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareNumberOfSharesOutstandingForCalculationOfEarningsPerShareDetail" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss) Attributable to Parent [Abstract]", "terseLabel": "Numerator (for basic and diluted earnings per share)" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAttributableToNoncontrollingInterest", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss) Attributable to Noncontrolling Interest", "totalLabel": "Net Income (Loss) Attributable to Noncontrolling Interest, Total", "negatedLabel": "Non-controlling interest", "terseLabel": "Noncontrolling interest", "documentation": "Amount of Net Income (Loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r83", "r139", "r182", "r184", "r221", "r222", "r665", "r913" ] }, "ceco_NetherlandsFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "NetherlandsFacilityMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Netherlands Facility [Member]", "label": "Netherlands Facility [Member]", "documentation": "Netherlands facility." } } }, "auth_ref": [] }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureNewFinancialAccountingPronouncements" ], "lang": { "en-us": { "role": { "terseLabel": "New Financial Accounting Pronouncements", "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]", "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle." } } }, "auth_ref": [ "r158", "r159", "r162", "r165", "r209", "r210", "r213", "r214", "r223", "r224", "r313", "r314", "r532", "r533", "r534", "r559", "r562", "r566", "r567", "r568", "r571", "r572", "r573", "r584", "r585", "r589", "r630", "r631", "r632", "r686", "r687", "r688", "r689", "r690" ] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureNewFinancialAccountingPronouncementsPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Accounting Standards Adopted in Fiscal 2024", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "ceco_NewAccountingStandardsNotYetAdoptedPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "NewAccountingStandardsNotYetAdoptedPolicyTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureNewFinancialAccountingPronouncementsPolicies" ], "lang": { "en-us": { "role": { "label": "New Accounting Standards Not Yet Adopted Policy [Text Block]", "documentation": "New accounting standards not yet adopted policy.", "terseLabel": "Accounting Standards to be Adopted" } } }, "auth_ref": [] }, "ecd_NonGaapMeasureDescriptionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonGaapMeasureDescriptionTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-GAAP Measure Description [Text Block]", "terseLabel": "Non-GAAP Measure Description" } } }, "auth_ref": [ "r858" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-NEOs [Member]", "terseLabel": "Non-NEOs" } } }, "auth_ref": [ "r828", "r839", "r849", "r866", "r874" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgCompActuallyPaidAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Compensation Actually Paid Amount", "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "auth_ref": [ "r856" ] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Total Compensation Amount", "terseLabel": "Non-PEO NEO Average Total Compensation Amount" } } }, "auth_ref": [ "r855" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO [Member]", "terseLabel": "Non-PEO NEO" } } }, "auth_ref": [ "r866" ] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r885" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r885" ] }, "us-gaap_NoncatastrophicEventAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncatastrophicEventAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Noncatastrophic Event [Axis]", "documentation": "Information by type of noncatastrophic event causing change in the insurer's provision." } } }, "auth_ref": [ "r155" ] }, "us-gaap_NoncatastrophicEventDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncatastrophicEventDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Noncatastrophic Event [Domain]", "documentation": "Noncatastrophic event causing change in the insurer's provision." } } }, "auth_ref": [ "r155" ] }, "us-gaap_NoncontrollingInterestMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncontrollingInterestMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Noncontrolling Interest [Member]", "label": "Noncontrolling Interest [Member]", "documentation": "This element represents that portion of equity (net assets) in a subsidiary not attributable, directly or indirectly, to the parent. A noncontrolling interest is sometimes called a minority interest." } } }, "auth_ref": [ "r80", "r400", "r922", "r923", "r924", "r996" ] }, "us-gaap_NoncurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncurrentAssets", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Noncurrent Assets", "label": "Long-Lived Assets", "documentation": "Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets." } } }, "auth_ref": [ "r273" ] }, "us-gaap_NotesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NotesPayable", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "totalLabel": "Notes Payable, Total", "label": "Notes Payable", "documentation": "Including the current and noncurrent portions, aggregate carrying amount of all types of notes payable, as of the balance sheet date, with initial maturities beyond one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r21", "r144", "r987" ] }, "ceco_NotesPayableCurrent1": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "NotesPayableCurrent1", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Notes payable", "documentation": "Notes Payable Current is the part of Total Debt", "label": "Notes Payable Current1" } } }, "auth_ref": [] }, "us-gaap_OpenTaxYear": { "xbrltype": "gYearListItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OpenTaxYear", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Open tax years", "label": "Open Tax Year", "documentation": "Tax year that remains open to examination under enacted tax laws, in YYYY format." } } }, "auth_ref": [ "r527" ] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationNetSalesAndIncomeFromOperationByBusinessSegmentDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Income from operations", "label": "Operating Income (Loss)", "totalLabel": "Income from operations", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r245", "r259", "r265", "r268", "r776" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease liabilities", "label": "Operating Lease, Liability, Noncurrent", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r587" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Right-of-Use Asset", "verboseLabel": "Right-of-use assets from operating leases", "terseLabel": "Right-of-use assets from operating leases", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r586" ] }, "us-gaap_OperatingSegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingSegmentsMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Operating Segments [Member]", "label": "Operating Segments [Member]", "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r258", "r259", "r260", "r261", "r262", "r268" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "lang": { "en-us": { "role": { "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBasisOfReportingForConsolidatedFinancialStatements" ], "lang": { "en-us": { "role": { "terseLabel": "Basis of Reporting for Consolidated Financial Statements", "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]", "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure." } } }, "auth_ref": [ "r94", "r137", "r691", "r692" ] }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAccruedLiabilitiesCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesSummaryOfAccruedExpensesDetail" ], "lang": { "en-us": { "role": { "label": "Other Accrued Liabilities, Current", "terseLabel": "Other", "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r29" ] }, "us-gaap_OtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssets", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Other Assets", "label": "Other Assets", "totalLabel": "Other Assets, Total", "documentation": "Amount of assets classified as other." } } }, "auth_ref": [ "r140", "r173", "r652", "r815" ] }, "us-gaap_OtherCommitmentsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherCommitmentsLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureCommitmentsAndContingenciesLegalMattersAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Other Commitments [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency translation (loss) gain", "verboseLabel": "Translation gain (loss)", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent", "totalLabel": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent, Total", "negatedLabel": "Foreign currency translation (loss) gain", "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity." } } }, "auth_ref": [ "r7", "r15", "r138" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other comprehensive income, net of tax:", "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OtherLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilities", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail" ], "lang": { "en-us": { "role": { "totalLabel": "Other Liabilities, Total", "label": "Other Liabilities", "negatedLabel": "Other liabilities Assumed", "documentation": "Amount of liabilities classified as other." } } }, "auth_ref": [ "r90", "r651", "r707", "r708", "r815", "r993" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other liabilities", "label": "Other Liabilities, Noncurrent", "totalLabel": "Other Liabilities, Noncurrent, Total", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r34" ] }, "ceco_OtherNonInvesteesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "OtherNonInvesteesMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Other Non Investees [Member]", "label": "Other Non Investees [Member]" } } }, "auth_ref": [] }, "us-gaap_OtherNoncashIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNoncashIncomeExpense", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Other", "terseLabel": "Other", "label": "Other Noncash Income (Expense)", "totalLabel": "Other Noncash Income (Expense), Total", "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other." } } }, "auth_ref": [ "r122" ] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "label": "Other Nonoperating Income (Expense)", "totalLabel": "Other Nonoperating Income (Expense), Total", "terseLabel": "Other (expense) income, net", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r117" ] }, "us-gaap_OtherPensionPlansPostretirementOrSupplementalPlansDefinedBenefitMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherPensionPlansPostretirementOrSupplementalPlansDefinedBenefitMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Health Care Plan [Member]", "label": "Other Pension, Postretirement and Supplemental Plans [Member]", "documentation": "Pension plan, other postretirement plan, and supplemental retirement plan, classified as other. Includes, but is not limited to, defined benefit and defined contribution plans." } } }, "auth_ref": [] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OtherPerfMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Other Performance Measure, Amount", "terseLabel": "Other Performance Measure, Amount" } } }, "auth_ref": [ "r858" ] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingAggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Aggregate Erroneous Compensation Amount", "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r826", "r837", "r847", "r872" ] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery Compensation Amount", "terseLabel": "Compensation Amount" } } }, "auth_ref": [ "r829", "r840", "r850", "r875" ] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r829", "r840", "r850", "r875" ] }, "srt_OwnershipAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "OwnershipAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Ownership [Axis]" } } }, "auth_ref": [] }, "srt_OwnershipDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "OwnershipDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Ownership [Domain]" } } }, "auth_ref": [] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r854" ] }, "us-gaap_PayablesAndAccrualsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PayablesAndAccrualsAbstract", "lang": { "en-us": { "role": { "label": "Payables and Accruals [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PaymentsForPreviousAcquisition": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForPreviousAcquisition", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Purchase Price", "label": "Payments for Previous Acquisition", "documentation": "Cash outflow representing an adjustment to the purchase price of a previous acquisition." } } }, "auth_ref": [ "r914" ] }, "us-gaap_PaymentsForProceedsFromInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForProceedsFromInvestments", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Net cash received (paid) for acquisitions", "label": "Payments for (Proceeds from) Investments", "totalLabel": "Payments for (Proceeds from) Investments, Total", "documentation": "The net cash paid (received) associated with the acquisition or disposal of all investments, including securities and other assets." } } }, "auth_ref": [] }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForRepurchaseOfCommonStock", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Common stock repurchase", "terseLabel": "Common stock repurchase", "label": "Payments for Repurchase of Common Stock", "documentation": "The cash outflow to reacquire common stock during the period." } } }, "auth_ref": [ "r43" ] }, "us-gaap_PaymentsOfFinancingCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfFinancingCosts", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Payments of Financing Costs, Total", "label": "Payments of Financing Costs", "terseLabel": "Deferred financing fees paid", "negatedLabel": "Deferred financing fees paid", "documentation": "The cash outflow for loan and debt issuance costs." } } }, "auth_ref": [ "r42" ] }, "ceco_PaymentsOnFinanceLeasesAndFinancingLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "PaymentsOnFinanceLeasesAndFinancingLiability", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Payments on finance leases and financing liability", "label": "Payments On Finance Leases And Financing Liability", "documentation": "Payments on finance leases and financing liability." } } }, "auth_ref": [] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Acquisitions of property and equipment", "label": "Payments to Acquire Property, Plant, and Equipment", "totalLabel": "Payments to Acquire Property, Plant, and Equipment, Total", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r119" ] }, "us-gaap_PaymentsToMinorityShareholders": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToMinorityShareholders", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Payments to Noncontrolling Interests", "negatedLabel": "Noncontrolling interest distributions", "documentation": "Amount of cash outflow to a noncontrolling interest. Includes, but not limited to, reduction of noncontrolling interest ownership. Excludes dividends paid to the noncontrolling interest." } } }, "auth_ref": [ "r42" ] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupIssuersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Issuers, Footnote [Text Block]", "terseLabel": "Peer Group Issuers, Footnote" } } }, "auth_ref": [ "r857" ] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupTotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Peer Group Total Shareholder Return Amount", "terseLabel": "Peer Group Total Shareholder Return Amount" } } }, "auth_ref": [ "r857" ] }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlans" ], "lang": { "en-us": { "role": { "terseLabel": "Pension and Employee Benefit Plans", "label": "Retirement Benefits [Text Block]", "documentation": "The entire disclosure for retirement benefits." } } }, "auth_ref": [ "r407", "r431", "r433", "r439", "r456", "r458", "r459", "r460", "r461", "r462", "r474", "r475", "r476", "r790" ] }, "us-gaap_PensionContributions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionContributions", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Payment for Pension Benefits", "documentation": "Amount of cash outflow for pension benefit. Includes, but is not limited to, employer contribution to fund plan asset and payment to retiree. Excludes other postretirement benefit." } } }, "auth_ref": [ "r8" ] }, "us-gaap_PensionPlansDefinedBenefitMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionPlansDefinedBenefitMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Pension Plan [Member]", "label": "Pension Plan [Member]", "documentation": "Plan designed to provide participant with pension benefits. Includes, but is not limited to, defined benefit and defined contribution plans. Excludes other postretirement benefits." } } }, "auth_ref": [ "r408", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r425", "r426", "r427", "r428", "r429", "r430", "r431", "r432", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r457", "r460", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r476", "r477", "r481", "r790", "r791", "r795", "r796", "r797" ] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoActuallyPaidCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Actually Paid Compensation Amount", "terseLabel": "PEO Actually Paid Compensation Amount" } } }, "auth_ref": [ "r856" ] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO [Member]", "terseLabel": "PEO" } } }, "auth_ref": [ "r866" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Name", "terseLabel": "PEO Name" } } }, "auth_ref": [ "r859" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "PEO Total Compensation Amount", "terseLabel": "PEO Total Compensation Amount" } } }, "auth_ref": [ "r855" ] }, "ceco_PercentageOfEquityHoldInJointVenture": { "xbrltype": "percentItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "PercentageOfEquityHoldInJointVenture", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Percentage of equity hold in joint venture", "label": "Percentage Of Equity Hold In Joint Venture", "documentation": "Percentage of equity hold in joint venture." } } }, "auth_ref": [] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, par value", "label": "Preferred Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer." } } }, "auth_ref": [ "r98", "r397" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares authorized", "label": "Preferred Stock, Shares Authorized", "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r98", "r713" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares issued", "label": "Preferred Stock, Shares Issued", "totalLabel": "Preferred Stock, Shares Issued, Total", "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." } } }, "auth_ref": [ "r98", "r397" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockValue", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, $.01 par value; 10,000 shares authorized, none issued", "label": "Preferred Stock, Value, Issued", "totalLabel": "Preferred Stock, Value, Issued, Total", "periodStartLabel": "Preferred Stock, Value, Issued, Beginning Balance", "periodEndLabel": "Preferred Stock, Value, Issued, Ending Balance", "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r98", "r656", "r803" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Prepaid expenses and other current assets", "label": "Prepaid Expense and Other Assets, Current", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r910" ] }, "us-gaap_PrepaidTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidTaxes", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Prepaid income taxes", "label": "Prepaid Taxes", "documentation": "Amount of asset related to consideration paid in advance for income and other taxes that provide economic benefits within a future period of one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r770", "r780", "r935" ] }, "us-gaap_ProceedsFromIssuanceOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromIssuanceOfLongTermDebt", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Proceeds from Issuance of Long-term Debt, Total", "label": "Proceeds from Issuance of Long-Term Debt", "terseLabel": "Borrowing on long-term debt", "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer." } } }, "auth_ref": [ "r41", "r694" ] }, "us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from employee stock purchase plan and exercise of stock options", "label": "Proceeds, Issuance of Shares, Share-Based Payment Arrangement, Including Option Exercised", "totalLabel": "Proceeds, Issuance of Shares, Share-based Payment Arrangement, Including Option Exercised, Total", "documentation": "Amount of cash inflow from issuance of shares under share-based payment arrangement. Includes, but is not limited to, option exercised." } } }, "auth_ref": [ "r6", "r18" ] }, "us-gaap_ProceedsFromRepaymentsOfLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromRepaymentsOfLinesOfCredit", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Repayments on revolving credit lines", "label": "Proceeds from (Repayments of) Lines of Credit", "totalLabel": "Proceeds from (Repayments of) Lines of Credit, Total", "documentation": "The net cash inflow or cash outflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with either short term or long term maturity that is collateralized (backed by pledge, mortgage or other lien in the entity's assets)." } } }, "auth_ref": [] }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Net proceeds from sale of assets", "label": "Proceeds from Sale of Property, Plant, and Equipment", "totalLabel": "Proceeds from Sale of Property, Plant, and Equipment, Total", "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." } } }, "auth_ref": [ "r118" ] }, "us-gaap_ProceedsFromStockPlans": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromStockPlans", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Cash received from employee stock option exercised", "label": "Proceeds from Stock Plans", "documentation": "The cash inflow associated with the amount received from the stock plan during the period." } } }, "auth_ref": [ "r6" ] }, "us-gaap_ProductWarrantyAccrualClassifiedCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantyAccrualClassifiedCurrent", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesSummaryOfAccruedExpensesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued warranty", "label": "Product Warranty Accrual, Current", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers. For classified balance sheets, represents the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r29", "r954", "r955" ] }, "us-gaap_ProfitLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProfitLoss", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncomeUnaudited", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Net income", "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "verboseLabel": "Net income (loss)", "totalLabel": "Net income", "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest." } } }, "auth_ref": [ "r167", "r182", "r184", "r195", "r201", "r211", "r221", "r222", "r245", "r259", "r265", "r268", "r311", "r355", "r356", "r358", "r359", "r360", "r362", "r364", "r366", "r367", "r547", "r550", "r551", "r565", "r570", "r649", "r664", "r699", "r734", "r750", "r751", "r776", "r800", "r801", "r814", "r913", "r957" ] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Property, plant and equipment, net", "label": "Property, Plant and Equipment, Net", "totalLabel": "Property, Plant and Equipment, Net, Total", "periodStartLabel": "Property, Plant and Equipment, Net, Beginning Balance", "periodEndLabel": "Property, Plant and Equipment, Net, Ending Balance", "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r11", "r650", "r662", "r803" ] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Bad debt expense (recoveries)", "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r193", "r319" ] }, "us-gaap_ProvisionForOtherCreditLosses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForOtherCreditLosses", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Provision for Other Credit Losses", "terseLabel": "Provision for credit losses", "documentation": "Amount of expense related to credit loss from transactions other than loan and lease transactions." } } }, "auth_ref": [ "r9", "r148" ] }, "ceco_PurchasePrice": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "PurchasePrice", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Purchase Price", "documentation": "Purchase Price" } } }, "auth_ref": [] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Table]", "terseLabel": "Pay vs Performance Disclosure" } } }, "auth_ref": [ "r854" ] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance [Table Text Block]", "terseLabel": "Pay vs Performance Disclosure, Table" } } }, "auth_ref": [ "r854" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r350", "r351", "r352", "r353", "r431", "r479", "r509", "r510", "r511", "r603", "r627", "r682", "r702", "r703", "r756", "r757", "r758", "r759", "r760", "r765", "r766", "r778", "r787", "r798", "r804", "r807", "r948", "r961", "r982", "r983", "r984", "r985", "r986" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]" } } }, "auth_ref": [ "r350", "r351", "r352", "r353", "r431", "r479", "r509", "r510", "r511", "r603", "r627", "r682", "r702", "r703", "r756", "r757", "r758", "r759", "r760", "r765", "r766", "r778", "r787", "r798", "r804", "r807", "r948", "r961", "r982", "r983", "r984", "r985", "r986" ] }, "us-gaap_ReceivableTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReceivableTypeDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableSummaryOfAccountsReceivableDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Receivable", "label": "Receivable [Domain]", "documentation": "Financing arrangement representing a contractual right to receive money either on demand or on fixed and determinable dates." } } }, "auth_ref": [ "r37" ] }, "us-gaap_ReceivablesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReceivablesAbstract", "lang": { "en-us": { "role": { "label": "Receivables [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ReceivablesLongTermContractsOrPrograms": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReceivablesLongTermContractsOrPrograms", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableSummaryOfAccountsReceivableDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Contract receivables", "label": "Receivables, Long-Term Contracts or Programs", "totalLabel": "Receivables, Long-term Contracts or Programs, Total", "documentation": "Amount to be collected within one year of the balance sheet date (or one operating cycle, if longer) from customers in accordance with the contractual provisions of long-term contracts or programs including amounts billed and unbilled as of the balance sheet date." } } }, "auth_ref": [ "r905" ] }, "us-gaap_ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReconciliationOfOtherSignificantReconcilingItemsFromSegmentsToConsolidatedTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Property and Equipment Additions, Depreciation and Amortization and Identifiable Assets", "label": "Segment, Reconciliation of Other Items from Segments to Consolidated [Table Text Block]", "documentation": "Tabular disclosure of reconciliation of other items from reportable segments to their consolidated amount. Excludes reconciliation of revenue, profit (loss), and assets." } } }, "auth_ref": [ "r50", "r51" ] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]", "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure" } } }, "auth_ref": [ "r821", "r832", "r842", "r867" ] }, "us-gaap_RelatedPartyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Related Party, Type [Domain]", "documentation": "Related parties include affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests." } } }, "auth_ref": [ "r457", "r590", "r591", "r706", "r707", "r708", "r709", "r710", "r730", "r732", "r755" ] }, "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsByRelatedPartyAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Related Party, Type [Axis]", "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests." } } }, "auth_ref": [ "r457", "r590", "r591", "r634", "r635", "r636", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r644", "r645", "r706", "r707", "r708", "r709", "r710", "r730", "r732", "r755", "r978" ] }, "us-gaap_RepaymentsOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfLongTermDebt", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Repayments of long-term debt", "label": "Repayments of Long-Term Debt", "totalLabel": "Repayments of Long-term Debt, Total", "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r44", "r695" ] }, "us-gaap_ReportableSubsegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReportableSubsegmentsMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail" ], "lang": { "en-us": { "role": { "label": "Reportable Subsegments [Member]", "documentation": "Identifies division of a component of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [] }, "srt_RepurchaseAgreementCounterpartyNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RepurchaseAgreementCounterpartyNameDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Counterparty Name", "label": "Counterparty Name [Domain]" } } }, "auth_ref": [ "r203", "r204", "r372", "r398", "r592", "r772", "r773" ] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDateAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date [Axis]", "terseLabel": "Restatement Determination Date:" } } }, "auth_ref": [ "r822", "r833", "r843", "r868" ] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date", "terseLabel": "Restatement Determination Date" } } }, "auth_ref": [ "r823", "r834", "r844", "r869" ] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDoesNotRequireRecoveryTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Restatement Does Not Require Recovery [Text Block]", "terseLabel": "Restatement does not require Recovery" } } }, "auth_ref": [ "r830", "r841", "r851", "r876" ] }, "us-gaap_RestrictedCashCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedCashCurrent", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted cash", "label": "Restricted Cash, Current", "documentation": "Amount of cash restricted as to withdrawal or usage, classified as current. 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." } } }, "auth_ref": [ "r904", "r917" ] }, "us-gaap_RestrictedStockUnitsRSUMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedStockUnitsRSUMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted Stock Units [Member]", "label": "Restricted Stock Units (RSUs) [Member]", "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." } } }, "auth_ref": [] }, "us-gaap_RestructuringCharges": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringCharges", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "label": "Restructuring Charges", "totalLabel": "Restructuring Charges, Total", "terseLabel": "Restructuring expenses", "documentation": "Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation." } } }, "auth_ref": [ "r10", "r344", "r345", "r949" ] }, "ceco_RetainageReceivablesOnContractsPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "RetainageReceivablesOnContractsPeriod", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Retainage receivables on contracts period", "label": "Retainage Receivables On Contracts Period", "documentation": "Retainage receivables on contracts period.", "verboseLabel": "Account receivable, net" } } }, "auth_ref": [] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated loss", "label": "Retained Earnings (Accumulated Deficit)", "totalLabel": "Retained Earnings (Accumulated Deficit), Total", "periodStartLabel": "Retained Earnings (Accumulated Deficit), Beginning Balance", "periodEndLabel": "Retained Earnings (Accumulated Deficit), Ending Balance", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r101", "r132", "r659", "r686", "r690", "r696", "r714", "r803" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Loss [Member]", "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r163", "r206", "r207", "r208", "r212", "r220", "r222", "r312", "r315", "r517", "r518", "r519", "r530", "r531", "r554", "r556", "r557", "r560", "r563", "r683", "r685", "r700", "r996" ] }, "us-gaap_RetirementPlanTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetirementPlanTypeAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Retirement Plan Type", "label": "Retirement Plan Type [Axis]", "documentation": "Information by type of retirement benefit plan. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement." } } }, "auth_ref": [ "r408", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r425", "r426", "r427", "r428", "r429", "r430", "r431", "r432", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r457", "r460", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r476", "r477", "r478", "r481", "r790", "r791", "r792", "r793", "r794", "r795", "r796", "r797" ] }, "us-gaap_RetirementPlanTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetirementPlanTypeDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Retirement Plan Type", "label": "Retirement Plan Type [Domain]", "documentation": "Type of plan designed to provide participants with retirement benefits. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement." } } }, "auth_ref": [ "r408", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r425", "r426", "r427", "r428", "r429", "r430", "r431", "r432", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r457", "r460", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r476", "r477", "r478", "r481", "r790", "r791", "r792", "r793", "r794", "r795", "r796", "r797" ] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationNetSalesAndIncomeFromOperationByBusinessSegmentDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net sales", "terseLabel": "Net sales", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r246", "r247", "r258", "r263", "r264", "r270", "r272", "r274", "r404", "r405", "r628" ] }, "us-gaap_Revenues": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Revenues", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Revenues", "label": "Revenues", "totalLabel": "Revenues, Total", "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss)." } } }, "auth_ref": [ "r190", "r201", "r246", "r247", "r258", "r263", "r264", "r270", "r272", "r274", "r311", "r355", "r356", "r358", "r359", "r360", "r362", "r364", "r366", "r367", "r570", "r649", "r957" ] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Revolving Credit Loan [Member]", "label": "Revolving Credit Facility [Member]", "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount." } } }, "auth_ref": [] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Adopted" } } }, "auth_ref": [ "r885" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Terminated" } } }, "auth_ref": [ "r885" ] }, "srt_ScenarioForecastMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScenarioForecastMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Scenario Forecast [Member]", "label": "Forecast [Member]" } } }, "auth_ref": [ "r480", "r925" ] }, "srt_ScenarioUnspecifiedDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScenarioUnspecifiedDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Scenario", "label": "Scenario [Domain]" } } }, "auth_ref": [ "r223", "r480", "r892", "r925" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableSummaryOfAccountsReceivableDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Accounts Notes Loans And Financing Receivable [Table]", "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table]", "documentation": "Schedule itemizing specific 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." } } }, "auth_ref": [ "r37" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Accounts Receivable", "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]", "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." } } }, "auth_ref": [ "r37" ] }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAccruedExpensesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Accrued Liabilities [Table Text Block]", "terseLabel": "Summary of Accrued Expenses", "documentation": "Tabular disclosure of the components of accrued liabilities." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfUnauditedProFormaFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Business Acquisitions By Acquisition [Table]", "label": "Schedule of Business Acquisitions, by Acquisition [Table]", "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities." } } }, "auth_ref": [ "r72", "r74", "r542" ] }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Estimated Fair Values of Assets Acquired and Liabilities Assumed", "label": "Schedule of Business Acquisitions, by Acquisition [Table Text Block]", "documentation": "Tabular disclosure of a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts." } } }, "auth_ref": [ "r72", "r74" ] }, "us-gaap_ScheduleOfDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDebtTableTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Debt", "label": "Schedule of Debt [Table Text Block]", "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." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansComponentsOfPensionAndEmployeeBenefitExpensesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Defined Benefit Plans Disclosures [Table]", "label": "Schedule of Defined Benefit Plans Disclosures [Table]", "documentation": "Disclosures about an individual defined benefit pension plan or an other postretirement defined benefit plan. It may be appropriate to group certain similar plans. Also includes schedule for fair value of plan assets by major categories of plan assets 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 or liabilities (Level 1), Significant other observable inputs (Level 2), and significant unobservable inputs (Level 3)." } } }, "auth_ref": [ "r13", "r66", "r67", "r68", "r69" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureEarningsPerShareTables" ], "lang": { "en-us": { "role": { "terseLabel": "Number of Shares Outstanding for Calculation of Earnings Per Share", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations." } } }, "auth_ref": [ "r926" ] }, "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Investment, Name [Axis]" } } }, "auth_ref": [ "r308", "r309", "r310" ] }, "ceco_ScheduleOfFairValueOfFinancialInstrumentsTable": { "xbrltype": "stringItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ScheduleOfFairValueOfFinancialInstrumentsTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureFinancialInstrumentsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Fair Value Of Financial Instruments [Table]", "label": "Schedule Of Fair Value Of Financial Instruments [Table]", "documentation": "Schedule Of Fair Value Of Financial Instruments [Table]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Finite Lived Intangible Assets [Table]", "label": "Schedule of Finite-Lived Intangible Assets [Table]", "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r56", "r57", "r629" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible Assets - Finite Life", "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment." } } }, "auth_ref": [ "r56", "r57" ] }, "ceco_ScheduleOfGoodwillAndOtherIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ScheduleOfGoodwillAndOtherIntangibleAssetsLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Goodwill And Other Intangible Assets [Line Items]", "label": "Schedule Of Goodwill And Other Intangible Assets [Line Items]", "documentation": "Schedule Of Goodwill And Other Intangible Assets [Line Items]" } } }, "auth_ref": [] }, "ceco_ScheduleOfGoodwillAndOtherIntangibleAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ScheduleOfGoodwillAndOtherIntangibleAssetsTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Goodwill And Other Intangible Assets [Table]", "label": "Schedule Of Goodwill And Other Intangible Assets [Table]", "documentation": "Schedule Of Goodwill And Other Intangible Assets [Table]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfGoodwillTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfGoodwillTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill", "label": "Schedule of Goodwill [Table Text Block]", "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule." } } }, "auth_ref": [ "r781", "r936", "r937", "r938", "r939", "r940", "r941", "r942", "r943", "r944", "r945", "r946" ] }, "us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill / Tradename", "label": "Schedule of Intangible Assets and Goodwill [Table Text Block]", "documentation": "Tabular disclosure of goodwill and intangible assets, which may be broken down by segment or major class." } } }, "auth_ref": [ "r54" ] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureInventoriesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Inventories", "label": "Schedule of Inventory, Current [Table Text Block]", "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process." } } }, "auth_ref": [ "r23", "r105", "r106", "r107" ] }, "us-gaap_ScheduleOfNetBenefitCostsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfNetBenefitCostsTableTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosurePensionAndEmployeeBenefitPlansTables" ], "lang": { "en-us": { "role": { "terseLabel": "Components of Pension and Employee Benefit Expenses", "label": "Schedule of Net Benefit Costs [Table Text Block]", "documentation": "Tabular disclosure of the components of net benefit costs for pension plans and/or other employee benefit plans including service cost, interest cost, expected return on plan assets, gain (loss), prior service cost or credit, transition asset or obligation, and gain (loss) recognized due to settlements or curtailments." } } }, "auth_ref": [ "r134" ] }, "us-gaap_ScheduleOfRegulatoryAssetsAndLiabilitiesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRegulatoryAssetsAndLiabilitiesTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilities" ], "lang": { "en-us": { "role": { "terseLabel": "Contract Assets and Liabilities", "label": "Schedule of Regulatory Assets and Liabilities [Text Block]", "documentation": "The entire disclosure for detailed information about regulatory assets and liabilities, including current and noncurrent assets created when regulatory agencies permit the deferral of costs to the balance sheet that would otherwise be required to appear on the company's income statement and would be charged against current expenses or revenues, as well as current and noncurrent liabilities created when regulatory agencies permit." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]", "documentation": "Schedule of material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material. An entity may also provide subtotals of geographic information about groups of countries." } } }, "auth_ref": [ "r52", "r110" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationGoodwillDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Segment Reporting Information By Segment [Table]", "label": "Schedule of Segment Reporting Information, by Segment [Table]", "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r47", "r48", "r49", "r54" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Net Sales and Income from Operation by Business Segment", "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r47", "r48", "r49", "r54" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Share Based Compensation Arrangements By Share Based Payment Award [Table]", "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r483", "r484", "r487", "r488", "r489", "r490", "r491", "r492", "r493", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r507", "r508", "r509", "r510", "r511", "r512" ] }, "us-gaap_SecuredDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SecuredDebt", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "totalLabel": "Secured Debt, Total", "label": "Secured Debt", "terseLabel": "Secured Debt", "documentation": "Carrying value as of the balance sheet date, including the current and noncurrent portions, of collateralized debt obligations (with maturities initially due after one year or beyond the operating cycle, if longer). Such obligations include mortgage loans, chattel loans, and any other borrowings secured by assets of the borrower." } } }, "auth_ref": [ "r21", "r144", "r987" ] }, "us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]", "terseLabel": "Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]", "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap that has its variable-rate leg referenced to Secured Overnight Financing Rate (SOFR) with no additional spread over SOFR on variable-rate leg." } } }, "auth_ref": [ "r968" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Title of 12(b) Security", "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r816" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Security Exchange Name", "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r818" ] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationGoodwillDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationNetSalesAndIncomeFromOperationByBusinessSegmentDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Segments", "label": "Segments [Domain]", "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r242", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r268", "r274", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r337", "r343", "r346", "r671", "r672", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r680", "r681", "r781", "r896", "r989" ] }, "us-gaap_SegmentExpenditureAdditionToLongLivedAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentExpenditureAdditionToLongLivedAssets", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Property and equipment additions", "label": "Segment, Expenditure, Addition to Long-Lived Assets", "documentation": "Amount of expenditure for addition to long-lived assets included in determination of segment assets by chief operating decision maker (CODM) or otherwise regularly provided to CODM. Excludes expenditure for addition to financial instrument, long-term customer relationship of financial institution, mortgage and other servicing rights, deferred policy acquisition cost, and deferred tax assets." } } }, "auth_ref": [ "r256", "r777" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "label": "Segment Reporting [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Business Segment Information", "label": "Segment Reporting Disclosure [Text Block]", "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments." } } }, "auth_ref": [ "r241", "r242", "r243", "r244", "r245", "r257", "r262", "r266", "r267", "r268", "r269", "r270", "r271", "r274" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingInformationLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationGoodwillDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationNetSalesAndIncomeFromOperationByBusinessSegmentDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Segment Reporting Information [Line Items]", "label": "Segment Reporting Information [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Selling and administrative expenses", "label": "Selling, General and Administrative Expense", "totalLabel": "Selling, General and Administrative Expense, Total", "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." } } }, "auth_ref": [ "r115" ] }, "ceco_SeniorDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "SeniorDebtMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "documentation": "Senior Debt [Member]", "label": "Senior Debt [Member]", "terseLabel": "Senior Debt [Member]" } } }, "auth_ref": [] }, "ceco_SeniorSecuredTermLoanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "SeniorSecuredTermLoanMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtParentheticalDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Term Loan [Member]", "label": "Senior Secured Term Loan [Member]", "documentation": "Senior secured term loan." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based compensation expense", "label": "Share-Based Payment Arrangement, Noncash Expense", "totalLabel": "Share-based Payment Arrangement, Noncash Expense, Total", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r9" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Number of restricted stock awards granted", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period", "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r501" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted-average fair value of restricted stock unit granted", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value", "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r501" ] }, "ceco_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageRiskFreeInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageRiskFreeInterestRate", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Weighted Average Risk-Free Interest Rate", "label": "Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions Weighted Average Risk-Free Interest Rate", "terseLabel": "Weighted-average risk free interest rate" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsWeightedAverageVolatilityRate", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Weighted Average Volatility Rate", "terseLabel": "Weighted-average volatility rate", "documentation": "Rate of weighted-average expected volatility for award under share-based payment arrangement." } } }, "auth_ref": [ "r509" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r483", "r484", "r487", "r488", "r489", "r490", "r491", "r492", "r493", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r507", "r508", "r509", "r510", "r511", "r512" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Option exercised, intrinsic value", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value", "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." } } }, "auth_ref": [ "r505" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Gross", "terseLabel": "Number of Options, Granted", "documentation": "Gross number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r494" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value", "terseLabel": "Weighted-average fair value of stock options granted", "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology." } } }, "auth_ref": [ "r504" ] }, "ceco_ShareBasedCompensationArrangementByShareBasedPaymentsAwardFairValueAssumptionsWeightedAverageExpectedTerm": { "xbrltype": "durationItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentsAwardFairValueAssumptionsWeightedAverageExpectedTerm", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "documentation": "Share based compensation arrangement by share based payments award fair value assumptions weighted average expected term", "label": "Share Based Compensation Arrangement By Share Based Payments Award Fair Value Assumptions Weighted Average Expected Term", "terseLabel": "Weighted-average expected term" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "All Award Types", "terseLabel": "All Award Types", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r487", "r488", "r489", "r490", "r491", "r492", "r493", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r507", "r508", "r509", "r510", "r511", "r512" ] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesOutstanding", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "periodStartLabel": "Beginning Balance, Shares", "periodEndLabel": "Ending Balance, Shares", "label": "Shares, Outstanding", "documentation": "Number of shares issued which are neither cancelled nor held in the treasury." } } }, "auth_ref": [] }, "us-gaap_ShortTermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermDebtTypeAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "label": "Short-Term Debt, Type [Axis]", "documentation": "Information by type of short-term debt arrangement." } } }, "auth_ref": [ "r27" ] }, "us-gaap_ShortTermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermDebtTypeDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "label": "Short-Term Debt, Type [Domain]", "documentation": "Type of short-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing." } } }, "auth_ref": [ "r24" ] }, "us-gaap_StandbyLettersOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StandbyLettersOfCreditMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Letters of Credit [Member]", "label": "Standby Letters of Credit [Member]", "documentation": "An irrevocable undertaking (typically by a financial institution) to guarantee payment of a specified financial obligation." } } }, "auth_ref": [ "r0", "r953", "r990", "r991" ] }, "ceco_StateAndForeignAuthoritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "StateAndForeignAuthoritiesMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "State and Foreign Authorities [Member]", "label": "State And Foreign Authorities [Member]", "documentation": "State and foreign authorities." } } }, "auth_ref": [] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationGoodwillDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationNetSalesAndIncomeFromOperationByBusinessSegmentDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Segments", "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r166", "r242", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r268", "r274", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r337", "r342", "r343", "r346", "r671", "r672", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r680", "r681", "r781", "r896", "r989" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Components", "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r17", "r36", "r163", "r186", "r187", "r188", "r206", "r207", "r208", "r212", "r220", "r222", "r240", "r312", "r315", "r400", "r517", "r518", "r519", "r530", "r531", "r554", "r555", "r556", "r557", "r558", "r560", "r563", "r575", "r576", "r577", "r578", "r579", "r580", "r588", "r683", "r684", "r685", "r700", "r752" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Line Items]", "label": "Statement [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r206", "r207", "r208", "r240", "r628", "r693", "r701", "r704", "r706", "r707", "r708", "r709", "r710", "r713", "r716", "r717", "r718", "r719", "r720", "r721", "r722", "r723", "r724", "r726", "r727", "r728", "r729", "r730", "r732", "r735", "r736", "r738", "r739", "r740", "r741", "r742", "r743", "r744", "r745", "r746", "r747", "r748", "r749", "r752", "r808" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "lang": { "en-us": { "role": { "label": "Statement of Comprehensive Income [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "label": "Statement of Stockholders' Equity [Abstract]" } } }, "auth_ref": [] }, "srt_StatementScenarioAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementScenarioAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Scenario", "label": "Scenario [Axis]" } } }, "auth_ref": [ "r223", "r480", "r892", "r893", "r925" ] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesAdditionalInformationDetails", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationNetSalesAndIncomeFromOperationByBusinessSegmentDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationPropertyAndEquipmentAdditionsDepreciationAndAmortizationAndIdentifiableAssetsDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Table]", "label": "Statement [Table]", "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." } } }, "auth_ref": [ "r206", "r207", "r208", "r240", "r628", "r693", "r701", "r704", "r706", "r707", "r708", "r709", "r710", "r713", "r716", "r717", "r718", "r719", "r720", "r721", "r722", "r723", "r724", "r726", "r727", "r728", "r729", "r730", "r732", "r735", "r736", "r738", "r739", "r740", "r741", "r742", "r743", "r744", "r745", "r746", "r747", "r748", "r749", "r752", "r808" ] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "StkPrcOrTsrEstimationMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Price or TSR Estimation Method [Text Block]", "terseLabel": "Stock Price or TSR Estimation Method" } } }, "auth_ref": [ "r825", "r836", "r846", "r871" ] }, "us-gaap_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockAppreciationRightsSARSMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Stock Appreciation Rights (SARs) [Member]", "terseLabel": "Stock Appreciation Rights (SARs)", "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesIssuedForServices": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesIssuedForServices", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Restricted stock units issued, Shares", "label": "Stock Issued During Period, Shares, Issued for Services", "documentation": "Number of shares issued in lieu of cash for services contributed to the entity. Number of shares includes, but is not limited to, shares issued for services contributed by vendors and founders." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Share based compensation earned, Shares", "label": "Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture", "totalLabel": "Shares Issued, Shares, Share-based Payment Arrangement, after Forfeiture, Total", "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)." } } }, "auth_ref": [ "r17", "r98", "r99", "r132" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Exercise of stock options, Shares", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r17", "r98", "r99", "r132", "r495" ] }, "us-gaap_StockIssuedDuringPeriodValueIssuedForServices": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueIssuedForServices", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted stock units issued", "negatedLabel": "Restricted stock units issued", "label": "Stock Issued During Period, Value, Issued for Services", "documentation": "Value of stock issued in lieu of cash for services contributed to the entity. Value of the stock issued includes, but is not limited to, services contributed by vendors and founders." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Share based compensation earned", "label": "Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture", "totalLabel": "Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture, Total", "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)." } } }, "auth_ref": [ "r70", "r98", "r99", "r132" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Exercise of stock options", "label": "Stock Issued During Period, Value, Stock Options Exercised", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r17", "r36", "r132" ] }, "us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Purchase of outstanding shares of common stock", "label": "Stock Repurchase Program, Remaining Authorized Repurchase Amount", "documentation": "Amount remaining of a stock repurchase plan authorized." } } }, "auth_ref": [] }, "us-gaap_StockRepurchasedDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchasedDuringPeriodShares", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock repurchase and retirement, Shares", "label": "Stock Repurchased During Period, Shares", "verboseLabel": "Repurchase of common stock (in shares)", "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock." } } }, "auth_ref": [ "r17", "r98", "r99", "r132", "r695", "r752", "r761" ] }, "us-gaap_StockRepurchasedDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchasedDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Common stock repurchase and retirement", "terseLabel": "Common stock repurchase", "label": "Stock Repurchased During Period, Value", "verboseLabel": "Repurchase of common stock", "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock." } } }, "auth_ref": [ "r17", "r98", "r99", "r132", "r700", "r752", "r761", "r814" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total CECO shareholders' equity", "label": "Equity, Attributable to Parent", "periodStartLabel": "Stockholders' Equity Attributable to Parent, Beginning Balance", "periodEndLabel": "Stockholders' Equity Attributable to Parent, Ending Balance", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r99", "r102", "r103", "r123", "r715", "r731", "r753", "r754", "r803", "r815", "r919", "r934", "r972", "r996" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Shareholders\u2019 equity:", "label": "Equity, Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfShareholdersEquityUnaudited", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total shareholders' equity", "periodStartLabel": "Beginning Balance", "periodEndLabel": "Ending Balance", "label": "Equity, Including Portion Attributable to Noncontrolling Interest", "documentation": "Amount of equity (deficit) attributable to parent and noncontrolling interest. Excludes temporary equity." } } }, "auth_ref": [ "r80", "r81", "r82", "r163", "r164", "r187", "r206", "r207", "r208", "r212", "r220", "r312", "r315", "r400", "r517", "r518", "r519", "r530", "r531", "r554", "r555", "r556", "r557", "r558", "r560", "r563", "r575", "r576", "r580", "r588", "r684", "r685", "r698", "r715", "r731", "r753", "r754", "r762", "r814", "r919", "r934", "r972", "r996" ] }, "us-gaap_SubsegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsegmentsAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail" ], "lang": { "en-us": { "role": { "label": "Subsegments [Axis]", "documentation": "Information by business subsegments." } } }, "auth_ref": [] }, "us-gaap_SubsegmentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsegmentsDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureBusinessSegmentInformationIntraSegmentAndInterSegmentRevenuesDetail" ], "lang": { "en-us": { "role": { "label": "Subsegments [Domain]", "documentation": "Divisions of a component of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [] }, "us-gaap_SubsequentEventLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventLineItems", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Subsequent Event [Line Items]", "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event." } } }, "auth_ref": [ "r581", "r595" ] }, "us-gaap_SubsequentEventMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event [Member]", "label": "Subsequent Event [Member]", "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r581", "r595" ] }, "us-gaap_SubsequentEventTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTable", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Subsequent Event [Table]", "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued." } } }, "auth_ref": [ "r581", "r595" ] }, "us-gaap_SubsequentEventTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Subsequent Event Type [Axis]", "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r581", "r595" ] }, "us-gaap_SubsequentEventTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEventsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Subsequent Event Type [Domain]", "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r581", "r595" ] }, "us-gaap_SubsequentEventsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsAbstract", "lang": { "en-us": { "role": { "label": "Subsequent Events [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsTextBlock", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureSubsequentEvents" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Events", "label": "Subsequent Events [Text Block]", "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business." } } }, "auth_ref": [ "r594", "r596" ] }, "srt_SubsidiariesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "SubsidiariesMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureIncomeTaxesAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign Subsidiaries [Member]", "label": "Subsidiaries [Member]" } } }, "auth_ref": [ "r964", "r975", "r976", "r978" ] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_StatementCondensedConsolidatedStatementsOfCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "Cash paid during the period for:" } } }, "auth_ref": [] }, "us-gaap_TableTextBlock": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TableTextBlock", "lang": { "en-us": { "role": { "label": "Table Text Block [Abstract]" } } }, "auth_ref": [] }, "ecd_TabularListTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TabularListTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Tabular List [Table Text Block]", "terseLabel": "Tabular List, Table" } } }, "auth_ref": [ "r865" ] }, "us-gaap_TechnologyBasedIntangibleAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TechnologyBasedIntangibleAssetsMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Technology [Member]", "label": "Technology-Based Intangible Assets [Member]", "documentation": "Technology-based intangible assets, including, but not limited to, patented technology, unpatented technology, and developed technology rights." } } }, "auth_ref": [ "r20" ] }, "ceco_TechnologyMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "TechnologyMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Technology [Member]", "documentation": "Technology [Member]" } } }, "auth_ref": [] }, "ceco_TermDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "TermDebtMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Term Debt [Member]", "label": "Term Debt [Member]", "documentation": "Term debt." } } }, "auth_ref": [] }, "srt_TitleOfIndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "TitleOfIndividualAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Title of Individual", "label": "Title of Individual [Axis]" } } }, "auth_ref": [ "r929", "r977" ] }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureShareBasedCompensationAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Title of Individual", "label": "Title of Individual [Domain]" } } }, "auth_ref": [] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Amount", "terseLabel": "Total Shareholder Return Amount" } } }, "auth_ref": [ "r857" ] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnVsPeerGroupTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Vs Peer Group [Text Block]", "terseLabel": "Total Shareholder Return Vs Peer Group" } } }, "auth_ref": [ "r864" ] }, "us-gaap_TradeAccountsReceivableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TradeAccountsReceivableMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureAccountsReceivableSummaryOfAccountsReceivableDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Trade Accounts Receivable [Member]", "label": "Trade Accounts Receivable [Member]", "documentation": "Amount due from customers or clients for goods or services that have been delivered or sold in the normal course of business." } } }, "auth_ref": [] }, "us-gaap_TradeNamesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TradeNamesMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsIntangibleAssetsFiniteLifeDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Tradename [Member]", "label": "Trade Names [Member]", "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof." } } }, "auth_ref": [ "r77" ] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement [Axis]", "terseLabel": "Trading Arrangement:" } } }, "auth_ref": [ "r884" ] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrByIndTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangements, by Individual [Table]", "terseLabel": "Trading Arrangements, by Individual" } } }, "auth_ref": [ "r886" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "verboseLabel": "Trading Symbol", "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "ceco_TranscendSolutionMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "TranscendSolutionMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "documentation": "Transcend Solution [Member]", "label": "Transcend Solution [Member]", "terseLabel": "Transcend Solution [Member]" } } }, "auth_ref": [] }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureContractAssetsAndLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Financial Instruments [Domain]", "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms." } } }, "auth_ref": [ "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r393", "r399", "r561", "r597", "r598", "r599", "r600", "r601", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r617", "r618", "r619", "r620", "r621", "r622", "r623", "r624", "r625", "r626", "r667", "r897", "r898", "r899", "r900", "r901", "r902", "r903", "r930", "r931", "r932", "r933" ] }, "ceco_TransfersFromIndefiniteLifeClassification": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "TransfersFromIndefiniteLifeClassification", "crdr": "debit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureGoodwillAndIntangibleAssetsFiniteLivedIntangibleAssetsAmortizationExpenseDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Transfers from indefinite life classification", "label": "Transfers From Indefinite Life Classification", "documentation": "Transfers from indefinite life classification." } } }, "auth_ref": [] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Adoption Date", "terseLabel": "Adoption Date" } } }, "auth_ref": [ "r887" ] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Duration", "terseLabel": "Arrangement Duration" } } }, "auth_ref": [ "r888" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Name", "terseLabel": "Name" } } }, "auth_ref": [ "r886" ] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Title", "terseLabel": "Title" } } }, "auth_ref": [ "r886" ] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrSecuritiesAggAvailAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Securities Aggregate Available Amount", "terseLabel": "Aggregate Available" } } }, "auth_ref": [ "r889" ] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Termination Date", "terseLabel": "Termination Date" } } }, "auth_ref": [ "r887" ] }, "us-gaap_TreasuryStockCommonShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonShares", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Treasury stock, shares", "label": "Treasury Stock, Common, Shares", "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r61" ] }, "us-gaap_TypeOfArrangementAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TypeOfArrangementAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Collaborative Arrangement and Arrangement Other than Collaborative", "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Axis]", "documentation": "Information by collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations." } } }, "auth_ref": [ "r546" ] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "UndrlygSecurityMktPriceChngPct", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "label": "Underlying Security Market Price Change, Percent", "terseLabel": "Underlying Security Market Price Change" } } }, "auth_ref": [ "r883" ] }, "us-gaap_VariableRateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableRateAxis", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Variable Rate [Axis]", "documentation": "Information by type of variable rate." } } }, "auth_ref": [] }, "us-gaap_VariableRateDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableRateDomain", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Variable Rate [Domain]", "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index." } } }, "auth_ref": [] }, "ceco_VotingInterestInJointVenture": { "xbrltype": "percentItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "VotingInterestInJointVenture", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail" ], "lang": { "en-us": { "role": { "label": "Voting Interest In Joint Venture", "documentation": "Voting interest in joint venture.", "terseLabel": "Voting interest in joint venture" } } }, "auth_ref": [] }, "us-gaap_WarehouseAgreementBorrowings": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WarehouseAgreementBorrowings", "crdr": "credit", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureSeniorDebtSummaryOfDebtDetail" ], "lang": { "en-us": { "role": { "totalLabel": "Warehouse Agreement Borrowings, Total", "label": "Warehouse Agreement Borrowings", "terseLabel": "Outstanding borrowing under the joint venture term debt", "documentation": "Carrying value as of the balance sheet date of the outstanding short-term borrowings under a revolving line of credit used by mortgage bankers to finance the origination or purchase of loans." } } }, "auth_ref": [ "r142" ] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareNumberOfSharesOutstandingForCalculationOfEarningsPerShareDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Diluted weighted-average shares outstanding", "terseLabel": "Diluted", "label": "Weighted Average Number of Shares Outstanding, Diluted", "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period." } } }, "auth_ref": [ "r227", "r235" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average number of common shares outstanding:", "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareNumberOfSharesOutstandingForCalculationOfEarningsPerShareDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/StatementCondensedConsolidatedStatementsOfIncomeUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Basic weighted-average shares outstanding", "terseLabel": "Basic", "label": "Weighted Average Number of Shares Outstanding, Basic", "totalLabel": "Weighted Average Number of Shares Outstanding, Basic, Total", "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period." } } }, "auth_ref": [ "r226", "r235" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/Role_DisclosureEarningsPerShareNumberOfSharesOutstandingForCalculationOfEarningsPerShareDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Denominator", "label": "Weighted Average Number of Shares Outstanding Reconciliation [Abstract]" } } }, "auth_ref": [] }, "ceco_WesternAirDuctsLtdMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cecoenviro.com/20240630", "localname": "WesternAirDuctsLtdMember", "presentation": [ "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsAdditionalInformationDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsScheduleOfEstimatedFairValuesOfAssetsAcquiredAndLiabilitiesAssumedParentheticalDetail", "http://www.cecoenviro.com/20240630/taxonomy/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "documentation": "Western Air Ducts Ltd [Member]", "label": "Western Air Ducts Ltd [Member]" } } }, "auth_ref": [] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "15", "Paragraph": "12", "Subparagraph": "(f)(2)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481410/810-10-15-12" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "16", "SubTopic": "10", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479405/805-10-25-16" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479613/805-30-35-1" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-20" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(g)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "470", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-1" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "20", "Topic": "715", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c),(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2A" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "e", "SubTopic": "470", "Topic": "942", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13", "SubTopic": "20", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-13" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "45", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-8" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a),20,24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19-26)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.25)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.3,4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14A" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "330", "SubTopic": "10", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB TOPIC 5.BB)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-8" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "710", "SubTopic": "10", "Section": "25", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483070/710-10-25-15" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "710", "SubTopic": "10", "Section": "30", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483043/710-10-30-2" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480535/715-20-45-2" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-2" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-3" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-4" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "715", "SubTopic": "20", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-8" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-3" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "55", "Paragraph": "37", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479303/805-10-55-37" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "30", "Section": "25", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479668/805-30-25-6" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-15" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-16" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "55", "Paragraph": "4I", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4I" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "55", "Paragraph": "4J", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4J" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "55", "Paragraph": "4K", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4K" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-1A" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.15(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.15)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.17)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "470", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "470", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//205/tableOfContent" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-1" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r114": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.8)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r117": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r118": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12" }, "r119": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r120": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r121": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r122": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r123": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2" }, "r124": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350/tableOfContent" }, "r125": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r126": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r127": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r128": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r129": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//470/tableOfContent" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-6" }, "r131": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-7" }, "r132": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r133": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480535/715-20-45-3" }, "r134": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "715", "SubTopic": "20", "Subparagraph": "(h)", "Name": "Accounting Standards Codification", "Paragraph": "1", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r135": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r136": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//805/tableOfContent" }, "r137": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//810/tableOfContent" }, "r138": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19" }, "r139": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r140": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r141": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r142": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r143": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(15)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r144": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r145": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r146": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r147": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r148": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r149": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r150": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r151": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r152": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04.10)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r153": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04.13(h))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r154": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r155": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4H", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(1)", "SubTopic": "20", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(2)", "SubTopic": "20", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22(a)(2))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//250/tableOfContent" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5" }, "r170": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r171": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(210.5-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-2" }, "r196": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(1)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 11.M.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-6" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//260/tableOfContent" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//280/tableOfContent" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "34", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-2" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-3" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5A" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-5B" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-11" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-14" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-16" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-5" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-4" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-7" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-9" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//330/tableOfContent" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483080/330-10-50-2" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.P.3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-1" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-3" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-6" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//715/tableOfContent" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480535/715-20-45-2" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480535/715-20-45-3A" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(10)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(8)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(8)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(n)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(o)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(p)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(q)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-2" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-8" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480126/715-20-S99-2" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480266/715-60-50-3" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "70", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480794/715-70-50-1" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480606/715-80-35-1" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-9" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480454/718-10-45-1" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r518": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.F)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-4" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "808", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479402/808-10-50-1" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-5" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-10" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r571": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r572": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "230", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r575": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r578": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-2" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483013/835-20-50-1" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r585": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r589": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r591": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r592": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3" }, "r593": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481435/852-10-45-14" }, "r594": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//855/tableOfContent" }, "r595": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r596": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r597": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r598": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r599": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r600": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r601": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r602": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r603": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r605": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r606": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r607": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481444/860-30-45-1" }, "r611": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481420/860-30-50-7" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r613": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r614": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(4)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-3" }, "r616": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r617": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r618": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r619": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r620": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r621": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r622": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r623": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r624": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r625": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r626": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481229/860-50-50-4" }, "r627": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6" }, "r628": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1" }, "r629": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r631": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r632": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r633": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1" }, "r634": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15" }, "r635": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-15" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-20" }, "r638": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28" }, "r639": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-28" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "33", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33" }, "r641": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "33", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-33" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "35A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A" }, "r643": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "35A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-35A" }, "r644": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8" }, "r645": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482274/932-235-50-8" }, "r646": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r647": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r648": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r649": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1" }, "r650": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1" }, "r651": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r652": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r653": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r654": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r655": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r656": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r657": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r658": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r659": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r660": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r661": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r662": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r663": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r664": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r665": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r666": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r667": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r668": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r669": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r670": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r671": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r672": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r673": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r674": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r675": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r676": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r677": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r678": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r679": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r680": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column J))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r681": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column K))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r682": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A" }, "r683": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r684": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r685": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r686": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r687": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r688": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r689": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r690": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r691": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-1" }, "r692": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-2" }, "r693": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r694": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r695": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r696": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11" }, "r697": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13" }, "r698": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3" }, "r699": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3" }, "r700": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r701": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4" }, "r702": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r703": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r704": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r705": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(10)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r706": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r707": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r708": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r709": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r710": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r711": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r712": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r713": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r714": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r715": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r716": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r717": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r718": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r719": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r720": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r721": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r722": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r723": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r724": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r725": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r726": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r727": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r728": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r729": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r730": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r731": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r732": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r733": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-6" }, "r734": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7" }, "r735": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r736": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r737": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r738": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r739": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r740": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r741": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r742": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r743": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r744": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r745": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r746": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r747": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r748": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r749": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r750": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r751": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r752": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r753": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r754": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r755": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r756": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r757": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r758": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r759": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r760": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r761": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r762": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-3" }, "r763": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1" }, "r764": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r765": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1" }, "r766": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1" }, "r767": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r768": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r769": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r770": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r771": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-16" }, "r772": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-21" }, "r773": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-22" }, "r774": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52" }, "r775": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r776": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r777": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "48", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482785/280-10-55-48" }, "r778": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A" }, "r779": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479081/326-30-55-8" }, "r780": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "340", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482955/340-10-05-5" }, "r781": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24" }, "r782": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r783": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B" }, "r784": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C" }, "r785": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69E", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69E" }, "r786": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69F" }, "r787": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r788": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r789": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r790": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17" }, "r791": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-18" }, "r792": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r793": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r794": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r795": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r796": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r797": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r798": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8" }, "r799": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r800": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4J", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4J" }, "r801": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4K", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4K" }, "r802": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479619/842-30-55-16" }, "r803": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10" }, "r804": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F" }, "r805": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r806": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r807": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1" }, "r808": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r809": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r810": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r811": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r812": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r813": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10" }, "r814": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11" }, "r815": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12" }, "r816": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r817": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r818": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r819": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r820": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r821": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r822": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r823": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r824": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r825": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r826": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r827": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r828": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r829": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r830": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r831": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii", "Section": "6" }, "r832": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r833": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r834": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r835": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r836": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r837": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r838": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r839": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r840": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r841": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r842": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r843": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r844": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r845": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r846": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r847": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r848": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r849": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r850": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r851": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r852": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r853": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r854": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r855": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r856": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r857": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r858": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r859": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r860": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r861": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r862": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r863": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r864": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r865": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r866": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r867": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r868": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r869": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r870": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r871": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r872": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r873": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r874": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r875": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r876": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r877": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r878": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r879": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "A" }, "r880": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "C" }, "r881": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "D" }, "r882": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "E" }, "r883": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "F" }, "r884": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r885": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r886": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r887": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r888": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r889": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r890": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r891": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r892": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-10" }, "r893": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-3" }, "r894": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "SubTopic": "10", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r895": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(3)", "SubTopic": "10", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r896": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4H", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H" }, "r897": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(a)", "Publisher": "SEC" }, "r898": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(1)", "Publisher": "SEC" }, "r899": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(2)", "Publisher": "SEC" }, "r900": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(3)", "Publisher": "SEC" }, "r901": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(i)", "Publisher": "SEC" }, "r902": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(ii)", "Publisher": "SEC" }, "r903": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(iii)", "Publisher": "SEC" }, "r904": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r905": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r906": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r907": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r908": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r909": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r910": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r911": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r912": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r913": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r914": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r915": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r916": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r917": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8" }, "r918": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r919": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r920": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r921": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r922": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r923": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r924": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r925": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r926": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r927": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15" }, "r928": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//310-10/tableOfContent" }, "r929": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-13" }, "r930": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-9" }, "r931": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r932": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r933": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479536/321-10-50-3" }, "r934": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r935": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "340", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483032/340-10-45-1" }, "r936": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r937": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r938": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r939": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r940": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r941": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r942": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r943": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r944": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r945": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A" }, "r946": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2" }, "r947": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-3" }, "r948": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10" }, "r949": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482047/420-10-45-3" }, "r950": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r951": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r952": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r953": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-3" }, "r954": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r955": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r956": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r957": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r958": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r959": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r960": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r961": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r962": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r963": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10" }, "r964": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(n)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r965": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r966": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-6" }, "r967": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r968": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "6A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480682/815-20-25-6A" }, "r969": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r970": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r971": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r972": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r973": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481956/830-20-45-1" }, "r974": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481926/830-20-50-1" }, "r975": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r976": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r977": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-2" }, "r978": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3" }, "r979": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r980": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r981": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r982": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r983": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r984": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r985": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r986": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r987": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r988": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r989": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B" }, "r990": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-15" }, "r991": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-16" }, "r992": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r993": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r994": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r995": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r996": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r997": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" } } } ZIP 84 0000950170-24-087850-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0000950170-24-087850-xbrl.zip M4$L#!!0 ( #&!_EBQ:V&84N[OZ*N9V>W^UP2Y_L+[NY[:(QGV77;'G#O[MPO/OEJ:EI( MC$JR87_]C2PA##;8&$HH)57/' RJ4E5F1L833T1&1O[T?\].!M6'.&[JT?#G M?R7;^%^K./2C4 _?__RONT=[!P?_^G]_^:>?_C="U?,7!Z^J5_%CM>LG]8?X MO&[\8-1,Q['ZX>BW'ZN#X: >QNJ_?SU\63T?^>E)'$XJ5!U/)J<[3Y]^_/AQ M.Z1ZV(P&TPF\J]GVHY.G%4(7#]\;1YL_KY[;2:QV**8<886H>8OU#A<[G&P+ M*OC_P7@'XRM?&YV>C^OWQY/J!_]CE;\%[QX.XV!P7KVHAW;H:SNHCN8OW8)6 M^NUJ=S"H#O.WFNHP-G'\(8;MV3./)S <,"3#YN6]^<_V3HJQ?#J[>.W6R8VWBMFMDZNWUM<:#_^,KM^;*SS>7M9U_K\UOKLMN>2W(PL\2SP^>W#T? 5"'Y< M^YN_%B;CIY/ST_@4;D3#V9V7K6KJF]H$/2!/__NWET?^.)Y8]'G70_QL])OH MM]^//CR%"_!=RN8W3AOTWMK3RYN3;5S[@HL+UVZNFQ&G1'U-!+,[YE^(/MS< M#+AP[CUI=RI,?2X8O[[># M"RDTUZ<;94_SM>F@53A$MLDG:4\0-/S:6^8=^23LIY.Q'39I-#YI'Y#G@D!8 M7VDJ=!HU4W?KB.2+U\?[;'+S>'SMK7F *")R_I!F//E2NO#A]6DP&=\J5?,4 MKC[YY9^JGXZC#?!O]=.DG@SB+P2CO_[T=/9[_O0D3FP+;"C^8UI_^/G)WF@X M ;A#;T%T3RH_^^OG)Y-X-GG:PL73_-2G%X_]R8W">=5,S@?QYR_ZY'0TAOD]>79J0\;@G4J?GCU[TKXUU!_F7PIU!OT8[WAR%#]$4OSR:',4'_WSG&)84G(<.-1YQ8 MCC0G$7'G)+62P27YY!>$"(5Y\M/3:TV[N:78\D0U5TC$1*"EVB/MC4:4)1TP MD\(&>;6ENV!P0C8Z+P;V_?V:E^R@B7=JG#0Z"!,E(I'#\YSUR,$L0Y:IP*+@ M@LMKPS@WB+-Q? -/&H47\%ESOX;^E=ZIE5&I* U+B%%H( ])(J, 5)QWSA'# M??+T:BOWAS#'S_>@G6,[.!B&>/8?\?Q^+<3M?XP8=4M+7XRM;PW^K*E6)Y:< M"HAA8Q%7+L!8PC2U7$<5O#!*L7E3+Q![9V]T$DG2;F234=UK,O_/[N]Z/G !E-O3.L!Z#( MXVD$';ZYZ9A8GQB,EU8!C'%$&Q?6Q^^2D;_)VFM:_PB*HE #O9"OW\I %$ M&F1CVWYV/,YOR'8'S:W-]ED3YH^_^LSVSV8T';=_M81FYZ)?[;#MO=.$J*@D MT#SG022<.A@V3)#@C.@4!&4P.>=?C>W,G/]5A_QWJN.X:IL=;[18>P?_<7T> M?O[E^>.:^#Y+8O9G@)>=G0YJ7T]^BR<.7A%JN-KRXTOQ_3IMP"PUS:X'_&_J M/!EVS^KFR2]Y;';^(Y[XT=%Y,XDGS=[HY<#/'O33TQN?_\N\89?->'I3GT]; MS+AL\L2.)QF'?YDQ90+_OWS.Y;7+P0M7;I6@8I]>,;LR_WO^DJ?7!':;_ 0- MGG'$O03Y:2F1#=AE?%8D6@7(P$J5W]$$>IV_LP_R \0;@=T=MLK82O&JEHZ& M1Y.1_Z-[$<<(029HGQ:VFEJRX5':! M&66- SMJZW PW+.G]<0.%JQD8#KX'96,=:AD,HI$F$)$D8 XT#.D&=N!2EB0:\(0"U'(2I0^M&'60;=5T>KV$0;*8C1[/'?DL@WS\?YM9S_H(K MIG-_",Y0!!81+NSG>FJU"HYJ:U$R&EP;XU3FN0G\?:ZB4> A QLM;.K,I?B? M=EQ;-XB'T/GK$^58;XX"[0(F%M5Z8%-XLX":R!@I#0P"<-T M .!)GBDGL/6V-.E=(0;UN%79-P,[S*&UZQ)\,_M"OM@\CRESB%_C$'[YEHIW M(,J[&HTN1>F85B1Q9 C)S%YA,!K@/AN32"04O#'-2Q7E#()?6%\/H%F?F0U@ M8,&=OXR321PWK]/LWI7QMT"_<,K1&88IXD&"5))4B&*K*$G9#Y:E266Y+'#J MFFN\;W[A8)CE?WEU?U"? (%HE^T63P+O"LU=DD!/HF%8(.%@0G+,)'+2"90B M,S"9M'6^6!+XF%SK]<=8(7 M00>FF4,L"8, O\$T4X /18A/1"3M:7%TZCL=^E>C8>[S>#08 'ZT:AV;Q0(Z MZQ#0@PD!)XMBM#'S78&,D!01'8@06FGI7:D"NLG,MOIR%(?U:)RU=L%BZ"RZ M8@ /:7 )$9&CR\$R9"3HB< J>*PI5:)8,908Z%@.9P7[QJ-Q%)G @+-*29!3 M!N??N)(1K)_&I4KQZVL\;W,V@H>QF><6=<6/7M3#>A)?UA]B .BT,$W<(.XV M39PTOY[_9O\^&N\-;//Y0L6TF8Q.XOAEW2S"D5T,=39<*L]%0LE3F!PV1:2E M=L@&Y92C/E)7[.0X !-W$M_:L]WIY'@T_L*I>0Y7FTGM]T93L(3G:QE;,$H0 MJZ3+P)P7<+%'CDF),""VL,08J\M?:KH9HC\M (Y/1^,2,I338DW2K>3_ M5SO\XR]3"X1E$N-BV0'K4!1!!J&-0%+B@#@F$FDO$XJ:2JFB-8059UWN$EB; MA;F^B'$]YB+KP3 7QS7=O!F//+YGGE^_%H&VDRT0@:MD5+@Q_,HX9214D&(=A'N%2-Y&?SP<#4;OSW^US9=?7)6XJ,4! M<,Y(Y+T*.9&=(4N90$19(H0%\NI3J7(K+;]S,<354JF3X0Z%E.D&R7MM:'*@ MXH1C[96*KGRZ45#*9H=K.Y8:X Q:(<*#1YQ%!>X=3HAYQGFTQ.I0G,U:$9]B M,]8S+-= -;E!PG#0;9. N[]P#4\H# M%A MF5]=%4_&BH!#] )YZA3BBGBD+:7(B$09DSRQ\C8R/682\H)&76H-#PPH6AH1 MIT8A1V($(23L%2BH$\6&6N]*9+V?GN1M]G&V>)3O&\?C_+0/<;:"N#+2,DH3 MQPBB-.<1,\^1Y/;.'26FBT\9J#]B#38H5("N:UD9[FN'7>8!\T M(EA&PE7 ,2P\<65%R)1+0*""0IY8 ;BK([)& [?R1$3NF.6V_!2?\ES9#K>X MVEN6P*")!@)99*RRE@LB]V?5# ][W YPUEPH)RV"'NEZ/H\^;NM;28CH2C)$1218R M-')@/#:OXO+$*/8J:DHV'!$H@"/!N. MK&8:>:4U%R%Q66[F5Z .@B744M73>!N=-S"OC(%J)@; EH9&,)G%A$_:\ MN+22%5D9W[#T3)>PY, <$38"9R.GD95&(0\>(<%2)6^+75HM,=%A.3G3+A$@ M^0F<^Z1DKAMCD..:H$B#I9Q0:W3Y4BQN_U"7<<9DF?0.(V^3SNFW!ED.W%]Y MYBQ/,?%0;%2XH^H1#_7#.I1%(%XG#F+PN1QJ8,A@+I%PDDC*G$JL..-Y>SFW M5A(O8L@YT"^FP]#8K*XHK">18X-I9AIYG4P99)352'MJ*8R_\*RX>M++K&]3@@)RPE,;*T[& MY:P2,&(F M6(P01"F0RX6 5,QE/0@U"$;9$$<] M);C84G1%[?U9#KGW7&L<2^M3 M8 $H4LPU*(-"6@23\]]]$%:#&])'L$N/*"S)ULM(L8!9XX+'>>J U58R>\"J(XDGP9F_]H MQ^'+,L"',4=7_034)Y<:^1UH67-X]/MZ*I$"G-56(5"6')8S#-G@ (Z=-XH) M<'IP"-DUY+@:A-:K9SQXA\V!)G42KJ. Q!J7.WK(2QS[SN MQW+0\P9+&3U*V #V@+^.G%'Y("M)%1@ YVBQ6\Y+7CY<3"DD'[#F%*#&T:QM MD8"]UCBAH)C4W-+(3;%!S@#A?]QCW!&0DZ!6AEI,?(F4F:4YPP79\_7 MCI"OLA^Y)!Z3A!)1$Z2-!W A(2$#C!1%, T<.RZ#+#: ]/U)O->097<8P-R' M^,I^TQ9TQ"Z>-Y3LC5Y.PJJ 6L# YI/8H7 ?3 5OMJ#68%1O$O_TPJQR?[^)TJILV:MNS MM3TM*E#CB80G:DKS[E=)D>%2(^*L%,F'%$QQJMOSD;+XR!(R6P-+BME@$0OY M".=(@9D0K5$*1,0H!<.\V$TKU[-I#F.()Z=94F_:_G]6EORK][X]'C]"I9!9 MJ<.+PP+S9MR7([N>.^0"5Y()GNVAQ'D'*,]G\4KDF"6:<>J"+PX,2ZKQ7 (P M<'!&&'?(,]<&7"723"O$F %BDP^G+^^0U^(*/BTF0!6,DTY1P&R1"T0G%\%+ MP/ CA$0>( M-MX@;5JW-&]/3S9G>'IG#%54E%LHM9MXSIU?=[]4MGD0:W50*N0RC8$AT%B& M.'$8N4 =XB)H$I07?O$UK!YLRPO=:+2$++80I"5M&I+3'G%C--+.>*0\,3;Z MI (O-NZT,E'"[JQD!$) \K&*!![+,4O(:A,13MJDB'$T8M47?Q^[*G)GHDG8 M2PONC236(DZ!QUEG\XEL2KJ8I 2[6;QH"LJO6TYJ9L2!*9Y3@Q+.V14R'Z07 M-9*4:"&H)"X5!X>+B+RNIC&+..6"2191J3 X$0G8:F3@25C!->B@%^5E1ZY( MMD6'2UV12$*I("AA#:Z>=!10,21&['F0LKCTYRM2LD,/Y/#SG9=7R,9X M&L/+VKKLZ-6K0^PC"3;1Q)#SLYI[&CDQ2VIE0H+^:%-L]+XT8K\@"3%'O9&M M"P[P%AA#)BH)8HJ*:!4%8\4JSK(7,A8$95(+!FXO\C&[4,$#'U?1HN08Q9(3 M072Q!J=,/MZ=:(S&FGL ,=;"60(D,U$BH[W2*4A*5;&1JY(=VP*6DV)@@EH. MHI74Y%-?(]"\Y!&+A.6;N!F5?P5PUF#&,E 53SK4ER.!LWI,D,K)LU(L-LGU]S>,_XHD?781O M]D;?WIB]6.=U]=8^4B[)G Q%BF0"+HD!*AX=X6IMM06ZSAUF"KX<=0G"G8WIR@5@G&2CZ2D8*VC1M8YAUC0DG E MJ8_%[>+JCZ-;E'V0X"02GY"&?X'$"0._R;Q-EF&L(],N+=SA6%[G-?/468^2 M5#27-02*HJG(B1K$@H>,DRO6VRHA979!4K%>)\L#LC(HQ"WWR$B>]^!C&0QC MUI>[(:LHRK*Z^2$&E7",7B803N,%@74P(X+)H M;;D+QMIR-:TT"95 $8)U4E.,&%@4H @Q5V+5 GE'&=,IJ:A77>&64@IY2=), MP25K.)(QGZQ+R0-J+5<"2UU Z]((Q#C@9X".,)! 1SQFV3H OA0GV5"ML4K%Y&

  • J/T;&&H BQL'O,RP&7IQ4^A./BZ0W7B3N/$8TIX7RR$7.Y24H:<]),D*8 M5"Q;+2Z]0@,-N*.W TH+0O-B'[,$[J M<:N/;P9V^&6:4^LVOIE]*]_1O!F!9EY^Z?7X:'IZ.FA_!VW--SR/*6^:_#4. MX9='6!Y;AD'V1F%*, H.@U4V+E<.L@P$KJPU7FDKB@WDK[C EY.SCY,!+R-) ME'@N4FA<0#IJBBPU%J>\[U(7MQY:Z.KV8DH0$0RL6($)U;&MY9EK*%J,$#@#0)(P(A;F;=H$HJ9F%,LFE@-\%-N %0AP M=N"I!R_- L% 0E&NC%:*QV*U[>AX-)[D?:L9 ;^4Y$N0W:,$33O5+)M(/N:) M&L81ES@BQW()_LA8"DPGT+QBQ?'UR.4GH DI>0J4RY(!:3A(+3 ,E&A'7& !DN)J X/J+-)44.!2+%<8 MS!7906LQM1AS5RPM+GW9<1DFW#"L@\!(<@ @'HQ"5BCXX4B2R7L?<7'YC]F$ MOZTG R"^(*WZ0QVF=O ID>DYN#X^[_-92U?&@L24 M1B)CN<6C2_9*EX&DCE#JJ$(*YX(*,6>P&9=3CX$5P ]@UL7ECBPKH7%%P=4Q M;D*4*.&0)[SO'VB,/D8D)@9OE 6D;QZ MHSP)CA6W6%#,]M'EY"!1KRTG0@(75QYQI0@R)N8=$4PPP_,*:G&%A>\5E6Z% M>E$%8V\Z'L>A/W\[!K,S:$,"N^'OP %S U8E#Y'Z?&!+%$A9$!]W\&SC0P!6 MKE3P+HE07CW!M8O$W/WEY9V8O20*%%1DG%H$U#6GU B> _,2:0LN)='NR*S]]E>&/!X:0Q13HG&W'@.T@'*Q'A&JRE\KE$723HB88!%GT@#G\!R1P*Q+7%-IBG7-R\V96(8@ M"75&1HMBS#L&63[XD3&+@A28L\2%L,5605YVD?W%&'K&* /@E2"'O)$G>(:< M#!HICXT+TE',BLMBN<,! *%CJGA(!L>,+M%@",J.=8 M"B]Y".4F[:U0998EN,V,&R=48N4G5A@ MKJ/3X]KO?XA?'(';N-A,1LU!TTP7(+\%:1N/ 6,%_BC/YPDQ$9!3B:+DM2#, M8I%L<=[.=68:PWYN5AV;3ZD F3[6H;;C=2UQS:25*0J)M%8 DM2Y? P410Y3 MJYV+0#:*U:3R;%=G.Q&9C K\.5"D*',=5J:1(5XBL%\^.JXUIL4MQY1ZQ'>7 M(&>Q8U$)4+Z\2L:M1EJ)7 1 F<0-%YH5&W0K:O_:DEPG%R@E0 8M@5G!@0 B MZQU%)A(G3<)>+CZ=8C'B>X02&0ORG8(D2GF.F,2Y*I')8>Q D13!$Q&UU[18 MWVDEBK(MJOCQHJ:#A>?V?&ZJ0H3%O+[7!,:5,4*N^L/&( MM8TZ(TH"8#GG34=,P,I*9D"[:-Z5C+FU5',BBXVDEKS,1]$J! UN0077(J M1NU6@*86PC$6$_[F4CFGE$16NGS6201?D$:9]Q\FS3F+VA8KH?)6)3K;*,>5 MS\OA& 5C&.(L9+$PBD2DS$D6C"(P4:^0[/_)@ M$U42W%O+F$).DWS$2\H[42-&3B1KM='1\>)")=<2E_\QS9P\:^.7RPF?W;!X M3UKL'9I0)/BA("GBX!ZL'!YR546QD5L$)6OJ>[W%)="](L M0Q,AFB)/0:DXX119(0%9M7=226U++HA8V.ZC!\0#NSKAB=NH(L$)16DQ,$@& M?G&R%$6GF?'$1+EX/5M>*,!Q1YRR*%$!G?> -$8&B;P+6"5EF"OW8*1R=D8L MR.,,SE!B+ I)"W++69(7U*J0 MDV)DRG&&_)LF*H=^N XD.NM(SR"^6Y!+*"/0\#D?MM(GA5SO\XR]3.P:LC _> M'?7-(B37WK8R2S'"I+Q3SB$ #N!\0G"DF;?("6URT4>E%>(F ME]N6QB-@Z((XX2QULK0YU)N !42/G<=MV5@K93[LF!EDL..(R(@9MD8F4;@) M*!!+-JQX]S+@*V5RD@RBF$68MN#3N@@8EJ2P4C'NJ"[.!5I3!)'4Y$(,'AE! M\M% ,2(MX4? @0)3B9Z'XMC(QF=*=BE_QB0A6B.L<#YH1C!D>W.\)P]Z:A'+HBB+5&!H3S$?;2DER/I8"D^0(<&P&3*& 4*0M::(PC M+R[5O)CCI9?!(3UQ))^ $+'#>#@:C-XOMBYYER&. M9"QE*B#+9+M/ 2/-N$0ND20E59Z76^1@(KF.CY69[26&G%/ EI47SO7^S0H$$!1)SC BD?8L($Z90R8Z M!ZJO9$H:1UKN+K];LPMF"T"[[\>Q%?/*Z!3%PL(@H1A,+OHI'-)<1.2%=$8H M:RPK%G=7\&#U+B7'F01G)1>XSV<.2!*0,UJC*+$Q(DBK5+$ULY9]7%L!6;:* M@^,9<\DSEZ.HWB;D)-&(J9A"LHF$$\#AL]+%RMC M^6DYRX5@#[$$8HHDMWE-7A)D?#Y)S)#H0'S@NBU\37X19&LU4_!6= XY0%P7 M0,E#S$4T+$:&.H!C%U-,"E!Y\45@OAOP.G.NH]"1@3#YX-K&('#C4R!,6 M@: 8:7EQWLJ:',"W)/.,)I7A\.02$OM"'88!I,L:!16.+P@J)UB9B@%8@\'ZC"A1)9W3$\ M7824XZ6:E!"M6Q"'3SPD*S'R*A^HSAP@7!(2_'"K1"XA*VEQZYA] &ZI\#8= MUK/9\_N[_=\/+R?'2;3-=!Q_J9L1IT3MP+7Y ^:7YG_G)]SPM%.XYXO'7;0( M?OW.IS7'%E#HEN?-+G[G$_=L\V7[9@OG<.4['_;[T?-;APZN?>_39UV3T" WCX'/+;CYBCW]?)=K<\;KS[BU?0DLX'1^)[-^>+[^#ZWB4O[ ]&K]_2@&(GH*IBD_S M?4\J._;CK]]\<'1R\9UW,5IEJ3$HA;RI5#*.G"$,I:0B\\;80&WU MXITSD=,@" "R!I?#&XS B^=(>!34)(AZJ2?U3LRPC!P3W3P M#C.F=7Y:\DQQH1F*)H=9K7-(,ZJ0D"DD@W- ASUY6L2(1@W^)(T"84TMXEA* M9+0.R$$CL1=$Q"2OCRAT-9_YJ% LY67 A)RA,.P)L9-=#22D(>*2"#NF%GD M\>PHHI2KIC,DL>9,@*@HC7D,GK:#T(RF8^"HLS^/HPTM4L,T_.6?JNHG^+=J M)N>YKZ= ZH#\H,GH= =OBWKX#.8N.H[Y'/N+#]SH##7U_\!=.VXTAB QH@> 3'W=.QQ%]'-O39Y^] M^ZNO@W=]K,/D> <G^5TP2J=71NKT\W&Z:"N9OZJ# M7E\.ZNS)V^)T4H71U WB0P>DJ_&X-A*W=YM_ZWVWB]O'3'P^[Y\?#4;CG3_- M:-BSVWO[<39=W6@0KG9?W+/_O[\Z>+O_O#IZN_MV_^C[A^'><[ZH03C:W_O] M\.#MP?Y1M?OJ>;7_WWO_MOOJ+_O5WNO??CLX.CIX_6K51^:^ZO%?%HS+\/UD M--RJGF_O;5<4"VYN&XV+7F7UW>'XS\\>#4AP"R2MMS&_<]R.0V[%-\?V&] B M'QE:OOF^%=&J%Z\/?ZOFW;_:GN]X]I.6Z Q'PY;!UK[ETB_><47 _V<,,1HC MRJ=V(&LX$!$JA3-<>\+#D^K"*0+RD=UHQ[BDN4*=X0;X%[$<:4[RMYVD5C*X M!&QE:+.3'&*]\WSDVR2G'(WCM^<[\ M^QIC8HX&S@\%H M BY6!SIRN](;Q>6S;P,G3)/P /'2PC#CMO&X%$PUDTSU9CINIG8X =^^.HH^ M1Q0JPJK1N"+BA_!C-4K5Y#A6;;9\6^6VVC_SQ[G24;7K)_DR,8S?-)!SQ8-_ M,VJL)G6^+^"^@ ',X_:/R_&>Q6RK. PQ?(L8?>NMMVBX#@ECFVNQ!Y^#7"HB M1W$ 8F0X22[Y8'E7&OZF[<[^+#!]3;]WH_-HQR@.RY#- MOT^'L6)XZR8A+*E)BYH0T>1,"()$R@>=*BR1MC:@1/.BN3?6:=/5A'A1-X"4 M?P-!OX!/FC)$G=?BOH7]=^/2ZPY8HW'/##>5&6*L"4F2(JT51EP8@[*B(^8$ M#5'RZ'%G,-&F6[Q^BSRC[041)T>[*'MM_E(N2/P M;A?'98PQSL6YC>DCV*NZIE2?O*^:L0>>=O)>:&&(5OP=WO[[Z?LGE1U,;OS\ M&O?6[/3LV06_9AI^!QH^[]'R(.?*J_3]=#JH8!3)EJW_5=O=U]6 M>Z\/WVSW[O7U!9C],PN4.$LT\^+QI20KVU3-:?0YU394];"J)TT%)#I'#3]? MK.EAL=R%ON?/%K,1O\?3&;+P6Z_!C.=;VYQ=X0DIRP M":R,"V!O4D(.C =RCBIJ.);1Z6[LS<$0?,?3"_>QS5W>&TV'D_'YWBC$+P,W M3;[C=#SZD)_32;#_-JUX'@?VH\T9YPN.W2S6%MTX"-^1NUE@UVZ>LLZE0(.P MB$FE$ ^:Y,1G@:)Q1@>'5SL7/'MM.W,![HU+XQ^LS@:]A<0ZLW3AK M'SM5I"?P/8%?'AM243.,E4".Y2H5@@#'D8$CPIT0G"87C>J&#>V&,,Z%KV;_ MO*R'D2R2"7$I".CX>')WX$9+5LHTB63F.>(TESWNQ4/ MB01I&[AU-AINV:*$0A_!KZ_';TM6MUKWX/7XS7CTH1[ZI88JWL:S;\JF5&>^! 9?=M?Z M!G^GF4V.)<\<1E[;?+P&5TCGNH21.L*4(X'(;J$@5\FR@_]7G[8QR\7IN1)4 M]!&@QW.7+\2;%]-.QP#R]:D=5/$L^NFD_I#7V,#IC$T?(UEVSSH5.JAQE?6X M#R)LTMKYI[2'?_F3ID0]:ZI)',33X]$P5L,VOK]5 00,IGD1O+( C6!!0MRI M?EA,%I>S7FDE _).Y^,#,$H<"5-$QR'%DSJ88[_YCT9C/WY*RDI2TLD;5MC[ELXY%/>^RR?)Y>2JTYO2IJG M/[C+=/E=/]FY:SQ8;NL\/"&OSU8#P@\*_3&R+KT5YJ=[&_"O7F=SF_"Z! M8-,U ;X8CSS5R&7^TL6'L^#X%Q^WP__ITWF&5?LQWL8JUXNZ@6)]5N+HB^^/ M+\I-S1YP,R$S]S?B=#OO-NE"/6Z-9^3:['DJ1^N/*Y]/,/@6$_V>T>_'^=-N MG);-')V? )+W0[R (7YUD8S9SN0XW[D$< U/@4\^8?IW^N^$;:L%(5AY8/40 ME^..(KX^G6[;ZLPP2Q(G1&A@B!MKD1$B(,$YE5HGI>*# TL7!O^<4-?"8'=3 M,>] @8EW-!GY/[8J,-;5!SN8QNJ?8?!)WAM6M>4X[QE'+@ (2IDF@5E'N,*( MXF013RZ7 ,48!:WAL^Q4GU\N7>/6+3-T;2KCIV=)LOR*U[R&;GV138OF^AM7SLD,_IA>Z\ M\L<1!O$D%\_Z>!S;7,/LPGW:OK%3_4!^K(YM4Z5Z -Z?'0S@:MX]G9W"?TSK M[!*")^CBQ0WPT/MOI:["-!\TU]X*??:QI8B$5FVUE:;Z 9X'TZQJIL!?FN-1 MWD0RWUD\.;:3SQI??;376YF;./OR11]^W*KL,%0_T%D?'4Q6N.[^#CW(][>W MPI=R*RZ>TQ99;QO1-M(VD\K@*MCS9ONV/:_?([1;M%H9$8PF%XO+G*N$M,=@ M_:FT!+,@E?#=+"O-CG6>S';(9Y2?V,F]JYT\<*;^+2YBU?^!C:JJBYI;6=RO M1A=_\ENCUSV>7%/)K&:@82?U9 (Z&0>@:>/1,!ODP7D5P3B?5^W1"=:WZUS/ M[<3.-BU_AC:?GG$U('4XA3LY%AE0#N/[Z:R$>'6$WE8_Y$4&]8PR$,+LALEQ MW6Y%.\U;T18-/;/V7B)*;'Y<*%Y$I8 '."2"!V_!,YU/81;(D*0QTSJO0W>U MA^926%E6%_#1XT6/%]W@!:BHK0;0D5A9[P$O=#>5^_'HX^3X_GE;: NL6U;R*>.M35- MVL7YO&1'\;/;6MA>)L_FMWWSAMO;-[\Q\Y6+FV]IZ_S.>CC#0W#G$9TSL*NT M:_L15USOL9I\_RFV3DGIE'UER4'@KZU7?*U2&+W+0@7^WD#?-W-S9E/CF@]] M%? (W3:70K\R"9987^JV.?;R9HW_SK25&\9C!?K^I0E[<%\?J4S<;$AO84V, M2BE@0&9#W\1AEG(5AK;$>5+C*C'>_!K'D_&I_?$#II;VKGD[^X MJ<>I7,]Y[G? MBO)-;M7F6(EN&4^Q?3VZS0==-[X7I93>JHB(Y"'SO80T-0)A;#&W&+.8.BK; MT0[I_*C6Z]7D6]<2^CUH.EQO__[:OSTBWFN@]V\.P:R;IA"2 M(2NE0(DPD:0W2N,'IQ7,-&4^H']IQW-O-IR=%]%^E)K92T3_Q7/ U>_<"NRG MZ3@">I\UAJ64M5;8KE$!UAZ-V@7':S%8!H)^S MDVYN*'$^&K?O&ISGEW^LX=7PVFH(S1YE4O6A;EKJ/+1#7]M!#B'FJG/YYF9B MA\&.0U/EO=MUN"W=GOU@?[PQH-_AXE(_S\N?Y]^_DM8!@Y[V9^W_%\MT>?]W^?-I,ZG2]IZN=$P-G6R#Q5V^3AIAI- M)RV"9BB=Y[U?3.2Z::9Q?+F_LMW7$=L%7#]+3/M' ,!>]]C%8: M9_'G>N*5]$%;A:*+$G%M@,\'%Y!TP.69X%9A=T-N6#M4;>+E43OBKS\-^)-J M.JQGC__]W4P>3P!;? V>;_/SDX-7+ZYK%@@/A5%[?D>^YM*^V/5MF:;M/NCJ._[U[+ M&ZUUJ#_,]#&/QON(AJ,0Y]^!=N7+ZKY]71[[\>'3P_V#T\V#]:F2H'#QN/O_Z^>_AV__#EWZK#_3>O#]]6KU]5 M[9GIU\[Y7N\Q^.R0U(NS4>?'O#IQ9?C:TLJN?A( M*R_?GCP7BS$WSI\;[?\B1Z5]>X?*1;]SN5JN#LS+'L[Z@5B+@;@S^"ZR@RN+ MO5T-RHW0N_B4R9Y9KR+4]".Q>#(-W3YY1ZZ0Z;8P>UM#X#&X] &\JR+;U2=. M?73Y_IY2]Y2ZI]3K"VK]0*SX0/24NJ?4*P&Y/9%1Q_;?#A&VD]93_![@M\3 M_)(AMA^(C1Z(GN#W!'\E('>=:&T_$CW!GQ'\3Z'X=Z/37-!BB1S_4U@^D_N# MH1^=Q,LBPQ/H1VPY?E.?S>N1WI!+VM[2,__-9OZL9_XK@+W]0&ST0/3,OV?^ M*P&YZ\1W^Y'HF?\7S#]70AA_96__(S/_O;8YQW!?/OR@]P.*MT7%^@'\KE9I M12S1VC&AC>M_859GQ0:T=QEZEV$E@'J=B'(_$H6"]S)=AEFEJ&)LNB'[98 50N!^(C1Z(W@?H?8"5@-QU8K[] M2/0^P)?+!K8Y?I>*\0'VH#G5B\'H8]-S_N+L3K&<7_:=F&X_$AO'^8>C26RN\_UE5>UYE9N2S_NYA?OWU7QZ'G]UD%3/XU< M2?N!V.B!Z'E\S^-7 G+7B;WV(U'H2%POD$G?P=?L^XO8>J@;/VT:X,KOX-/! M>5,WCQ-J;ZMETNWJM\O&7)X7]_RR36WD?/>B73GV_HF-9[H^.PDTWW,8F^E@ M%IY_W6XOA@L]3=]@FDYQS]/7'BG[@5CQ@>AY>L_35P)R>W;:C\0C\W3V[A_Y M*/IZ F3V0\Q_#.:_9](^˛^/I;+OZZY7&M)3[KY\:U#+VW*!\>*]UH^D$ M:/WXCSBI#NOFCYZ&;S -[\/EZP^$_4"L^$#T-+RGX2L!N3WY[$?BD6DXSVDJ MD_%HT+P['8]\#)GD/AKQYMOMN=SY]2WI?G/9A)Y5;S"KUCVK7GMB M9]4]JUX)R"V52[ZQXTEU<%"UB0'D\:N E3HNZ\2Q3T'&[^KZW6C\KAZFT?BD MI<>/P:]?3X[CN#KX]-*>46\NHV9]NLCZHU@_$"L^$#VC[AGU2D!NSQS[D7CD M.#5Y-XCO[6 6I(ZY48\7I2;;UO;RGDWW;+IGTVN,9_U K/A ]&RZ M9],K ;D]A^Q'XK'9M'TWKIL_WB7K)Z/Q(S+IW>TV9[IZ,7MQSZ)[%MVSZ#7& ML7X@5GP@>A;=L^B5@-R>._8C\<@LFKZ;#L?Q?=T .22WG80YR?ZO&NBGX[K MR6.6&OG]2F.JH]R87"_DXOB>HUE[ZCA+M/Z]B?GB14"[Y^$]#^]Y^#HC83\0 M*SX0/0_O>?A*0&[//ON1>&0>SMZ%F&PND/=N>CH: O<>UJ/QG(+7C[B?D6U7 MSR^:4OT.30':G9MRA7WW3+MGVCW37F.LZP=BQ0>B9]H]TUX)R.WY93\2C\RT M^3OH:GS7V!0GYY=U^AZY8LAO<%-UU#;A:F6^GEGWS+IGUFN,;?U K/A ],RZ M9]8K ;D]G^Q'XI&9M5A"B9"64(OMJB\5TE/IGDIO$ICU ['B ]%3Z9Y*KP3D M]@2R'XE'IM+R73P[KEW]. >LMR1:;E?[%^_LN?,&U1Z]^(%9\('KN MW'/G3B$7GI';\/,3]F0%.5,#G]K)8RWB'UV^K2=*&TR4Z-?4%OZU;A#;7XN0 M]:=W&WCU5]]VUUG1]^U1^]:^N[/.A?I#Y0>V:;(BOX]H. IQ_AUH5[X\[_T@ MGJ%0CZ-O\1%49GHR?!;JYG1@SW?RU4L-G_=T6]2SYEQ8++S-X8._3YM)G<[G M;VF_BN(P/'.CL]Q%> ) QAC@%QYT=D<\(/1;HW*[$#X!SW=B0@="N>YFP7!? M_,RR.1Y_PE@0S?;DZ:40;T3C+\8_?_"085[-B?YI2!?9 MQ7M/H]NI1P>#4>WM[[VN]E_]Y\'AZU>_[;]ZN_NRVGM]^&:[VGWUO#KZ_=>C M@^<'NX<'^T??#WL/4;K9A*CJD.=L/EGB7:J'=NAK.[C;XO%7E?+C;,*[T2!T M8!;>[!Z^K2Y/-ZE>'+S:?;4W'Z[E-^\ 1'KPZL7KP]]VWQZ\?E6V^5HQT]Q. MT(NRS9\F:#.Q\!$T["N.QF-.@+?[OU5D^W^5.#&/WNY"ZP!W;L67=LQKP#S@ M HB0;<[)GR^I1)8"R'2;2O7GS^%PY>W28UFD=A)#.V"(FQCR,9G-:% 'F,/A MG;,#F-3Q77,<8\?3^=X#M??ZU?/]5T?[S\%2O3IZ_?+@^6[WD_K>K7L+[?IU M]R5HVGYU]&_[^[?/[$O79S$\F[V*8+R-_SS_ @AS8$^;N--$X ,P->>C, L7M,]^\GDD[$/= MU*X>U)/SG?GW;UA F+U.\FVNV)\O./,--P#RT*]=_MHUOLWX5Y^]]/=^)9"H M%[9T^7@ZJ4XCC.JQ'<<* M8-7^^)V!^Z4-3)?QP,O8,7WR]6Y>>IWS* &,7VN0JKF$;FCU @?F8?[_G>;, M=&BG 9X0?OS)C9_^\N_38:P8WJHHIOQ^<^4K@SC37,R*&,8%1)Q[Y=DHY7D> M?3QQ@*^,M K#>H59R,*AAR%(_O$,_K*SR.X\ 7>/CJZ3_ >CTLJL\=T9ELI8 MQWLT8[-AW>UG\5J*=:VZNYPL\S+2.AZ0O[ W'8_AM\HV39PT.ST^;(S";!@^ M]+-X0\6Z5MV]OUMW1X-V=36N?>*-#?^&V;NZ*M ^Y.I3\6.MXSW$*MKFN#U= MP.=?\D$('^P@K_=^:PK>9;36 VYN>.1P5%9WKT^ V_KYSQW*M RL><#$_ZD^ M S$.7XQMF^;7KAR_>.<=ES%:A9RW%G'C'=*<&A2(,)@1FJ203ZKV*6>3PYR+ MO?=.)6*"5@SA: WB0@EDJ,*($1$ D:33Q#RIAO8$&CQMT'MK3W>RVNT.0_YG M_Y/.[4[V['A\7@_?_Z<=3..3:CJL9V_Y_=WO1\_!VH$<8INS'J*O3^R@^?D) M@K]F640_/ZG/)CO#Z0D*HS;/*M_QY!NGKH6@_H M2IZ;X+E&5$0!T.4HLCQ$E'Q2UD89K+:?0U>2@0GB$]+P+^):&/A-$F0\PUA' MIETBRX0NP;>4,AL.7?>/]_1,^#NTZC VDW'M)W'&A7LCLM9*U=N.J[8C"I^8 M$!A)ZSGB 2=DE1;(4:F(5S@J0KN@O9]T+)N/BXAL5S37D TW%#T\;;HHUQ2> M$M>66L>1LCPB3HE$SAF)L(3_E"+"FB_@Z3[4=I'P)&7/8_N([B/PV%WO80PG M336./H)[Y@9QJQK&264'@]''O 6B/6/VTJ->J.82<-\TT>"*&@+$@A&#;-(> M&:NHHDPF3'D7Q&)WWK<7H_'ST=1-TG0P'XC#RW'H6*.WA*:WZG1'PSI3IQR@ M?QR!8>XH52XAIQ/ )G88.1L=2L8Y+4&43NHNH'8Y N,2/PB$>R:U(ZVI1"2 UG.FA(JN$SS^0I5?Q4FWVDRHW#**;SBIZI%J MTT6YIDBEF$J*6H*$YS2OQ&H@%2JAJ R)4@9#3>B$B#P"4A&ZI=BFK\#VRQB/ MD] S:L#WRPY#;"8P__)Z1K3C83U\WU3UL-W&V;0>H*L'@_93T+GIT(].3@>Q M7?V 9^4IVJ< K;="]O;F6J0B2N\3&!@9"$/<4Y:#%!CLC;.2>$*<])UD_EQH MUW_5D^.]:0.]C>/=G)+>N=D18HLIO>%6I\>K31?EFN(5B\12(1@2VF/@Q\(A MJY1#-(88<#1>"=9)NL^CX9646V+C_?E^D>116/+!\ /\,AK7L6D71WK3L=9: MU9N.JZ;#),J)R8PUY23WH#72DD3$6'*86&^4-5U0W;F2G8.IZ"K)1V]Q)3;< M1O3 M.FB7%-@=[8!\;SN;)SAB !QC9;;C$!=<-I% !/?PKK/\.E# MO(] 7M^,XZFM0Q7/3G.=TUFT=]0>".RO%3GHC<=:JUMO/*X:#TF,XTY0%##- M 1$'QH,(H*G*)2>UBB2D+ECMA?;MSY1O=QC:H[C;D$C3;4"$XBU.-CT@TN/5 MIHMR3?%*8:F$)A1%(A.XXCIG6F*-HF,!2Q=T4J0+LOMX>$7(ENJSW/L [F-R MX#HG+L1J8L]B3W?OK5G?KK6[$KIW3V%_5Z7A=3)!P1 7J)9(4PKF)&3*K+T' M.Q228H$KGD2'E/EM5M*NXBU;E"PP#GR7&LKKK!(]_O7XM_[XIP*-&I/4;G\ M+',666#=*'FL& \B&-LE!>\2_S1=8&!@;=#O40/2M LR3E>1C+\=3>R@CSUO MDIO;QW*N&A+*I!9$:,08)XAG&^*<5\A1H@@P8NM5)\G#"XDR:[+%U,/VQ6[L M?.ZA:6U$N:;0Y'%RS,:(K, 8<2(DLC@!N=%.42^\BZJ;?70+@B;.U(9#T\(C MRO?AK.63TC?CT2GTX7RK.AW83$OSEKA_3.O3?)QQG_2[_GK3VX%K%#71R"@0 M4ZZC0UPEC@QA!B62F%3> ;!_$>NX7ZQWIG9OLM+M#L/^7.4ZS+7#6]3TA+4' MJLT6Y9H"%<GK81XA-$IHVL2+D&J5QJ.3*L]:.ZF'[ZM!M$V?];#FZM,;AVM;USCAIBTE MZ;@$%DLUL@$K1(72.9>!8--)DN_KN9*]S#K6ZN+K]'L3VRA'5^ER?(MLO'7H MD6K31;FF2.4T@!-+&A$3> RB/HO?](PHYY5J8;)&:M!G6*? M#;#^^M.;@FL[OV((*8(!D%+G:K?<( =J@6(@21-'%&>=[/QZT2K9R_I##)\T M<98JUMTR&Y=;6&^Z?>BA:M-%N:90A96 @2(8&28!=B) E34\Y"Q[YRT.3-E. M\@$>!:H$WN)RT\\I[2.I'5/9O%7L"IWMS<-:JT]O'JZOLR6:"(DH<>"B/.J M-(\1144)C5Z%(&TWQ6SG.G:CB=@_\X-IJ(?O.PY^F"U!;S]DLI_P9?6MQZX> MN[X#NR(C1%-J493 53D)(M=?<8@J!5R7)>/5%]E,]ZMWNRSLVOA]I7W8]E[Z M\CRF.!['OK[7!JE*;QNNE;-55 9O/"*6.\1M\LAZ;)&,0C$;F-0Q=L%KYYIV MT"K:6WO6=-.3GOJ8[,-XJC^&=UX[BJ$O@]779+R_L#>V)J,.V!E*'!)6!; I M7B++K4/!1T>2-8X&W27O;<_+OEX5O:NUOBU&%[C4MS9%&GLX[.&PA\/;LA^L M($$0@K#!"?'H.7(L.)0$#L)A1PS[ @X?0K$7!X=\2^$%1H/7!@[[FK6/6+.V M)^E=:AW=IEGMPFB:DU26:)>NSXO;QN*?%V:@;AZ(-351AEBC'-:(&?C!I;7( M)$U1X,E8R6W"MI,,C&[)N=%;A"TP,OW5";%:%JF'PAX*>RB\$Q3Z:+&, 05# M,.*>,:0!'1$#GNYU=(K@+TY6OW^QW8Z@4.)<3_'1(A4K#87W#Y/?-+GNRMB+ MP=<[*$S[MH^S(7&C0;A5@UX>[/YZ\/+@[<'^4;7[ZGEU]&^[A_O_]OKE\_W# MHS:Q63VK]O_Z^\';OWUK(A8S/%V:'QCJ?.7G)_3)U_M9!I0NP/+VW>UG\;J* M=:VZ>_^(58=&(P" M88 E "J2D%/<(9*L"\D)Y>,7"\'W6?U8*%!QK3<ZN]S"&DZ8Z MM>?6#?JJ+>NM5;VIN'X:(0_")8$2YW9V&J$S4B&A--6)8NIH-SE#%TKV9J9C MW5H+@[=,7RV[AZ@-%^6:0A1)A$LF+(H\@=O-$D6:68$D)S$Z):R3OI-G<9A?S#ANFM5;RVN%=0.4;F@"5*,),0Y M]\@J(Y"VPOE (DN)=41HLY*]_)0ST*W!X'Q+L;Z6=H]2FRW*-44I TZV#=@@ M:X#8!GYI@D/1)!2YU,KB3@H./@%(,][2VC],^ JW]M1X,ZN'[IJJ'0&U] M;)J,>.]"N_ZKGASO31OH;1S/#<]Y MMV9'F"TM-MWL]("UZ:)<4\ *5 ?O+$'$6H>XL>"]"YZ0I51R9X/5H1-R_)B M);>T,1L.6'WX]U%X\JO1)/;)#)NA4KWAN&HX&)$\2>%0H"(B;AE%EKF A':> M>!UH5/PA3-='/]IIU>OZ&B&YGY5(]5D,Z'_B>)1%K"FASS;<0O3(M.FB7%-D MPI9:YI-")D2+>#(,F40=8C%9KO.ZE)8/H;0=(].79P=LB476#%R)&=V'>1_I M=,5/!\WT++:O5MM7J[U/"$4!AU4:+(:3 6R'!7OC!;!:3 Q.1%"MNDKKS>N+ ME^=!=+V^2+: %?>U:GOBW(-A#X;W7@ +B@6-*>+4<0 VCI&6UB.E0*VU']Q'=JYMH M:>QT\2CQJQ#$) MR(H@4/ LJ*2,%5YU4A1B42E\%*LM1ONC(7M\VFQ1KBD^!8R)E1QXC686B*RV M2 NM4.3!6TMID/)!D>='P">V1?"F[X3HCR^_ETZTIR?UW'1CU*3'_JO8+[2@ M1D:&HM 4\4@8TC3'@QFF1#A&*/\"^^_#35LMNV( 7HV&OMO(!]DB9M--0 ]3 MFR[*-84ISCGQ$5L4%..()X^!;@J.5/#4YX/-F?JBKN)]*.KB88INR8VO0],? M8'[/ \S=9*L:Y%UM_GK1W=X6K+6^]+;@VEJ=$TE9EA"F+._],/+_L_>FS6TD M28+V7X'5=N]TF\'5<1]5,VNFTC&CL2I);TD[:_MI+ Z/(GI 0(U#(^VO?R-! M4B4)%$F!F6 BT[M+$D%<&>GA3WAX^ $N5KC+P%"E:)3CL>T:NQVL VQ:3>N1 M+P3$J+&+,8,,&FMB"+*I'/;Y74[8)296J]'SBAR MJQYHK%XTJ9_,/@7K?G*R?IQ.%D@=(H:M-[0@?!$#$"T&R21HICBHQ#($HQTX MGQBWR$5@O VC]4KM/D68?>[,P-:JZ4Z]&GNJ,J%J[*(<**I"CMH65VV7TI1' MY,Q#5*RRQ\:24G%2[1\)'6*['@=5;NHD=8D@?^LAD0'O&4:(%6^)0I_>R/]#,RVVF%HA7JP#:AP7 FK 7!,@D50F)E>Q- M._V,_]#1EM8BJ=U4B@X+ ]F,2( $@ )@-\ 8.08N>;5W-;>-8$96.LMU $ CIJ[+BFR# >#A[O'KYM==3?2'=8]_><]@7?>?LP]P-LO5 MN/^Q[DQ=D27:#)+YIN=KS! D<@C*HVOEUS=^[T,8#ZE(60!3-%5W5-4( MAPH"LS$YJS%)TZ("/UF>G\\VY[BX;/;1/%/WO+A(5:DF?WF#.&G*'TZX^NNG M67#M/]]0C$$N@_5^-\_\RP_BAYO'V0^^=V !T'!I%@]5K(,:[N%.L]-=IEM8 M%M^+>?55EOO2HC;GR;XC^UL\_%'8L5HE&=DK*!9/%*Q#FJXU WG*"OD MZ]55KL)ZLTS_-9W\Z4H8G;J6BG*6<8E@A*G;8V?J]CC5ARH[)TR0,>A6FNY] M&MZ;9G2OP^K5ZLVF:8+Y'V&^Q=>XVED(7WJ=ZH_-Z^NKUJ_*XW-<5?D_7<[G M8;6^?/6E3XI][I,2WQIJ-R/Z:7*4F:J=0Y.B "]U J4P@OF]M=:W M/U-W=W_]>+LY6ZXJ/O(78EOOGOQ<(B]>/K_%(_H--?2*%9\0D.?4I!/KJH8V M- ^S5BE%E*UX>#L>'&=3=JVW]Q@3\N*")^'3<*;'F9B"LX*.6XCUMC-!:.%89DYD)KN:F"_6Z^UWRZWQD3:R:];C-2Z^.2[#M4;.0!=3>8G%0' N M L>@F 2[ZQW%/(*O M. N7*D?6Y6_G9(87_)B9U117SN*PB V$9N^R:9DT888$:3%:LL(HR!8;H I MZVW4TIG]CIOWMV6(3:<:KCQ>/]2% )HPAN7BN*ZH*(5VO##(LF10]6]PPNFF M%*RNVV"3 MM+1#C$?K@8V\/YH; $H5P4$'.3<,$U0@RJ[A>E-,SPI+1OI2S/ M\<8Y'B<4=SFX5&=9R*7:N,$J\#PD2)ZAMYA,D:UTT?A,=D?R0#F>N$V6@T%9 MM4_42PVJ*<3L @K%L&IG*QZH+D?&V<[_-$(?%%.8!"L;3?K M35CDV>+W>P]-JJD7QD= 6D;QIZ\J#! M"JU<<3X6T4HVX7$GHHO::(VL#D@;4*Q.+R]$M51X9-EA5J;L3<161M7R1'12 M3X6_KH?2$>%XX1K=1<)&PF_[Y=X$2RZ40PH78O>(H)SR.N)I+O?BNG MD_H1[[!>Y7N\>ZW="B"2)*%EPP#)) *4IN3HU;*=;6 M&9FH-AO%^!W!M_HDO)LUQ2!FBPE^2$T+C669?')AT9(Q:!VC)>,+9[^/,2=9 M0 47JS';]+IW-H(5,6+)ICC32C3?XYQGS=>&^>LPRR\6ERKXV4K25OM/S:?: M=)CI/.1)3KP:C"@'RJOZ5L-EU"!DE*!DT1!UD2!-,E$I(36V8N(>D5=JZO78 M>_]04,%1#-_'*6W/M_/F_'DR7ZZI!-JPM6JL2\=?CG/66YP2,6D%B,LB9H M3*$-P_SX-#13Z3JL8WQ:/"0/]=$-]673AKQJSGE]UQDNUK/W2,8[E>^D\IT/ MON1YG5)R#$JQC2_*YKI\\;J&:8["/(Y"BX:9OU2>? 2 M-Z_*V_"A[?6/FVE=P$=7.I0V#41AHO )4-A@8>CKG@.#!95]0U27@)ML>8Z2 ME_UTI8-.!!Z?;DU63]677)?[JL*TGKXPDY!LBI M=K^UR"+G=?%QD+,SH#R3$*-.X(M!45PT1K:R(]@=0%\JVK.=FK5U&BWUE$D* M$"<^C5N4 ^632#Z7HB0DK@6HE"IK"DK06GKOT0;M6XF>Z9!/8FK4=8ES8YK4 M1W7"C]>R;5IBU@>KY7S>)$;.&@[@>D,K!GE\R./S':L.9A$%Q@1)Z;J"Y+K^ MQ%W9#J^M*MX5YEL)E/EUMEBNZEKSXE)16UISU-3:#E>R&HF!A(#6V-@ M3E((@PE<;.+6'0\0J\D-.CG,050;VK12N:(S!KHNDS,'PT#R.1_1YTSN9EJ8 M:&&Z;P)HT@)#DF!M78Z4415#=6$!*955V1899>G&9?UBD>;;IN30Z^6JN:#' MF\UJ%K>;$.?X=OGEYKOEY4Q(/W5NZE8 M2)N#[A8X\4@T2IF7VXJ;AUSB[A8=]J?.UKKK;\1 5SLTSD5>'+#$FWHQK$#, MPH'AV5N%7CC32HO"7_[0Y,>+W-E1LO9NRN71'/M?39736LD(D@1)@N3=NF/Z M(HJMNX&*15!U8P#1!@XYAZR,J0C=[^-ZR);@2) TC$W%\8S]DX;DE;E?_VVV M8;L?[W#5HCX\\+K_4)Q;$?C5]]_XA7<=^4,-\ Y*V\)PWY[A9+'[#>DN/;?,%F&19LUY1-.RY;R^N^Y 5EAW(;N0H=]7]:EW M8;5IBDPVGQ/B\CU^]N)'7]W2/'L_2?.PKOKY+OR.L%AFO+JN>B>:IZ_N^1P_ M0)ZM<*>4/];[LCU?_)1GZW?S\/''YMF?WH7-_$XT M%[OS4.JU_ACF_QT^KG_ZX6^?A/CIE1%0&-=A=NX8T]>O7SZ[.6;9T\G M]:IU;.&PWRRM+O;F,9IVJ M8VA>#M726&XO^V3^=/$MG+%'[,]7;TA-Y[IW:_QQC=4*JJR]NAF[#=G%9__P MM9O\_6P]V^UO/OYX]?YK_-\77Z?L(Z_XGR]7WFM>P!_=^.P-S_E'GIL#WTO? MVNZWWG":XFZ,K+I.>^YZPG)K=M"5]EY#"'=\RM_/T?4]3KRV!M>U#Z_.A>:9 M?_G!_'#S,+_K$/O!I'Z(>?/M#>X*<7)>'Y^M)W6S5_>R5XV_#ILI=SFX[<-- M)-4AU;F?ZKR9?2#%.7AV]6@E/[Z&MCD-_S);3#9GR^TZ+/)ZNNME4V?..UQ= M1#],7&=((N0>CZVKO)A")*T?)..G*CCDC2$=(1TA%:1TA'2$=H M'7FX'6$[D?+]#EJ\3XT:K!,CS)&JP9]2R:?CAV0.--S2^NQEB@D*6@>J":*, MFDG0T3K$$%0QZ>MPRQ"T+E9E\"8)4(PC.)$=<&:0*YL9YKC?=>0]+K;X?+4\ M?U(_K+F(_S/;G#W9KNO 1&PE MD:RGHB22M42RK$HJ)@HPF#(HX2J?LO=@%5.<1:N5R%^3S'@F(CH'140+*EH+ MP9L,S'GE3.#!<]8CD@D_Y:[#6'(B&9&,2/;@)',N5'/*2\#29,4')<&E:FE9 MG@7JU%A=\FN21:F,<$*!5SY5.RXH<*H:9BI&(X*1]2G3'Y()(Z=.#ZM')I&, M2$8D^Y)DWGC)@C5@FSQG%2R#F%V!A$)BM@DQ[=7WL H+"Z* 39J#TL%!;+H" M"Q>TC$QHE:[I\/M@)%-\:M782=9YU;Y^X_$>>O-DN=[EM9$+DNI'M90N/J+Z M49E;P9 K2$D74)@%>&,,,%/A8F/P,>RU+CO$>]EHZ:ORK\MEWB6+X^K]+.'Z MS7*>6UI&G)LJJZDD%-G,A$/"X:$X5#H9Y8('%WD")71C.@L-26C4//B2$V_# M!=H]#OU4FO'U:B0<$@X)ARU:ASGR(B7XQ$VU]&P"+XV'9#!(GT4V;*^9X"%^ MU,YQR(V?&C(/B8?$0^+AX3SD4FMMT$!LK#P5)$)P+$/)U08T=4M MV"/PT$Z9)/NP!W&AG]MH'P-=3^OEL%/L8CROZZ6Z_7DW6I9?TTKTZ!/ M.^B,[_-5A6FIT 8+V39V,FNJ&C,=("3K7/2A_K?7G/ 0'^Q.P5[O]*NMGEQ^ MRI0=^=$=<6GLHAPJETK4-@L+.E2C546TX*3G8)R6#J-&KUIQAK;/I5UO)>(2 M<6GN(2<6G4 MHAPHEZ*.E2Y,0\Y6@C).02A%0G8.K1.E>+7?Q_( [V#[7+)J:CD;.9UR'"=/RQ\]5KBX.SRX4[G)56+>U^9Z*T1\I$:;&+LJ! M8DK;;)D0 ;B1U2A-!2'N_F+9"%&43<'>QUUX5$Q929@B3(U:E$/%%)-68]$@ M36XBF).&4*2'&)!'DWB69N]4XWM?/(&S^L3O MJPO/('D#1Z$\M#!\X0W,T63A-$1EJP7JT57[U6?(VG)N DO&[-6;."20\.?M M>K; ]?K)\CS.%CN%>_&'[OV&\[#!W!2E:&V=L&;DJP0Q:^RB'"BS$B]:.Z<@ M<:.::@860GT,*F=ND^)2V+TS[D,B"8_.+"DI+H>8-6Y1#I19I6Z\T116=\]H M&I]?$_TL/:CBG1 J%U_NY2=\,&890W86,6O\/$;*[6%6,0 MLD;002"Z&+7)K72&.3JSG*!@0@HF/$Q5GGW M-TE'F]687'I2B37X2BTAI:' M+UH@VA!]-42;R$%6C=+<+ \%P>10BC!"I18""3^IV]M/VG:_ Z4R^X 9_A^N MEHVDG>#BIY&O!02HL8MRH( 2VD3'5(&496YVS0Y"DAI\\$(D*-6I0#)10JH;7VLFZI4[KHC1>+PKIOKILMK#MN;O9VV-\= M/4@F5%]G-0%J,*(<**!D2%87=!!];L)#0H8@782@>= Q%E?V3:COCALD$ZJ/ M#C\*&;RXI[_A>K/:ILUVU10@)$_?*-2%5H$O FZ2TXU9"8Z5V&R*JYF:4@!A MM43EO,\^M!$D^(6J/3FKPVXO;)R/_=]L MI^O^66LCJZVZUT+TD'# ]NA$&VB"$XER%'"*U>;AIAH_1@I?S:!J"_G,0MT1 M6Q[0RY18*W%_'9I.6I/I1'0:MR@'2B=A8Y;:6= *&U==DN!<-4V\,RPK)13? M[W-T2(0?F4Y]\NQ1*-]E,O ZUGFY7$_FL\WL=TH";D=IJ'']*!O7!Y32- T\ M$;F&N@:$QM UD.M:HF5)66,+904O-?:73PK;=JTNT6'_D<%TK"<0$@@)A-_* M]&-6>UD,F&+KCA]-A9IR'HHWNDF?,47NV=3?7[BP91 >U:PF#A('B8-#YR"/ M0621.!C><%"&#(X9V80.E^?3WU][D0S"'JA&YU&6NRN>+7*]D(M//)"VEW>B&?7% MYWS^P9^VQ>+M#S'25DMSR?+=WA1*H"\ML,^ZJ##NR]B\UW(/O *7-3 M361A(48F(0O)B^/):;67/'1(5.:K"_5:_'ZA<[\LUVT9UWXJM!WY\1WA:>RB M'"B>N/=<2EV 9:9!>1G \8H:'Q0&CCQ*<:_LZ^[QY*:&4>,6PM.X13E0/+'H M#)>?4A@9G=X8F;J5?$)^+3N$4Y4#ZEXK"D MJ,$974VAX 1$+R)DEDH4)N;H]HY/#@G-[)!/:LK,V$/'*3KS4+5XM3G#U>0O MEP&9?YW,=O-S.EG@AA:"0>O,6!>"OUS=C&X#-5W=F(O@P9800+G(P 4I(;+D MQ9;(=;-U+/B@ M@$5;=^+4Z#AU'(NM9.53U!Y4R!I4,;8QUA@(P51$A2;BGL5VD*ORJ!:;F'(_ MK'979+,1"XF%W;*P6G!1R5RYYJ2K-&,:0JF6'>/.8RR^I%!:<8L>E85*#^L< MYQXDI$*5AX=$5FK@>G.5PT[K# 7J4Z#^ ZY57F94I@A0&.NZHX(%;Z4 EZPO M3"8G;2N]M:\4OUT'A9R*+@L_]33FGVQX8BNQM?]LE5:QA,(#)FM!F<3!,QL: M7W#,WJC$X]X^X!!?<%=LM9H16XFMQ%9B:^_8JF3@Z+V&6,U54$(7"-6.!8RB M&*>2DE:WX6_NAJUF:DR'247$5F(KL978>FCTE7*9%58@&<-!H6Q::51B,I^Y M1.L+RCVV'N*_[HJMG792&AY;.P__I8( 7Q8$B%@G,%X&"T\VX0.5/ZF?-UML M9XO?7WVJQ?'S3A,O7O>VT<-G'S:K4"DV6X35QQ<;/%^_7"Z:*UDMY_/=">O% MDM56VX*I%&///B',C5V4 \4<ZA9,>MCJDHW4IQ@?YC M3DV])K3(>8BD5<]SQIC6+@.AT)59!H44K10KZCSDW98XP M1Y@;MR@'BKD@O-.*%[#2O#)93#".FN:)O-N;]-ZF%.T[YBSTZ&% O>P MB&J_V7E_'^@F?* 88#KOH_.^ Y8B6QI70/3@T#)04C#P!@OPP+,JD6=M37O^ MT[K$7![0_8P+K-?75GR9'U_D+MG3!$("86L@;(J/H4\1(NH*0A8Y>"\3%%Z4 M3MS;DEKTL'8%0M^ETX! 2" D$ X=A)QIH564H&W*H$2H($2KH+(LFB",]KJE M:-@N0E!6G0!QMTZ/?Y8F)XKI:S8F!=*:"< M#=6D1@'H'*]/V!+BGH/A$$_KZ]6R7DZ+='/)6)2H,1Y4"I)*M9 M*H)ED+4WH&2UD]4(BJ-6Y0#I9**.@?G M"G#>;**S]Q"]]*!4M8-\L3I[U88/LG4JV2D3PRKR2E0B*A&5+JB4ZT8H-07M M6-"5,#*"M\Q 8$DPDPLO>2\Z_1!W8.M4,E-EQFXK493EP?ZZ+P* )[/+"&!" M/YTFT6G2 Y96T<&C*MR Y[8:O*@#!&0:1,I:QV22-7LE 0]Q*+[$S1^)!(\W MF]4L;C_K,W<,ZL"@IX8B^QMW?L==)+8;.%K$L 99.%Z"*'%%%9[Z(6WK?A M''XH]O(I$QTV=R7Z$GV)OD3?0],#K#9.BP2RZ$I?P34$6\&*T65MLT3!0QM. M\(>BK]7$7BKXVDPV4GX3!TFF^7DR;,GKR;/%N]GJ^7BO+XZS"=/EJMW MCVBQ'-1B>3 6;2JQ]'W!K)*S?2B3L,%[ZNOEU5V]O M;_!Z#YUY%E:+V>+W]>0=UCMW%E;XXVW3JS?#;G-5J;>P>>9??A _W#S.?E"R M@P65ADNS>*AB'=EP:18/4JPC&R[-XD&*=5##I8B28VU4?@[K62(O6#M;??%( M-'O]O-PV03DC]H-=?R/Z@:CV2P((X2U7#)P,N8GY8!!SDPR$Q:J8BF.BE3B1 M*Y_":UR]:3P*.]7]TB-6?\3\9A,VN'Y5'I_CJ@KJZ7(^#ZOU[BV?_&7L[82!F$G,)&8.GIDZR\B]B""9<*"<]!!XKB1D)ELNN-%B[\3U MD-B3AV2F)682,XF9Q,RV(I>E=SQK#X*Y2DK'&_XI#SJIS')*@5O;1I0*,;/O MS.R\]A^YE"]E\'0VW]:I3@L7+5RT M9;]79[8-I_*E\AYIZ3I:=[Z37KJ(FD1-HN:=RD)AX#Y4^&G=$!"MA.!# -2R M,&ND5]B)6_FXU"3',E&3J$G4;"V (5C+T',0G$M01I1J-\H$0A2FA;01A>S" ML7Q<:I*;A*A)U"1JMD5-H:7,#A%RR+[:F@S!,Z<@5PYF[BR3^V%?;;B6CTO- MHY6 /FEJ'AZO//9$R?^SNTN8)Z&.)OR.DSH)(ZXFRU)5Y_R\:MLN>W(]66XW MZTU8Y*H*E$HYGDR D24^T"P>J5A'-ER:Q8,4Z\B&2[-XD&(=U' I[H52*4_" MIW82&WUJAOR%"XPIK8KPD**7H%*VX(MR8+)#Y8I %_- QFYC-JYI-K)/CPZMPSW4]&ESW[(DYVX-1A1#I1; M'H6*L>(G<-$$!3L!43@/.0MO%+?UYU8R (_.+>?XU(@.&Y8,>;(3MP8CRH%R MR[EL6+ >I-'-/C$*"*Y($%P;G=&Q5%0;H1)'YY:6?,HT&SFWJ%H;I=;1XD&+ M1S>+AS6*L10X.(?5Z.5U&7&8/7C#.=8=NQ)L;[/>HI/Q4N7VUI#[+Q]F*IF8 M&M-A=ZHA3WR2[=C-V12T^Y MDE/KZ("$R#5N40Z47$D6D:*/X&+3W,GQNF&WN8 O*'AQR5F6.W0T=FES">FG M4G:80CODZ4[D&HPH!TJNPK/TC?VD']H_WGGU%^?UW>M) M5:))O>!9_;#?5_6I=V&U:?+&FL\)/WOQH^^_I=VO8EW-ESQ[/TGSL*Y@ M>5?9!(MEQJOWU.MJGKX:_1P_0)ZM<$>2'ZO0M^>+G_)L_6X>/O[8//O3NY ; M@'W6S7)V<3F7'OZ+7_Q]N][,RL>K;]F]%7"1?XK+#\T0FZR]3_F>'^Y(&GZB MLUI^P:UZNR__;F1S]NF$9">:BV./4.JU_ACF_QT^KG_ZX6^?A/CIE1 MV[AC3UZ]?/KLY9MG3R?UIS>O?GGQ]/';^N#-V_K/K\]>OKVZESVXU#>35\_K M5?[Z^K=G_U8O^<5_/)N\>%D?/SLBM>\'C)9OR%^VB[#-34[_7Q_\%O3-U#GE MX>U,UNM.H\-VL[PJB-!<2P/R>O'-RZ$NQ;CCU?OO^;D_>+KE'GD M.?_SY=)TS0MN?(X]4MRQ/_YW\ <]XHJNX2&NX88 #W=C"MG=JUOLFQ7W2<%T MQT?&?7,PS2TYF#H>[[_GV[P(ED MT\/R.&^X9;>4ESF=^4/*,0[E>#/[0*K11D1B6PM6/Q:H ^,+[SSM_C);3#9G MR^TZ+/+ZK[EH'^[60):SWE3;&*6.2-(1TA'2 M$5I'2$=(1V@=>;C]43L96W<)1*JWYR%.*.\1MEAXNOA#JJ>Q:M1I"UAD#!X&P8S=TYZG4"4%$$) M[2$6:Z%@0(Z8;&JG(E/K&)13[PF#[6/P@8Q#8B Q\*$8*%)A7FM5*99,96"I M/&/:0M:H R\Y1N;:2+IJG8%VRL31.KF.B(%D"A(&1XG!;'W(P(VO9IU) 4(T MJ>YNN;$YUK_,WH[XD RNUC%HILJ0*=AE1?H6HS-.S_GX:G.&J\E%AL$9+M:S M]WCIC)Q.%GB1^10^?+LW%G5[H.&>OC5!LWC*[9S2/#" M;NO[Y/.=[XO=QO=2;YYYZ8^19.B_Q(WK\K;\.'U M)VEV?[=ODZK)H*&7?V!JWK=]>?;G$+.7VT'NJ]<0K=S5WZ[7P2 M O=&SG+I1\?9 M^VG<@(QO8C&Q^-2-:2.=S#* X]4<5J5B/0IGP4:,QE18,]-*S=V>LOUNQK1@ MXPLT(6.: $X [Z#(.6=1%*;!"E,-8R)M\Q:@SVD;EKP'N(8$F/07NC9SU MK,-FC#WE[#$C64:=1O?DFAB6CB:7>"2:V967VZ;PWH@#"*^_$0,E>V3*HDH! MBBJ5YT9F""%98":A1BT3\[P-O_0U4+]"='TTWS95>Z]E]8C?.J]/B-YG'1%0BZITLVM4-6Z=%E5G#;=;:UE MD'/%JTBBPG8OQ^407V\_<6JF3APM4694."4#E8@Z3J)**VW3EA+$+GD:>810 M<@0168J:&<=1MN',[2=1[52:HSEL3YJHQV\?UX.V(]1 CAK(?<]\H09R#SNK MORST2@WDQM- #O^QG6T^'CCICM= KD>]XW:]['8-Y-[\V^/?GOW;JU^>/OOM MS?_\'TYP^]/DV?_WOU^\_;\]NMS)@S<\HY9VU//M#CW?A'W$#FXS=L-SYI'K MXF-O_DIU[*^TC[KXU'Y](Z_ST0U^E/:1O&^//'ODED-W*U1NF[BK8T/V>(GT M[0WO:)GT]^]RU@_)MUG2_\GR_'RYF+S9+--_/71I?]*8OFG,=]2>&(H^A'>S M39A/9HM_CJN__2_\D'"]GBS+O8M5T+RG>=_C>?\XI>WY=M[X2VBJTU3OFUP[ MFNJ3'>1W"22[G[XX?20](#WHFUS;U(.7RP5\=F1.TYVF>]_DVN9T?[ML[/H= MYM^I<\Y'7)]@^U&"/4]FE M'[GF7]_3]CO62N\M5QIR9!(4\PR<\QYXL2%+&T(4ZNO<\^)D$I4O4(P5H+!$ MB$T%TI@%#RH(5B+_.O?\PF__:KM9;\*B2>C[(GM\O7OV\[3Q%R^?WY(W+M74 MR2X2QX<]KPE/1UV;.BV=,2).<5-$_;^"G%@!E;*$6/\'J#(OND*AL+TB;@=Q MJ@G6OPQ?N# U'[ TAE2.^-:1/K0WUF/U;.RO9 EY72 O1I%]XJQ:92* BJ(B M#YUOVM3IG+W5*NP56F,"=7;1@RXB5N2A )>TFOI. MNLX1]@A[A+UC5#_;N__?N#/7]B;J'*M:(TLV9JBDK)9DR1Q<00O-+/JMA*UQEKR4O9#GP*#:.?2R4LR(Q('5#P$E"X=8 M*OE*<=S$^COK]VQ+B[X47S?JB%J"$C9#R-E"TLYSYIG(/C\T]&[I,.'(3TF$ MZYL8B7"=$"YX9H5.H%FLM,HE@I="@N8B2":<$&:OBWLQ66I>]\RN_@O*:5]_ M,M443)(QA]+%TN]S&"'M5'D^:L8=G,>[-V0IQX")CGOP:5NGL*A))T1(S6"TZ89_3/91@5]%8D*!)7\<@1M)7$C0=!I!D M285)T*3"?9?LB?MCC#8R^A3!V>Q :2$@2&6A-,&M!HWF>=_CS+65SFI0D2=0 MP21PK#0!M1:=LTG'F+[VQ[Q>+>OE-,FW+?E4^%0S\AH3KTBRO9(LF1PC$32I M,)DY$]QGHMBM-@ JOOL8W!(HP# MSJ6/LC0!F+ISDT,[2AZY M1!54I946$(M6(&14FMLD0]S+HFF=5F+*O!PUKZC"Q4%Z\.P#KM)L MC4T[Z'431C%9OFOFSJUEL_I\/V@!H 7@0'-5Y9)"21!Y1%!"2@B%1? &.0^R M\I;M>\ M9=\P/_ZCJ95^N_5QCW,\/NY-*D&-)-L[R9)=,A)!DPH/5;*DPB,1-*GP4"5+ M*CP209,*DW?@P/+;EJ/2/( O*=>=/E,0,6G():+5V4;+1!NGT^0=.)$C;,J: M;C[G-UQO5K.TP7QY@MU,QO5DMIO =!0T6'6AE>*;*T43/AE#X( NJ:8 NH$8 MT8%,197B"LSQ*N[W^$[2DFD\ U2C&.!%PHO.?9)U R M5Q/760M!QVKB2L5T9L&$3L&U,W%OYE8+]1X%08RV[B39'G'MY OH*EM95Z2 MP$.HW!0*8M 9O#+%57ARA;[KP(%[D&3"@]5LJ3"(Q$TJ3 Y(?KIA) H@F/" 5K+06$H$$I)8)376AH68\A= MQR=TZ808DM_V'DX(RK0_2&=VAZ*3&-:8JPZ?;-W__W"CFD\_T\O[1"D-: M+RA8@>!U:CLEVA*/1-"DPF1_'!@HR8O*V4H0HNX\E5LXAI)ME^2)=-D)((F%1ZJ9$F%1R)H4N&A2I94>"2")A4F M!\&A#@)O78D(0@D$I0I"+,H!R]8EH[,R>N^ HO6<>W(04-I][\ZSZUP\7S8? MU*3S%9[7%]+)T&#UYG17C=./M+(B<6*XHQ8O@V%=Y$AQ/"(X! M,S,)'?@&B2JK"%[;"$8GYV6.0;78P^,;<-S9[6U9Z 1&KL)B/;\H"?![F"WHK4YPU631[;" M,URL9^_QQ2(MS_'Y=-^KB A\O\F>^J8F; M5^5M^/!ZN=H]L=FL9G&["7&.;Y>O0_V834O.5:.'E!S0+[4A())DR:8A09,* M]U"R)V[3Y,2]CMR"CS:!\M* 0Q.KI6(5FI#67='Z1H+Y>+ MYL%J.9_/%K]/9@T\<+V9Y-GZ8JK6>;2FHZ@#U";6>82K3]?9#'*R7LYG>7(E MJ--0K$,$??O8>V*+],7HO.&&77"*R0%/%^("<8&X0%R@#2NA@E!!J"!4$"H( M%80*0@6A@E!!J"!4$"I.&!64NGES2>RDN-5&@35-I2@1+;C$&;CLHW=):\_E MUZ=ZQGHMBM-@ F.@;(K@A'' N?11%E?0[D4J_3I;+%>SS<<7EV<<3S&M,*SQ M^6IY_O3SXXZWRR]/1:[>\&_+>9T1;76 =JRK [N^,IN*3Q&\"=[#@C?C/@0F M(C", 91$#:'X HZARE+(F+"5O'N"]^G"FQ+X#U*XG\,\+!).?@VK=#:1?#H1 M3"@Z<[VW4HE'HM&JO-S&.8YN,;Q^]/U8#CM?KHHV1;BZ]&0439F8S"'(R)I] M@_6)N6*4^WJY\L&IJ".'9!R"0L4AHG(@G(R%8?W/V;TR,;O.!:^VF_4F+')= MAF[I:_#BY?/;"L*HJ>^LL#<+XT]$Q?9SQ6PTU:(U8&R1 MH%BJ5%1>54M>8>%61['?M?P@*C;%L\XN#/%G_]CNS/DTWS9\O#9 ^GI+OJT* M6\H338FF1%.B:;LTC:D"T*&&K%T"9:IY&0,W(),7E8I:QI2^IFE)B6L1"J!. M 91.=>.KLP:3M7 >E1?>]YJF0O.IL9*(2D0EHHZ,J"?OQ/9:%QTJL066:LLF M:R!$S&"CUY78+/.PYQ7(*BHC580DHP'EO $GG04I?? L*(?F^JXU1R3VW5HE MJJFSXS.%J:4B$9P(/AB"FV"CU+'"F]6_HDY-6W4%%GT()167U9X'(X6*=8,) M"O,-]3E"]):#3T;8S'F,PIP&P;F>&M%5FS)"."&<$-Y[A'.SC.D'[)HH&R57RV$J>IJ"' M\%H85_8",4/0NEB5P9LD0#&.X$1VP)E!KFQFF/?JP72P0?*RJQ#*TYC55*;E M(#UX]@%7:;;&R;+43UNF_YHLWU'7G&&K"BT WPYKLD7'B@7(DC<]VH(")X,! M*YUQRL7HW%[V:U;62*T21&88J!@51,4-1!FXDTK$G-2U84TOUNLMYJ?;51/, MA*O9,E\47MD]^>I"#:_T,]]2@H7=%F0_[M6!R#5:,?9D4T*^LI$(FE28C(\# M?666J\BT!V%]!(510$2)D$*13,?@$\9]7YDMHOX!77)%GS.$:1S0<7L M0Q#7%S+:-S[^(\RW>+OM0S!,@DPY<2]]U';O:.*0LVGR M#IS( 3:E3#>?\QLV[7/2!O/E^74S&=>3V6X"TU'08-6%5HIOKA1U5="(R8$L M1C=U-G2E?BD0?''2:.,P['6U:OT0^^+WSY>K-[AZ/TNXON<>WDBP<[I;2S4H(.LN[Q/?/@HD_ D"[S?L:#EJX![+==BI#H;5@B(43D9S^K4@D4UYXH(F?1V$&$E?2="T!QR%9$\\O";+ M)%6)#E(0OMEO67#9<8A:("^!1:WW&G:UGES>V,(_-Z;PD\\LX;::2)=-D)((F%1ZJ9$F%1R)H4N&A2I94>"2")A4F!\%A#H*H&0NH!'@M M6=WL>PE!I_I7YDDP5-;YO?R;UO/+R4% *>:].\*M<_%\V7Q0DUZ^PG?;53JK M%Y?2"=#@]6;TUTU3CZTR$O/T6@.D@<$E9D!SS*'K+3@W"C4 MN-<_Z."LT-\^Z?8U">VWYZ_?+07444H3L;&O\B0VGA ;%5:T113UAA0-RI8$ MCJ.#((WG7',EY-Z17MMLW)GM;56 (C"2]^%T1$RL/"%6,N:\DCZ 1&^;UM<) MO,H>&+<%G8\FA;W6UP>'/QR#E5/O/?&2>'DZ(NX7+^G A01-*DR2)14>O:!) MA8L@Q$CZ2H*F MK1Y)EE28!$TJ/'+)D@J/1-"DPN1P[:?#U<22;2H"BLB-\]0Y",9SR$4&$[C@ M7):O':[H'7,J.8C2)U"\OCMZ-.!=LJYD(X0M7SM<7VW.<-6DJ:WP#!?KV7M\ ML4C+=M^OB A\O\F>^K\?Y[]OUILD<>HF;5^5M^/!Z MN=H]L=FL9G&["7&.;Y>O0_V83=M]J)RF+ 1"\ F)N%\()BN*!$TJ?-*2)2OJ M1BO*.A>T- 8X2Q94X1)\:I(O%8LQHQ0VM')L3594;_3SF"?A5%B@^9R7RT7S M8+6+WR>S!E>XWDSR;'TQ>>N$HN/Q0_0GUGF$JT_7V0QRLE[.9WER):CA MKH"WC[TGUD]?S-P;;M@%IY@<\'0A+A 7B O$!=HB$RH(%80*0@6A@E!!J"!4 M$"H(%80*0@6AXH110>=\-]<0Y)GY(A2PDCRHZ#DXSQ-P85R26DEG]Z*E2@[1 M.,% %E= .?00O-.0HI#2E6+1^:_/^7Z=+9:KV>;CB\LSCJ>85AC6^'RU/'_Z M^7''V^67IR)7;_BWY;S.B+:Z.DO65;'!OC*;8J0(W@3O8<$[2B^<4!X04P3% MHH!@DP!>8HZA4IBK5H(T"-ZG"V\J4G"0POT+7=K#=AD>LJ=$OG MAA@F$/8'@W ^-/1,7VT]6"RJ$H#QT\TU!X-* 49O"E> C!9Y:-R5:SKVDJ]6XLP4X M*R)X(5#[%*W->\F_O:*IT'RJ35=%&8FH1%0B:E^)>O(^;)TU1IT"&)4M*&0" M@JD(3MR(S$6UA77\FM@V%RG8E&*\VLW10;+"A7E=*^?K&/$D82OXG?0^&W=4+IINMDXC97?@<-SDD&W%HI;;))H=X[@S3.,:$R M8!!8^>TM1(X(2126;% ^-E;Z*?";FZFR726!$\()X83PWB.\<\0RP;.-G(%. M)D*EK82(HEJ_*L6B"K/)N*\1Z[WTQ@H++C15T#P/3?G5M]_X=7<=]PB&MY/CIPEQ<:'-1?T8MIOEU=QMKJ6J77/IS[*AV\=D_?!UZ^7ZV MGL79O++@QZOW7Q=4N?LZ81\Q]>>??OC;-Y[G!SYG'KDN/O;FKU3'_DK[J(M/ M[=!':1_).[WSX"ITU['HKO'/7RV&%_R[CGZ=KGQ_F&L=V]S7#_?4 M-Q1U/C3/_,L/=4]\XT"_*[7E 25_5[?R?U^H1ZQ&ZC?OW9/E^7FUG7?6[&'3 MXRYI%?VX;Z0QWZLQXA:-Z8=<6]6'\&ZV"?/);/'/O!RN8#/7-(TW6FZ]TVN;4[WM\O&KM]A?I=$>GEV\T\T[\FW1CPAGGR+ M)[L/S9B6JUU/FA^K&N"J+ICXS7MVD:-.7*'YWS>Y'F?^/SZO:\6&YC_-_[[) M]3CS_UU83=Z'^98\"*0"O9/K<53@E^6:#"":_;V3*\U^FOTT^[N=_5>=+DD# M2 /Z)M?C:,!%/@#-?ZI/>[_ZM$\QX7G$U43R78U:03EB!Z2OG$9B2I=U^$\\ MI4LP8T3)V-01$*!T4!"-]2!4*S*;>$/<)>_R4[2NR= M?-T]#$9@+G6?ZS%4JY %""4F4,%KDTSQUUB2SJ N7%K@EC>U^CR"D\I!<<&J ME)%QDQ\:JW>LN^>GPKL!X97:,Q)GB;,]Y*QB0421.*#5NWZ)J9JB 2%I'M%; M[JI%^S5G(Q=9*)N:^M1-3Y?8U$2-!I %Z;!^4$H/OF._(V?MU/NNZIOV5PFI M%.D'!%("_!6&"B[J%5S@%\ MXV'TCEG'>;!8]MJ.-(7N ^,%Z"5N)K,Z-<^QF6*3S1G6/RO$R7E]R=EZ@HN,>?)K6*6SJU D24O, M8+7HA'U.]U""__D_G.""!$WZ.@8QDKZ2H.DP@"1+*DR")A7NNV1/W!\C;;:: M&PE"1@Z*RP)!*PL8I/<\,*WMGL?9)!YY3A*01=:\QX-7WD!A7,HB-7-I+YSA M]6I9+Z?)OFW)I\*GWH[;HT*\(LGV3K)D M%X@R%+ Q^U P&A/8UR9'8HP+'2UDY3VHY"0X[PR88*/(MD064NTV 2\S"%.: 5;"!BCR"K\P# M:UQQA:%0B7=.*S%5QH^:5U3BXB ]>/8!5VFVQLFRU$];IO^:+-\U<^?6NEE] MOA^T - "<-@"$+E57C(&/"L#BH7&VU67 LVS">AE87$OCY()G9)@&EQ6K"X MU;KU2D6PF7/6)%@&OV>N[B*67JS76\Q/MZLF3@E7LV6^J'RQ>_+5A1I>Z6>^ MI08&NV6!T%3]@L@U2C&.A%Q2\JAD2A ,5@H5$:!NL3DX8TM*,6C3^.D[(]=_ M-'66;P?7/8X B%^T&R?)C@EINC(+578@?1:@ JL;-14T!.F:]!A3=/9[QY52 M-IOTNANW3(%"+2&HX@!1Q21-5LGKOB"M7BA!C:!&DNV39.E,JF1) MA44SHC.2%P79: =*I@*>AP*1F6!9L58SV\99 M_<-Y!\9]9$,YY EH;+#J0BO%M_W(20@1 MLP/.G 3EC 4ON8(039 HK1=VSX_<^J'^Q>^?+U=O;-30 S)*4#U MV(F<0Y(LG5J,1-"DPD.5+*GP2 1-*CQ4R9(*CT30I,+D@NBG"R)++U!K"<7* MII]19A X]V!XRHI'4W^[Y[IM.S:A.Q?$D'RV]W!!4,6!@S1F=QPZB6&-N6K M^3ML@Q$CZ2H*F/> H)'OJX36112>% M!B4MUK^,A5CJ?JOX')FQ1ENY5^NM]>SRQA;^N3&%GWQF";>T47.,2F83U4BR MO9(L&28C$32I\% E2RH\$D&3"@]5LJ3"(Q$TJ3"Y!PZ,(@^\*),B2&$B**T, MQ-2CFY!RB_O&?'MV]78;&>7YS8_AYF"SK_.4!#8ITR MN/ITGG->AO,3-J_(V?'B] M7.V>V&Q6L[C=A#C'M\O7H7[,IB6ON36F(Z\Y@9? 2^ E&XU00:@@5)"-=DOV M0M%.R9#!>,M )>'!6Y<@1.&#=!(J*,H14J-O''9\MYO>_K9__8SC8?JX$_WS9\O-92 M?[E<-%^Z6L[G]24O&@'@NBW+7:KC6.Y$4Z(IT71$-!6:)VF8!JY]I:E*#EQR M$8S-CI<0O;1[Q1X"R[::I 92LKG:I59"$+)^A V\&JE!BE1Z35.AV=3;KJKU M$5&)J$34OA+UY$NH>HV)"X/@^*Z3E?(0G2X0@E(,,46KT]?$SNB\J#@'Y$*" M8K*^W'D$5IPOR!AZ;1Z:V'=LBV6G4K#1D?O(#6$(X81P0GAW""_:UC\.A$X> M5/(5X9H[T)(7D27+3(H]A&<3>,!2B>\2*.^KH1Y] INX#YB*S>KZ!H9]1+B0 MA'!"."%\M CO'+%N"S E M:U#,%8A"[1PP1C CT*#:"^Y33GFI/&A?7ZEB<> ]6A#2^"(E,ZGL.<%?KY;U MR=9,CE&(FA283(Y#C,Y9 XF9QO A>BJR6%T M-1]\AF)MEK884[S9R\[BP6F% 3B7U4S1U4QQ-M>'1:DBN%))[Y5?:-WD$)W5 M1J Y3;0:JF1/G%:.2:,X9@@A\B:7M(F+EPR,MBFC-C*9O8)^QC,1T3DH(MJZ M0;(6@C<9F//*-3&:GK,C;)"\[RJ$\C1F-=5I.4@/GGW 59JM<;(L]=.6Z;\F MRW?-W%G3.=5@5846@&\N "P$P2062**)JB^QFJO).@B6<>7JEZB\7TR 25T: M^S2;IC^ZUPHB5HL78]3:&5>?M'=L9G91>67WY*L+-;S2SWSO&BRBJTC0X4YZ M8M<@Q-B3;0EYRT8B:%)A,C\./*#+*.IV40 Z7_>2.0F(G&?PJJG[QH43;B^J MV@ECI48)6=7MJDI>0E1< B].%:N"$^'[>JG>:GW<8YO*NRH"1U.?H$:2);N$ M!$TJ/#[)D@J/1-"DPD.5+*GP2 1-*DS>@0,/)X0/W@<-TC(&*L2ZTT?GP4@4 MS$3'6&SE=)J\ R=RA$U)T\WG_(;KS6J6-I@O3[";R;B>S'83F(Z"!JLNM%)\ MN A:^2)<5MFG_:C+MH^Q+W[_?+EZ@ZOWLX3K>Q]A M<]E5[8WASG@"UR#$.!)P::.5EDVDN!4>%#H$YYULHL>C,B$;(;L$U\[$O9E; MAYNW7=67ITE/._:A2I8*!]_L$?"!^^!,0\H(BC=]3:U7P))E(6EGL\"NXP6Z MPJ7HK"''P^]O.Z_V2^0<.SGIN(($32I,DB45'KV@286'*EE2X9$(FE287!#] M=$$$9Q-GVD#0FC?-/U7]R4I('*T0DA?E]YK2MQV4T)T+8D@Y]?=P05!R_4$: MLSL'G<2PQEPUX/P=+M9AISH85@N*33@9S1G3@M3Y@H$%=7)*@DA-; )3"J+4 M&D)T@A619,Q[.6[MI]@W?__<*.:3S_3RE@ %=MMR024J"5VC%&-/=DFT'1Z) MH$F%R?HXS/K(I7!;,#:]=24HYQAXKTS=>G(K2K:".=EYAOWMQL<]HHRFTGFR M0XAK)-D^299,DY$(FE1XJ)(E%1Z)H$F%ARI94N&1")I4F!P$!S:LB+8$EQ%" M4DV3\F#!,9U!Q:2T=2::N-W(04)Y][TZSWZ["8CV_.,#^/8,5XW?X_/E"NOHGVQ7*URDCSMOU,4%/E[D MSWQ3C_/?M^O->1W*2]R\*F_#A]?+U>Z)S68UB]M-B'-\NWP=ZL=LVO*IRG%[ M5 F()-G>299LFI$(FE28;)K#;)KD4W#>+WR?_/WMOWMQ&VKN6U)T9+OQ/SER%6L,0C058 D^M._DP6 ! GN+(!84@ZSL12J M">=$D(:92%92 M.#FQ6O!H$2%,P&]T0CH7G"2)\T0)YUZLU'CZ:ST:-_7D[/W\C.-M]$VT;?RU M&9^\73[N^#*^?"JR^,'_'@^!(OJJ5BS,N@[LMA6S2U.E MX%O/<+O(73+A"K M 'D!MSD%&#>:*R0I54E(*[Q0?81D%/#>7? N"?R/8KA?[-".?*S^88TX,0H9[PGR M-C#L@V1@B5R55F!A*,RE1HXH,#6PZI(B#,@Z2Z2WECIK5JK%=,7H/TXG[<2. M DBA.TK5O__PZQT"A_&!8GHC,N<*A1R FZ> X1: X?T4C'\KJ-@[*NH(((:9 MS56U =<4CLARSI'G$E/I&8N,](**N8;6\4P/?_?/::?-^^$TX^.U\='7*_(] M:?",JX*F!4T+FA8T[3GQ5M 0L&#(9T634QR0%2S!^"U.TD1ATTKBK3,L.[L) M8DPR0&!+D!,$(Z%,4E89B^5VHRD5=,"Q+(A:$+4@ZH$AZL[[L'7$U@M&D;:. M(\Y JS4\892\MQPG%9GV5Q';4JF3X0Z%)"GB)!*D:7(($\*Q]DI%=WV+NPTB M=@M;!J_N3!P<"'-XR+WAP\@"X07""X2O#<*IDT(D0Y"G.B)N@T8Z@CX=L?1& M:.83#BLQ)((ZYBB#BP@HZI(9^ WE2&/,K:6:$TEW!,+5 !M2(+Q >('P0X7P MM4.LP8HJ%B)RFFK$0_*Y%6-"UEK.N,(B,;S2BC'HP#1SB"5A &*Y!2W9)Z0( M\8F(I#T-SPVQM\=Y#+"F!P>LQ:M1\+3@Z9KQ5"G)G=<*J<0"XG!7Y'"PR FE M+)7)N&O"GFU4D>"$HK08<<8TLLE2%)UFQA,3)5LIT+A5>$JI&A!>XA@>5\_H MYDBYZ\CQON%S5Q9R-J6;>(YL&IR7[_^G-_!CU]1_&K1VU*(V-G5Z(GH?YN2! M>O(W__X"#-R#7H@R^4.=?&&!0@4'/OG" H4*#GSRA04*%1SXY L+%"HX\,D7 M%BA4<."3+RQPX%2P\#?#?_,Y0/?R'HG]FM$HW&(B]_ N/+7B]D/XP\4ZB9VYULO8=.G)Z-7H6Y/A_;L9?[VU:D- M^1!NJ=1#/1O.O#;"[(/<2:1.9XNG=#]%<11>N?&//$6XP\OS(2O_ ME&7>34*_6-)U3G%!1MUI^#DX_7T9G/Y^@3)_][8]_GMZ)-%]GVVH&P]#'ROV MYN.'M^\^?'[WMH)7GS_^]O[MZR_PYO-UD:_/-,0O,**_OOOPY7/U\=?JS>O/ M_[OZ];>/__5Y@UC]-)CH>3E^FH[L-,##PL_/O@0;%5B=+G<>A# ;:@:7EW8Z M&2_B)?)8,K[!X//E""34> J2IOX1PZO9HPC&1_B/BQ_ +@[M:1M?MA%4 ^#1 MQ2ITD32S>[^X&KSPK6YK5P_KR=G+Q>^O"4:8/4ZR(R;5'^>(?7[9G''7U^36'8UX;L#+.PSX M!Y7&>[9=?XR@N&GE/M<_JA-X=]Q6H#B#T;.HJ/4X.KE/A;9M6,*>J&N+X.CY M V2?1H@_U2.PHV=>RO:LP5IPZBY'X^'A%,64%TA:HRPO7+(?7')G M%!??->3YF.XNNOK'M<96&X^]ME9KQ234^C6#@YM:X.5/A M6SVI8_NR3TQ:YSH\"R+=-WVGKXEOJNAZF6TAX;WG*3[;;#>8 MZ/M 7-E4'J]91Q:O5-(F:RE*FG'$,0<883XB9;W0UC#IR4I%<<>XI)IR9+CQ MB!/+D>8D(NZS>+]U(QA.+^-V[XZ6*@!INNH;/!L!+[^H@4%J0I2 M[2Y2X204]5$B&7E"7"6*=(@ 5\G29*7TQKFK2*5X3!B^1LH+@KBP&CF%":+: M"N8P%=ROU*7M':GD@$M\V$CU+*Z<%5UWS]7:UR''VLTB("?CJHGPE:^'L1J= MZ[OY\_PN1R-5I\WX6YV/$]U9]=,T1U;6HY^+PZA8VV6VA83W>5/W:;:;=!C1 M/AQ&= R,/ KHT%2X989#1BB,>.4'&:WA+ ((L]\PGVX^ M/T/];01+-(0!ADR/L+JCRD^;)H[\6?75UJ/JI^&XO3LXN(B6K9EM$2V]ML_# M&"0!PX@99A#7-B'#!$4Q)4ZM>]+8T?M;"!_ 2[,QQ<7 MG-IWOPZYEF8=^\\ !5+/ /+[GT5IPTJ3H3. 4.8X5()W%R KG MD3*)Z'=LBS':&[0Y,F*T[SA%'+TW$*#'F0-Q@AC2V#BD0 M)P$WKT5<8';QJZ]#%5XQ'KQL015]G MY6'>'.>7[T>O3P ,)Q_3#3_Y;<[(9^1QDJJKB('^%9MQ)B--"7VU3X*JZ/$% M^@KTK4 ?#SP0;0-@G6.(6YP QE)"U%C#/6?:8-V'IKW5T+?:R6DM/:-WB&6* MMWP#NGFV,2O@Q!8H-%>@/&UR?.7DK(LBB?^9"8IHVF,^*Z+I9M'D(R4X MRHA4U+D?H"/(\ER2E# M)!,LDA71]!BM?.'J^3CZ#(SX,7V:L^&GH1U-WBW8 ML/>VUO3 14S!L,/>R(/ ,(>E"3@91 B6B,O$D*;*H)2X"$0&C:GI0[U^'@Q3 MZ^AUND.47SS8&XFO=I,JU*W/)F )KCX4WBI2Y6:I0ARCE"F+O 'AP(T3R":O MD"68:P(DYN%B=66:.HE,@H'W*&(4>."(9D2LQ+GJ@- M*ZZ5QRC!'0/^DOGOS1+[]21#V$!S==A2I(#586_D08"5C,XH102*7H$>:[U! MQAJ**"8*K'G%F&=]Z+YK!2LR,/+ P:IX?#>@\OYB Y"EFRQ4W.JG7*X*)EW' MDCNXU^Q51,@M:>F2A.0E1EQ*A3AU AD3+,@$1Q)G@2FYDI;^R&*LN9L=/'_< MO!U/W21-AZ]]YS_IJ^@A/70Q4@#KL#=R.P!KIU,$70@RT"01*,.@'3L=D8V* M(LF)=QQ+&_%**O4C*[[V (?WBZ>@)36P>)8WIF:_'WV#%^/FK&IB&YMOL;B4 M=X['#DQBK=NE+#0--H!B30FHV P$BPY:(>*9Q$JGX.E*%?&'J-@>S-B7YVSW M^XSKWLV8[IR(- M+>*T41P45*X4X [Q"3D3/3)>&NLBITGVDD&W+M0J976VH=W7SG=N[PJAM%4N M&''1@ZMMXZ3MJD4L57$;=$V\QJFR_I_3NJTSA94F7;=.\[Y N@L]?PZKPU$A MX8/GJO@'YN3BQSXTO8_W-NF$YY=QG)7.G+:J=CLLA)BEG64 D>H$X MCQ9I#W^"\,Q[[X)*O=12!1L-4*^-;^/LO^]'"Q[__9S%^XI[5P-JQ#Y9;4\( MS2D0N94[6B!R=R R"<B%P]6HW\S;N>^K]A.@ @G,70]#>K1U\Y-%G_XV+;9#^;JX;#[%!APFCV[ MN=5>ETT_FF1"+7T/=H42 EMHL6."/FD M)KU=_-";.9O]5STY?C-M8>*Q>9T]UZOB*?/T^]&[CG,_IE]F?/MQ]+<+IEW< MK/=JK'@@22E"52#O@#?R(""/4:HB%8!' M3.X$Y)F!*%T.BNM]8VE&I<'8?C/33DN=G?8GR:"8(D:".),,<182,C3FP$Z1 M%&&4>"G7XW)?XNW>.M63_4H%**[V HT%&I\+&CT72KI 4-!1@,X/^KO!F(+J MCK5EDFEOM@EHY -<7.S%Q;XYS?U3$T]M'<[+<&5G^SB'25>^:Y@]F4>@ M%MFU,RQ79-?NR"X7>8I*,.2-SW+(":2Q#(C*)(W51%"U)K5^SOAO8XK YV&> M"/%Z%+HDB%(2.:T]B*?(8Q0J@&700T&RJZ)LP>YO9MR^%AG& MR5Y5;RA:?\')@I//A9.:*.\=Q0B 2R!N%$"D- 80DVBE,8O)K]1&?T0AM.? M28;W*DBG^/RW6],_3Y0]M6R5L@(B1&C M7D=-<)1JI;Y\OWFLGV8<"%(%/FFF,?QV4>2E+^\[&ZC]\B25L/>"9@7-K@E[ M9X:)R)!7&9DTEQ,44 MY_<^?Z M:5RW.="\9[7V@33ER*^XLC>FIO^RJ/MRJ1J,OZUN3*D04T3A;HG"-0LK&P-7 MDG'$.,&(,T&1QCH@B9.U,BE/\).:3M]8+F$AB,Y6Q=BDP'&M/O,9-W[)S#@_D^WK^%4?MBPI\'78&WD0\$4 <$Q2&JF0).)& M>F0=\X@">L4D/-'L29'6SPA?>*^*JVRP,5_1A>_/5=UQRW*[OB))'LE2#J@L M-N=#/1*GDZH=#^M0+39F%YCND5M]]^2W0QKM]$EM\ X+I2EBCAG$52Z/;IE% M+AF!K<:*T)6@R7Y4]8T=RLJ!D6I]8N\6,ITY4C#;K8/;@LP%F0LR/SLR4R6I ME\KFH)F<[RD9L@3^I.S$Q]2XQ-=DA6P,F=F T#4&&^X=,F_2DT_[L%[H#EHO M'^*D\K8]KDZ;\;JV1B MTD@Q##:$20E9;PPRE#/"B#*$]I*$"GS]!MCZTYRK?SG[6YL];>=R[O4Y._?D M;%,#;=;H;MM.Z5:.% I0'BI0[K2YD:SEG'F'=$PVYSEY9+MX2*=54($$;)[4 M-&J=,'Q//Q Y.#1^CO#]ZTCQO@;(':;%UML.F;*K-!Q_;ZO4C$_ 8/B6(_ O M&0LO[Z*Y?91WL*;YFW]_05_1^'L=/#93EMYS' ,,VCI-L8/:K&&:I4+'=ZO[Y<7H3?:R_Q5#]E%L(_9S)M+)+MD"19.5L:'_/ MAM8LKY3@+ 6MD<8AMP3C&#E&,4I41BI$"-[TJM?_.FY 4OD80_MK,SYYW_FY MNV_Z/K7A=(T%E;;SU*:

    JC9$)BCGU>#Y@IGJ 94'F$@:\T3#@5(_LR)WI+C@P(^CWQ?\]QOP MW1LFLB9:?/.[!6"BM+$,8F MUSPA!&F05,@X'JAR$9.>LN&6@K0NV/UCRF*K?;CP++XOY]'[4_5 M<#SZB@"63H!Z72E^L3ML5B38[D@P0DG0--CLFC*()^F0(0XCJQG#1$2?DNQ# MW;\DM8"QOP!?OP6V[LDS)0;$[%4;NJ+7%U0LJ/AL)8$L]P)KB:*4@&LB)=#1 M/4OV94) ,IUIBIME.H6/SV&U#@/RUY[6 &<8)4=F!SPQ#G$=0ZYG7B/#@B:&%8Q$@8 M)0 D@T.6>(F(XP(+%43@*T>=#X[->1:0+%[[XK7?F-+_-J;8-#&G@8S:.G0] M2X#'3N&N00[=U[UWB*:#*0JA]8%3;=X1P\,3=>,=XZKR'@"V#*! M(\ZD 2V;!&2T(D(SYR)]NAM^:_ NU3]B0/^*S3C3BZ:$OMHGL"N59;92=5\D MD,QJK\63T^'X+$:X\=C_HSJ=-O[8MK$Z'<+#NI:3/V+C:_ADG.;7C$^+_W[? M.;$(J9N%%-71!APT(MXE4+ %J-I>*01,Y3W3PG+#^TZ+?=^VTWQB_#%]/K9- M;/\&<-.\'^5%KK_%UZ/0??P+<&YX,SXYC:-VYF\"+F[ALN$T@+SZG-GWXVF? M;B=.]BH(IU2N*8A7$&_581Z3E%P1%+UBB"N>D-76H A@ISDHV%S9OG-;MQ7Q MR( (>=B85SSL&U#3/XQ'^4TS'@YSE'R=L26VDRK4[:2IW;3HX/O.9CLMD7;: M[1ZCX"+JA RH^H@;II$-(2#A@J,F!,YLSVW@_UJ/QDT].>N$VO%X"+*N1X&% MQ3X)K.)$+]A8L/&YL#'PR"CQ 1F" >=TSH>UV"$A B?8Q!3Y2I6 I[5^7R,V M"E.:O1?7^\9T>C!43\:CN1N]B0MG>RBBZI$L5GI^E9Y?ZQ5W7%NMLU*SZ\G=H[__1P8\KET1HS.C=5;>1R\SDIN>]?AJ^!P MP>']P.%U(Z4P+ BP!(*W&/$4&7+8)82E<%I*+['LN[M[KTBYT6B<[83)[3X* M* W=?YIW=/^Y.IWW!JW7Z43-@*^S:O%V0N;V90@\QKS8>OOA74K1 M3W( ?_P!UO+H:ZP:.XG5['57H3.;%X.9D1'_.:V_ 0GGVITY 2!''36UG^2J M/O!]D5]%?NVO_-IIRP(S(I,-##D3*=@&*B ;J4 4&QRB$9&FV(=E,<.3C^G= M'$U^!S#Y.,H",___W05^_'X.'?F+UZ-P^8.E*WMO6#/ ?(U'^]LI3HL%4A#\ MX!%\S1@KL+%).#@U:M^]D M9"\ME7S2\1-06I,+X_Y8(YX,S26R M.8K"N<@C9;2?2*@GR;A/L:G'X?T<-][.D>0\'W!9FLXD;.]G'WH@&"]!Q05U MMW='#PQUUXR+R2AA?+)(1Z(1]RJ!10! )ZC&*;HD ^XE[FE;A%'Q(3TO!?Q+4P\$H29#S#6$>F72*]BK1SX?6V M;D_'K1W^!5#T%'X![_/0ZM$TAH^G\TI^O64,B@'GY:"^U$4J6%NPMI=\:@!5 M V8 LE(SP$TP"K35"B5N@A4B:,SRCQ[N?@_+>UB;[K MU^$@A)_11E"I-1)1*<1II$@K"D:#--SQ0*QF*Q%+*A$3M&((1VL0%TH@0Q5& MC(@ L":=)OWZSIY'^#$Y,&2-!PFWTN!.B;\"O05Z"_0^.%A4R("ITDAI;Q&W MG"%+;82W,M W,_YRK$%MU%%@A.*,J=XL^P72I:BZ#0SGI@HF=@#Z.5Z(,0: M^\[L#_0^^FSC.OJ]KSFR#Y;'K"5RF#;YT&)R'.>61:;+EW?1V3Z*,UC._,V_ MOZ O;I]F?UZCOI;F6O!>@ZA_O _CL%:D,$)AA -@A%*$?0.B^OV\ZGHQ.XO9 M6(.X&1HSPACHGG26(I9"\YB@O.S1VW/\2^PMGD0*CB MDRL^N0*.!1S7$7>5"(V!"L2\ WA+UB!C/( C]589ABV)H8]0XO6 HQ@PO;'* MLKL,CJ76^D94=S\^B=7$_BC5$(N$*A*JI_1WJBCSW"!,&$@HSB32$=X290RC MSKG@5TZ-'J>^9^[]DIFW7R'%!AIO+'M]EX54P<>"CP4?'UST/? ME6??^KC[SOJ>DZ-W/>_FZ5U P@/U_QZF^^4X5J/Q!*Z=C+O#>/@*S)Q<:QU> M=8=(-@<#SPNMVR$,#SXXF04,-[&" >?^K%\;^.K4-EVIQ7P?Z\;?XM+%1P]? MTMVEEU!_J_S0MH ZI_9K1*-QB(O?P+CRUXO9#^,/%.HF=F#S$C9]>C)Z%>KV M=&C/7N9O7YW:D,. EH[WZMEPYG;S[(/_F;:3.ITMGM+]%,51 -CYD:<(=WAY MCD _[BE_R(Y2M;R$6K#<\[]Y;X[/_0[=ULR\"3;!6%_:X7=[UKYZ\>?S33R_ MO_Y/6>;=)/2+)5WG%!]-1MT]0+:/9P%R+Z>YB?JP'L4^%N/-NS_U:]^?C[IZ/J]8>WU>>__?+Y_=OWKW]__^[S!E%O ML5*=.M9A^M^7(?SOYQ#^]PM4WK)E_7!=;9_G'M3'+]LXJG>?JR\?@>@^O'WW MX?.[M_G5YX^_O7_[^@N\^?7]A]&KX^1J)??V"W/:<2JDU14%(E7MH!Z1%R*D=6)JH$B5J MY2SC,9ZBC\U7.ZK_U2W4FW-6AS>O1^%3$UN8=/?V8_IUP?N?SUD_AQ$/Q^VT MB5]@%+\,N^91$0RGT^Q&;Z9Q678M.\ 1/U+<_/%<+^G%7B M*CT]TD/>/?#[3$Z[\3#T043DZ ^_V+9NLZ;[>SP=@ZTW^IHMR^K-LL9\ON35 MQ9HO2\]K3QNV>1F?;FA8#Y8[//DL+]@Y*S[(Y( UG\G>T;>Z&8_RAW#!FW%S M>M3E+]9P33MU;1UJV]0PLI^R,9)[FE'\ZLWLZ8/N+7EU_C'<\.IGW^/53Z;M M^2>PU?,/Q]-F_N'/U;$%@\?%.*I@W< 4@BF<3IMV:D>3A7'53(=QD6?Y=3J< M1>XO+*;/T4^;KK%"=\6B+E&5N[O5;9L=++11]6;V$QLG4VQF8W#)<'B6:TP.IZ%KJW7]:I]/!"[(F]<$N"96W^O) M6Y?XR@VWO_YTS6)>4 #%B&RH9LF'67#;H[U6VW9.,1+!'\;K87,&;8^RX@_M(/ M1M''MK7-69[GZ0S1JV3K!GZ;K4'2D'H*5)#50SWXW%PV#E7*SB MC]/8934OGI:FL#MGT3:SH3D[[$B[/8YQ,E_$MW#_$Q>;BI'NR0RHLIT1):P- M/ KNUHQ/9E1T039W$,LRTRU1S7REV^KU:#2%7\PD2^Y/\2N02$4P^C_G8\_# MGJ_,ZAAAB*D>PE<=EW; \NY-OL]?;>./*S%?Q&4H.7_".: ?MA%^U)1MF.'N'Z.$_3'];6U<,+87$![_G"67K8U_SDFWXS M>THFTP6_7._A.T>.U>$T\5L<3><#R/P%:-DNY_4TY\K1+,,'K&,_F79H-V-- M$"##/':8=K-@I8SEY\MTX'38WK(KE\36S(/;'G?KZ?+*VS GT/^9CF:'-.=P ML("J6S=\[A,^CDT$XKV*6>> <<@;]+<1:!S "7F1OM==I>Y.!L4PZ$3_7*2T MW;>,XVD+JPWR-_[(FE)FDIGL73#9I<7]\R5#<\GYUJOEJGDP MVFB+LEQ G"N''#4*82HQB\X2(V@_#1J_OS[7'S^!(@\O_8P$P79],VO.]'ZT M?,U"Q2S6ZH.HE![](5]T88U>K&EU>>$?Z>7J88S5,J'W2L]&2"Y(-"A8:1"0 MLT;&FH0L-=+G?D$T].*)N86>/X$ZZ,]F?^]!N[N"G3V3Z1)5@H4X"K8)H J' M\<*"_+7.1_K54VBT;\8"+?J I=^'\2C>+:#ZY6;&HM%*8T05 /+?<3(GR'LS\[(@VF92V 0SS^SP^0H^G7$V M'6O=P[*\'UV8Z]E4G_F?KI7,%\OVRQC^,[/67_SZ^O,O+WZN:K ; 16OO?QO MIYU-]].+UY__!I?FQR!L!M4\)+R+FJI^^C(^!:92'/_\LGI_9+YL?:#=0 K]=Q[62_%L7=5(V:^&I@:K$$5.VLY>WRR7R3-!$1VC;1+ M1;&[@_V+92=S]\?L1@N''=PLN]]@S##2^,T.IW:R,&)KN&1ND]M,NW.70'[? MSE<=%'Q0]SN/Y?AZG\Z=7J&C+5&^KD4N>22EVA@O;BY^X9" YT-F\2O VAR MCB7 4C.L4(/J<_S:>:TN#K?F@$'U=8 QNRP;M^>_O!4XVOE%]T"-5;C(G6CJ M!&8VW&!QHX7OJ2]T@/69H0]\69_,G5>[#"HWJV>;\2H($;&D/J! J42<.C# M$J;($2UIBCJEU38AC['"?AO;4=;48ONEL2&^'H6/V3GS.VQ4_:WSOI1#[T=" M"#O:)MOK#W/=IZTN]K;ZP]J\"%':E%P :T-(AGBD 6F6 DI$$R#'**CKI?W7 M9W\F2Z>JHW/SJ.X?RX9CPSEXAY+%UY*IN@>*]D1RQKG+!#WAHO(D>!W77+7]T#[2N&+?W?^ M8.O'=)Y??64+YK'*NM_*A$\H2J:W0*M>EDHWA@PNG]5AK^3 Q?36 M4YYM,?(U+L[3,A'N0R27$/SQ-/+ .F[/MG1]4U9AG$-EG!5%IS#/ ZCK#F'? M*:2/*X9X5=-X4A>4Y_:@/< 6N _Y/;DBP.;=IT_'YB>V)=T@"3PLY__Q>[L= M.?V]9_$S0HB(RB+A-$%<=K7QG4&"4&5PM)(2W4=;D@7S7?@R_M*,V_;-S&7: M5PM>Q@9"R/OE].\0Q??+SP7$MF#*!<1Z!#$-8"6%CR@0[!!GA")KN4?"IDBQ MT5Q(W$<3U\V &#$#8E@!L2?HO/>I(G@0.N^G9IR]L< I^5C4-S'4DVHXS@>S M16P\E8D>V]-V"]ELSQO;/H&#?GKD0='#))@2(D7A0?S$7 [7,H^L(AP1YFPP M3FME5LOA/D8-SZ=(.4WAUW'S=CQUDS0=KDJU?@5:;FU[SQ93:^#$.RIM;8&2 M=Z]3AH+$!8D+$F\ B87PTCLL$%91(TXT('%2%H6D? A2",%6@C\>94L\"Q)S M><^RY06)G\7SOMEZYMMJM7P9YRH?=M5?GTLD7-^AJ(C+C=3RW0(F[=LGMCL% M??OO4,1H5#FC*A #5D? !CEE ;^$RM5]%15R3<[_#W'2L]>,RH&Y;\.BM?#- M?!]OG"/:+?*KY!Z=-/6YFQ:UF M.5>#7/+M/^UHFBN@D45NUO?8Q&>,UO^WZQ[]@/OVCD$RRF1IU"A)(1%GF"!K ME$36:L.\-M1C>Q6#J&/"L/<)&^FE)[87#)*7,$C<@4&: M'=WN\JQOJO'GB('Y127"2\>ZB6%B7\+LH07JIL/#\F=7G7*JRG1<+@\\GX\J> MPFU_=+7SAF<[+",?(!4O3^@F&8DET9Q&ACQV'G%!'=(L$D0$*-R2.^XH?XIC MHZL<\V:^B1<"\O?%=I.>!"0[,MLD'Y_OT7/)W&5+[BZ=]ZX+<@7&)?46">'! M'J44;$MN.,*":TR"\D&MZ((/L4CHK0#$\ M.ZK.%VC)'FIS88<+X*]SW?#QUUPDHZL1>5%).^?,SHH7SX6#G1E)N1KP]W%7 M[CS^6??%PB17B*2BLLRK8U:0^F9N YR6:Y_.]JG@?F&KQ M>EYI=[;PG7C_*>_?M]C,"T__/+>:;XSHJ[X#P19T7$+'(**D GDI >F$",@Q MZP#SX+5A6.+5W 9KA4B*!P16,44=/MRF_=IO2$D/A(;25"/J\\OC8DY#E)3EE%,",)49> T&@F))T"\M9X*[!+ MAJ\4U)4&4Q>U1HDZA;A3"EDC \+:<"TML8;@-9%<+J\$K^ZDO6WRTOR\!61_ MN8?!/1HB7%80!L_--]O&-M0K$0&0$?"(1)R+B(QCH,<:HUGR6BJZHL<^IN+. M9I#ZYD.5+43JY]SV$"@15FI 2V81#Q8C+7V +:1&8F.=4:R/%L)];+N\M.VH MC3YO?0[E:N/HQ7_\*S;C;=KV!4+=LV'+\XWTBNFT^1KXGA*5I#&(F7PVXH) MH 0J1"1A#!,E%.D%>RZJ??T^ZU@T;LY>=S;5ZU'X[:)91ZE4]R#ZX4?55I6J M6WA+JM<7K5B6=G>-9>NDTC89'5&D.&0C)R++#$=!4]IZY%31]#"$O9OA? M]>3XS=SAW4UVB8[/OI1R=8^@GG/BN:F/3RE=MUVEZX0Y4H;>629.ZJ>6B9-' MG+(GEZM[CG&4$G6/E$:E1%VIM%5*U)42=85Q2HFZ76&>4J+N25'G;\;M7.M? M],2$5[;)4;/=B7%N'=AV-D .0.H^'8^JZ6A^^#MK2#L[8"Y)'SM8(Z=4A>K1 MN^P=$XHP@IC4$G%K%3*82A2$=88%$Y1.?62WW>@/Z3UG0X@!4[I4ABI MNU; M6H"L1R"+*4IO5$0AV!S'0CER3%$DC2:":BGC:E#!8[+.-@=D4@[$NI-U=P;( M2HF[)_',+PM-^))^[&_3I(O.O$>B9J/:PYY*&$(%HT)PY*WPB$<3D!9)(,U# MC-0D[KE;EZI\?F38LZYL!EK<'+=6J+T V)9,N0!8#Y5L7/1:Y#)M.)>QC\ED M6Q^CY$RP.CGE_=I4Y'4!F!QH&*'-U<>7,+P\)W@_!Z3QQW)!+/6$#.LBO'OK M$0_,K:5;F3IV-64V]U(_3V9=CGE<3F+-S= I?O7:^R:WL5]T@N\^)J\N.J?? M)RUUQS&W?]+G-$3%.2**)J!_$Y!S3"&CE"36<>)7BT%&(@FE@@#I:XVX=!19 M[P0RAL2(/0]2KF1+SC=O*29Z3N^O1^'#>.1[)7ZSE8GE@T)W2QW(M-6" <:J MI $^E6+()4D1M5%[Y[04;J56!Y- J9:"U19ERNT2-#) G\@;[".H#AK3^*QT MI[:K<$>1]M=#GHL\P#\DM< >2XB YHE\H1Y[!DV29*KI,>EFLR9^O* MR)&C(/P5)D"_G$5MKROGN#G2 ^MO*TEOFU(7!M?D+63>6#$:+^LHK^^LM_2< M1I/5AJ3(*,)!1<2S+UY+2Y&,AD>J76#R2?D_EXK!+-'R[_#YUQ',.;R&U]_B M:!HOD?+IM(GGM(SH,C'3NV!TFVRF/SXC%\U='6_&)_#LLS^UUZO*,QY;)>U. MU6W.MRE?U\PVJII7C:Y,ML_O8%[N:;^TZ"UHQ:U M,/QT?R=?[QFOV(/\TIZAI!.(/:PLR@YRQ$-*@:7@%%YI1OSCZPV(1Z\L=^_HE"-""D@!;SU$,.C67+)=?D,AA;ISQ M1-JXJY)'@3TW)Y$=2 M/STU]#G&45)#'RE:2FIHR7 KJ:$E-;0P3DD-W17F*:FA3XI[^]U^K[+CL:GM ML 2J[V+D6\F)ZM'9G; .07B. #(LXLSFZ'.6D&-,<1>DXF0E0N@Q$>OGC@K@ MO[\NV*^G"$^J!EJ6",\"75N_I06Z^BQVZWS"3G$DI'2(>\)RU5.'/ V,66>L M<"N!-H^)55\K=(D!@&6!KB=HMB6!<[ZX_S5N_C%OAY&CJ(N .!C&*7+A4M [ MM31)&9"@-"!N(D8N4(PPQ1$3ZA65O=0K.9<+F?'>CS[-V*ZWMK(#Q6Z.N2ST M72!K2Z9<(*N'$DO,8BD-12K2B+@%?5;CZ% 4FMM(?=!A)7#@2:KL.B#+#!2Y M.<[LL,B[.&F?Q"6_UJ.Z/8ZA^CH>AZ+)'@[?%+%P*:5#@B2@/"(O1$(<=%0$ MVJQ&/,9DHS3$AB>U7UT1"PN^^TMFN[Y<' .#;XZD+^1=$&M+IEP0Z^F(Y;SG M.B?MVH@5RN&PR.241DR$U5R%1/%*)M"3%-GU(!:3I3IH\QA98 MW,?*YB#=G#I=Q,-3^>?NH*F=X;!';OJ#PL9V4\1)+3[ ;,V%^NX3;O?L M 'UGP]L"NP5V"^P^,^QZ[P)-G" O.0/8]0"A*66_MQ8D4!:5EKU:"NN"73: M(1?8?3CL;LQ'OIS9V-WU,;;&E-WC)%*%!$XT2I1+D M&(W(2IZ0T#1)&D'VT7Y-C@^QKVJZ3 ^X6K,[_U;*>$Z!5YS^!1\+/JX?'TG$ M3GM!4"2YE)WU&EG,0\9'9YTQ2>J5<\\GV08]XB,?8+WF@.X]P\>UUR3?V;HD MKT_ \IFTE6]BJ'.YC\FX*_=Q?I"0:;$:=V<,DWBNVY]U94/\,=?;.[10Q[!YT0A+'6 ^AXKA%/SB(G 7FH$Q%;@V5<=4A8*T12 M@$Q&>HHX)A%IT.P0@:L)5P''L%*W]2(&KX$QOQU_'_54L!!O98W6':^5V3N9 M*6:)55HB+3'H_@'G%D%2(DQI) IKIMF*[B\-IB[J;"_D6IE.J5S&/2"0-%Q+ MN)\A>(-D=G/#N6]5IS07;?1#V\+^G-JO$8W&(2YN^>)R3<=A_(%"W<1N8W+! MN>G)Z%6HV].A/7N9OSVO<7AQNE+/1CL_AYA]\#_3=E*GL\53NI\B6%$PQG[D M%:)CT6*;G:7NF+^U29YF=[\WQ^3E.MS6SPQF;8*PO[?"[ M/6OGA>N6=VFQ!9U!>OWZ/V69=[0GU25R?SA4WU"CU&$/5@[N8LISK?:4D$G2 M(FX=928F9=*3JELO #<'9'X','H]"N]'$SOZ6H-=W_4$:DL9VT?2B#SZPV)9 M.^2^6-AJMK+/*'C65E17LN08B4"F)!.L$0+I&#'R/,7$B,4^]D*PRT5U+],K MD/!BV9]07WF_;]$""Q_UER98%(&'4N:Y M:?7GZDMC0\RV:@&Q4D[]%E(I@%4$?^&9^_%,#YA:F.;VLA9[,^'"1D7T%-%3 M>*:(GNTU,$M!Q=L7]Q<[[.+%[:1R$9XYJD=?Y$('G 5G%#$Z"$A9%'QE'"X6IKTIEA P8O3D <5=INR1: M%K@J<'4S7$FI8Q!.(>]S0HC/+<>39\@8T'@D)M(KW$^"9(BI!J2*O]7?XDH@ MW[L??CC-D7@]PYH9"%4JB>\!X1><*SCW%)R+5#O-I4?.&PTX%RC2SA-$C<-& M"^H]7DF6HUP0BTE"P6F)N-$<:2Q E;,B62Y,-"JM62TCF@V(N3G]:%=INZAE M!:X*7-T,5\PX'J1+2 IO0,52%EF6!&*@>DF:2$QNI8W+8^#J^=2R=5>ZVQE0 MVUA=[%*\KJN$X?\YK=LZ$UQI!W,X7%;$RZ64_.!PPE8C0@1#G"J*3*($:6.B M]H(Q)7I-W?LT;?RQ;>-K[W/%&! HKT/.@SV!0?;7Y[ 8^@6^RI8> 'P);<": M]QX%';*FRQ*R.9LS6ARQR_X@V!%4]L>#BC=.#;;X7KU^V((Y"*5BP M+BXKK58/M=4J9H3I0$#)=P:DE\<@O9CEB +.$FDM#9[VT8IZ#84/"+^Y$5WI MLUK L8!C <>G@:/"6) &*>\RZH]H\A:Z5 P6D=*A&/"]@&.SY?/1S>JS!\J MA&X'>Q14+:BZ#:A*)+',V8"LSWD@W$ID)0Y(QD0(D\(PN]+R\U!J;16\+"IG M <<#!L<0M1-4) 1JI,@J)T%6J(A\T#9RZJ+1OE3V.B (7?8@P^O<2/ _KN^, MO!V8>>79MS[NW@ORN+Z:S]+W*$RU4T[J?XYM0V 6W9]Y^9> M@^ZK-^,3&-E9U42?B3U4)]'F=KHY,6+N(:_L1:H$7#>T$[AL,NY^;B^*:>3[ M_I]XXL?5Y[-V$D]:N/?1H/KMMS?53R^Z+U[\/,B],$/=^BE 0ZCJ4?5A/(D5 M$5WK[NDP)V;D3V&MZI%O8"@Q/^GK'#DNM?3NM3.LB13;;& '"D8Y]]0BEQQ' M-GKA(DZ)IY5R.T_K#/OKS8CYA,ZPR[D+.]?B^>/EO0:EBG",1SWLW8=DN: MZ0[H\_EZR:ZVCEWM%0M7MW6;N0N&VO%MUS4V]WTM?6,?]SV%ASRYL>E3OR=' M6/;0-)9O8=/89QY3Z16W/GMS7Z=7>EC>3TB5GB*%<0KCW(]Q2L?7TO%UBSJ^ MEM;O*YA5FH==7;TWXW928*K(^,(O]^.7U]Y/3XZJUR?C9G)4&* M"@S9% /*S5T)3UAPOQ(\Y3E\8U1 )AF74W$-LB8:Y&(P@5 F _97 P)N"0/X M2]-?IBV1I>%.0;%=V-*"8CVBF!>),4\E4@8'Q(55R)( B!2T'Z!N@)U3X(Z'YTT'"/#4T+<$3#F M(L$(1Q%,U$F):VJG8*(3<11)H0$>O0244TFAX!+05^14D)4(S@TJ;*2T?2T* MV]9O:4&Q/AM;$1&-,QR1F-N^*@J(A!5&/@@LI2-"Z)6BI#VCV-H5-BQ)P;4G M^"M+2:?%P=*TA4?$IAK6[:3T@#H92C&22>*M/<6<0$XYC1AR%(;I?24)[QZT-(O>JU7XY5RH&B!LSV@_8)P MA[#+_9=^TS( I%%D7(RY C[/-34DXDY%%I.14;&K"!=Q\I@2BZ@$ZY]K@#D; M64#6"JYCDCDKO>AGNTOJ13_;NRW=4_0*ROEDN4 X88YXR&V2@L%(&BF%##Y1 MO7*$W#-ZK5D_ SBC:RXDM#.T7R(HGQ9!V=@0,UT7;^3A\$R1%Y?L>2MHH+D0 M)\4.\>0(,I)Z)"R1'*2 H"I>E1?$DBAB\DCAF!"G0H)E#^8]#5&!P$DI:?%< MVBX?8+/FXO#[3ND%O/9N2_<4O+1BAB;)$/%"96>D1@XGAZ)C*:K(J6)IS>"U M7F57#&0)E]P'TB\ =PB[W'^/'B^E8YRCI(E!'!.*=&(6):6XQE(F3U:T,XQ] MH"Q0%*0&@+, ==K#*^I!H4O*9M LVMG.4GK1SO9N2_<4O)1*R8-ZA@S579'> MA"S)P=[1"Z\(-EZ:-8/7NK4SC,O!RE,\D24V=;#M?+S)J[+1;R+ "D] MFDN/YCOIYJ='5@M_F%"3$A,22&=$8#9M:3O8KP!U >H] 6KJ$F.6 ][RQ$%)Q@DYXP*R.'GBA2&"K_11IEY;3H1$5"@ M=Z4(,B8Z9"T3S/ H6-3/KRYCS0HP%W6YH'!!X=Y1,R49L<,4)6UC#L@5R#D= M$"7),YZ,UUZN&377[#G?:#/EK<'.+0_R[48_[T8(*W8])=_A:I^O2-?93BQZ M#<[OB;>H8^>-(<'CB1U>TY#P__M_-27D594NVA86$5=:7Y?6UWW(.^L#QH(: M)$@NB2,]R*[D,8I24TZ8U$:OE$10B9B@%4,X6H-X;@9KJ,*($1$ ^:33Y-G" M7!@=2+51$;?SS:X+:!;0+*#YH.!G'JF*)J(H?,[T,QXY+U5NA.V-8CY&O%)! ML6?07*^1H.5 F#5G^A44+6[O JP%6"]IHP''$ U%,B;01HVFR''"$;5"<*E) M%'0%6),,3!"?D.Z*>FEA3.)62U@U=61B."]U&O5,WI&337K(W2@6!KSL7;,Q1==ES#:PO3 M^(_% GZ8GL2F]O ^U-_^XW_!GVNF1&!*R[/XTQL8HFOJ/PU:.VI1"W=(%Q0Y MO^6"(!,/'H@1&9ES0U,02!/G+*@(MGF;7>S.--[G1^9%@ M[(^W^,X)O;).M^]V=_G3/>A7QG/K\V^*>K]PIJ^XW*O,8-_JR5EFRVIR'*M' M!BST,,ZV_E&=P+OCMHJC$$/UG]-1K!CNFL?SRHY"UT6^^FY;&#P,>#@]K&EVT\M0T X&+'.^R?W?O%=4=(W^JV=O405OGEXAXWI5UTCY7LB$GU MQU1(\+LNN>M[?J24PA?_[OS!UH_ICE,\?6M^S'5T_9"3O0>IJV33 MZNJ=$+_9OJS[M0#GG5OE'9U;KQGX3O=E_7P3:#^>7K9AB7HT^+8)DFY.V5MG MF^0^Z>VG>@1JRG@*;!O:>\6_E6;1!]^.7>_,(*OY0\_$V% M_[V_3^#?H!IE_\2D?#)&)]6JGQ0+HC%)*'@\F],OAR+KHI^+LAOHE$/Z7+4 M'X8Q,:"B8-A3].,G)M-T=WUJ-DUWDUU+IUD^ JWB[ RTB)>#X;9#E2J;2:Z/ M-D@6/,@FDR6.Q1H$5([K)MH'JIUB9J4*RF-"'):9^&.Z*JAZDE)\P(C8.R%5 MLN4+)!9(W!PD>B8994HB&QQ'G(F(-+$:V:1CHBP:QU<+0_&8L*4)J>RKX (N M=PH31+45S&$JN%])BMD()+(!9_O7Z>J)D+@Q!W=1X#L%WO]S6K=UIKQ2B'87 MV:U(J1[:,&#+60P,:4VSTBQ!:3:*HT YE_!':N+6'$O\:=KX8]O&U]X#KDWJ MT=?7%Q6B'R=ONGA2]*_8C#,U:$KHJ[T3-L7170"M -HJH$4"RF[B2!D9 ))P M T9.V1Y<%@&Z;U> ;3'J,F;!;1K>E\/%"[]LXKGNW1TV#.Y4XHC'D!QQ,VX MC+@.*3=O0)00D(6<6^0"48A8'X@V)I&XDN[?LW(_QXHWBW_FH!R(V64]F:NHO%"U]@N<#RFELR*(:92PD%X@ (I2;(86N1L)1:%20E MKA?/^X9@]'YEP)DZ3$ ML>E;'YL>1Z%$I91-S%7M^$& M69D<,D;B$$V@(:SV?^NWZF)_D:%<#K N=6K+T4!!S(*8ZT),9XSV3!*D:52( M^R"1$=@A' #]3%"$A95"3-Q&%7.SH"@M1IRQ',%C*8I.,^.)B9*)YT%,.M"E MEN*ZJH =6/FKZX+CL\Z>;BF+U79%IIZO%-:_7??H!]SW 8!R>4(WP8N*V <- MNIAC/*<;RH LZ&$Y0",%@YE4?L7O8*T02?& C/04<4PB@%/0B& 9"5>Y_JOK M*>)/7H(7<5>WQR-Z([9L?J^?DXUQ:K1#[A?6A9(@!+F"U/.-[OJ"@X.JB>UIS(42X_!LL./1VIA[L97@^JB[I^V,P_KIIC( 20.7_ M%JNS:)NVF][U%D!;U6UG)_@)/',RKMQS+L+6P3T5&"OF#2A'.FOU7.6@QH0T M$]1H8,JX&J7==T.C9J,V<, M"KE>D&M@ 2Q/;Q&)@/@<1XU,(A1)995UB=LHU.;)]0,\[,OW./P6_]H!7$^4 MJHYN/F9X1DJM1YDN1:'+2X$^6G:"5,6S<(4H#2&$,0MDQ7/O1>4D>P9$=G(ZC)-L'$[:ZNMX'+[# M0G4,FW7OV\Z2JAIN43CJ1T.SZJNH'D$(IDVD^/JGU/;3&(S MJ$"[!]K+)U4PG*I.E:\;/SUIX>8>AM'$?T[K)H*YVU:V.H4?9?4_#^[:QPVZ M9RQFD^JFG>1'#>N)G=G-\VOASM^/(US;S%-J)E7\EI-I\GC\,4PL+\'HRF"& MT7:6L@7"A\'#@LZL[\FQA>E/LD'=S658_R,_"CX>5:,Q#*I;.;"R7V;?U M,:QMGDKW@^Y*@7-\G9_/ N[8+1?,L?IFA]/N+,_">IQF3AU][;@RC_;N?=LT9_D6]B0GRQU5[U-^%HRCSN-;6J_KYGEE5#?,N?K:1#OIG!)V MMO'G3^U^=WFCPAA6-_\*GCV:7&P6$.*D,P O-GL^6GCL\CB7" [6H_8VD["] M?F2GXTSXM1U>S&>V4"?V+#M!9L^*839$& $ 6':17)XT8*"?M0=;K-^-EUZL M_M4UR!MR0<9 =\W7[A=-]/G8/APR+ '# \5?\H5=)IHF?JOC=UCM3-.G^=UX MVCF\HKG+:U9NHG&WAXO&E=J8?=2PS;CNX\_84"'UX5"U#=:A# M1\YU3F*L$R ;?#AIZJ]?8Y,',\>S,.W>79Q! 3?=X7'LV.+[>#H,"_CM"#4' M$=4G-\ \C/)<6G2@="70X) I>6G7NAAK]:J]1)C6C:< <]/)M,E[#O@U^QQ6 M&K > #&382;:R^M]@6-+6S(7C@^2W.U5DK\@\+,+8ES077?;/+D:"#Q?#914 M3V9.NO;R^$>+27 M>P4.XP\4@-P[/,@]S*8GHU>A;D^']NQE_O;5J0WYV4LI%/5LW^=9![,/2?X^M%9Y&_>;2+G616>=[ MM=%MS2P5PX(FV+RTP^_VK)WW/%O>I<46= %IUZ__4Y9Y0_VYGK:FU\3(+9/[ MPVW:%S>TO?24&98\8DYIQ(,$*Q-SC;2ETA.7?'2AES/O6=F&]I,]RQ#P>A3@ MDV8:PV^U[3H*@J!]6[=^.&X!3N[1\7(YOQ_Q(\7-'\]Y]W[21CZ;L%GN9-(# MK:BC/\P7LYI;]ID/?$(HZM0C;D$*& 61+><(]73B$>0R^? M_7$,TV'\F%;II#1%O5QQ;;;U\X#03@2#CK!-L4=OHX\G#DQ%1@:SSJ=P-8CZ M3FE.XF=D<7E8NC")>6&G*[6+FQ-.GJ,0A# M&4EP2!$I8RSBFM W*M1= &M+IEP JX=*8]@J+ A&2CA05$,$ MY39B@6($>]UI;_0J8#U$N=T$8*F!5D65+7[;'ICD\_&XF:"<*K?(H1M]S:FX M;2S*[0%R4Y$5E\J4><6YBQ(EKQGBW#"DB;"@ZSKL@[7!X]5&20]5;G_+S+:V M,SXV,&+-C8_VG;@+7NW=ENXI7D6A!7&<($N\G'6\,3IJ)(1S4007N29/UFW7 MBU>\A"04+VT_//(QEUTILJ T"BV-0A\I3T!=58D3P)']4#M$!D@<@"D7= I+'1)*PYXLPE M@#NBD3,FHI";T<=$8S(KY24?$RNQ&8@4 R77[%C>*XC1*=]?'J.S+ MY1NZFRS?%=]2H&-;-/HOXXD=YB)5EZINW(<\'[5^UPBT[5C"[9)WI5_HH?8+ M]3P*)D/,]H%#'!O0]36/*&$1/94,C(1>VGBL6^YQ/E"L-%%,C)IK7J)JMX 6#),"EBNIZ_RC956MP(VKSS[ MUL?==Z5ZKZN)8TA):(:\PF>X8PPPEWA04 T-2"<;D;$B><*(I&DE&>]I)3/S M=$J1S,NUF=RD%,;D0TW=EB MF,]6T*[4PUR'/5G*^I5ZF&OU5!3&.3C&*?4PGZ\>YB:E_;8>U'V<3G);MZYO M$Q!0TVG1;37M.DR_:6*H)]6OH!IG?;7Z:=' S450MW_^7Z[Y\WR#;OK[):>K M#,&K2&4<(B1S1YF_N31J1=D@C[:%C A#.ZVBZ7,QDI MXXA)RA"7.1C*:(VBQ,:((*U2*QZX;/&\'[5@[N6N0;_F-D]QY,\^ID]=IY[: M?[)G)[,&.3VM][SAW_ B5>>J&^E1AM?M['/:U"-?G^8623!9.QSF.75VWK5- M0/MWJ$HG(K<6465A:RA58*@;B93%EI,@G5-TQ:%*@O84C/L8G4$<*XD,5D ' M''N%J;;4QJO;^1L0Y\BK5L4M.1N][N'D&##LZW'U.9Y. M.HEQ#^[+\F2PH3VF3%M,@?.$C@1Q[1BRGCB4J-:$^:0H6WX%PG,];4>PV+4O4D=' MR++=5W/=EL)V]\1\>J-6$6T08&.1Q/[U;V:= Q#@(<1%('DD'D>8(H&S5F4] MN53FD^)@K:UO.H.U"^^QFJ/2!86Y,1*QD?FA'8G/:DOWQIY$/[8F']1/?(*O M/$CT%SV]7]PK]SL+M;=9E)^2B+IV0(?TJ,^P&G,@13]D#JAF@LELB!"2$ZD+ MF.D!M\N3S<%3EF7HU!P+QH/3V8,7+B*Z PI)PSQ)6E$IBE3*RXYI/YN^Q66' MP95#E3M0<^24&ZJ-/W^Q'E!L0+%/03$ HZ)35B3$((F441-GA239",Z2$80>S>#+7S[!?5+ M?C>;O,.=GMAL[)0V\#;8QD-=\5!7?$>%Y%WR5/),4M*:2$,# 5-5$RZ*1DXR MEW0W8AZ85XEA>BNW1%J=B(]@C^="'>@J)2(W'XN8'ZZ*V-)[YAS[HJJ(!T < M '$ Q&L L41IK7>"1"$=D=QCK:FV)*M0%)6)QFPZ<0;!!=CN8,L+BER_49"@ MDR4F4A>2#IR*CVXA'HYY1@R V,> =K_1]I.9$F8?2\/""H=+J5B#@GHR?O(0 M_ME1+AX,ZA0HX8HYS#4))!19P'R.K%AIN?#^LG)Q.>L20:64$CB&NQ56C,&? MAA;)K#)2JH<(_W!Q9(8@]I<@U@-X/859/CAX!96"TIF16 !^9/*>@'$$EK$P MRC!)@P^=CA8V =[1@CMP/A/I,H"7TIPPFYA2UE@='R1VS=V1&6+7#QV[[K<- M=U]U!VCP_G,VGBY'[^#HU3R/:MN+=*D ?3!\O^A%-NB.;=UA>& LN$*"1%(: M;QGQ/@>2BRF.2L.IB9W\>NH3-5J3C*TQ9/1(9",,48#DQEEC9.X8OO_CYQFK M??.+M_.<,0_[N\WR/) NL4<,Z]P&33+@UC"E7SIN!98,-Y02)B1@4.**>,4B M<32*% R8L;Y3%Z28%9P*3H(.R%:8*+$Y@)VL&IJY#8'?PRR7 MOX/\SN U_IU3M6Q':;R(,%B#B3ML/@Z;C]?+S3*XQQ1]:#\N;W9X+Q9%NZ-"(X^.ZMN .0!D+\00#: K$)F290RX!OX2(GG M.9,8 N/)<6>I[5*#>%LJ&8$.F<@2)?$T..(24S'RA&3FCP?(W V ? = 'F+P M]YEZ,C@A3\:5_ZPMF\/'JSR8Z587XJ*.1'+M24@L$E LQ0BEF>UR4M^E4\9] M[-$*>F3Y/2N3+UVL!Z3ZXJ;T"T6JX@&-:%"$I2*(C$H3JXTCX.!KRIFC7LE# MM*FX%Z0R1]P.>X!#+/V0K%O;/W_*B\6S46SZJ8S.T'>;#1P@0R!G".3T)9!# M?7#1@)6LP&8E4CI++$L>RR@--=;JR#OJZU,-[0,W8:5'RC[-:J$AF#Y@\(#! MGST&,\6,4;Z0R)(D4AMP##(-)"@EK*-42G.0GMCWBL'2V@&#A_CY8\7/,7?G M:#0!?V-P-X:.K$-'UOO04])2E0QWA"=F04\I3GP2&HQ_)X4IA0O:ZX!*?63?:?V%0>8O6U4^LK^VZYV\:731".FMZC'R$8J4V7=E3 MA3KR\-?C].\^"6O9_-UV32-^26?>N3FG+\N/XX1A/XW^_E>>-([\*2N:_ITO'_K M\N&E801'3W NX)FK(,_7KXX=OK AY]$@JQ>RFGSB7*=$F*D,,L$06[(F1@?F MHZ.6VH/O.UPCJZ^F/\.]?GN?)^_RW^#&)_LKUFXGJ(SU4U+'T]K7:I#+;0R- M23)6).$\2B*-\71YU(,\ M;A.M2Z8-99X@ PV1@67Q9)[S@212'._GXWIT>31' MU0;MFV P1@&<$F[7.V33AYD.8!03;9/)-(*[F!X'J'Z!]S0,DB1Y0- MW,18Y.E7?_EWGL_Z)!>-/-CC;=_O"W7BFD/QRL_&2[AIW#LJ'Z'$_$+'9M]( MO*B]?/][- *&"Y3MI2+THX5D MMS2NQ/'!FM0>4I?M4V%/5>I",@GT'2D6@[0Z4A*8X20ZGR+8^B7&=%GJ:'#% M":Z(Y,R ]J2)N.@C24PY*:A+(+"/)W6]]# !#R?-"."O;;^3]WF>M^O=CD;S MO#C+\-#O\N3\>-1LZ*^FJT5.ZW/\.S^>^%!5S!$J8KC98ISRW"_;^VR*YD:3 M\2GH+/Q\<;0=6)R=PD"<_]=_6IB^YXL1F!CCV1S^B2NX1Q-5Q!:%=:E<^G)> M>[; A>H!M9GP8A5(V[D%[*$:]>F\ZM%H@4]$)F/0"7CJXJJ+GZXFRS%I0O?Q MO#WN&WSDKRXIUZ^^';WWBV$=;ZUC3FG6@1'PDR+VH>*PCA7X[(X%0ZV34G76 M,6B.X 1H'!MQ[7,1P*4*@7AA="F69E[X=77(*)L;9J.7'EX!IN>P2QJ\](,U MM1\TR?U)H,@F,)N)E9J!@YXP>0\TB962)B\XIZ%3"1^*%SH&2J(OELA<'-@O M2A(31?"RY +N7 \DD+I^QHG\\F96]JY:N>B[U2#LJ3\?A=SJC9SP\#,_3O5B M\[S^&(9R.9Y<7)V9HS9(!4\!;QI/1DMX_I&?7*KA;GK-5V5PU;;6Z6JQQ-LW M-WT*+N5>MVEYI7J>G:&X';6J]V+:<'KP^(V^AH]BG*\R6 7P689AA9GQHS.8 M+#\%H1Z!C0#3[-&: .'YQG\[RJ# 6ZO@9/SV!,^!:?IF_&W]"-P.L"LFHP*V MPZ(Y^VRRNEKM/B;R2%NHBN@O(9NHS&"46JTU44GYS"4WTG5R#$))+%KPG&3& M\'9,@C@JX9R@F09-:(HH'T>>[_QBO/@5'MFGU]-_^/D8M[A_@4%B.[!S!J;- M!G<(WP:>Z](.Z/'^E(.'%\^OCT9@JWTS;H7C;(ZK?9*;55Z%HUWA+]YBTNDW M8)^E7,#@2VBF7K'TOST:?1.^'7T/!NWYZ-?QZ=DDCWY]_>,OC9#A"=VO7J1_ M E[@\./=^B:((CD/2BL0K:UMBO6K8VZ2--1HEJX01!X8YX$;8B@V/\X*##<7 M%+$"! M^.*L[SM2A!5%>*XB,]4D2'U'U5MD$@Q16PS?QV_:W^J$?-8H%UL+T M+:Z),I^=]D]$:>3*\$P[ M[#?6I, M"'AQ%OQ0%PSXE+80*J3)SN28NGM[3UVA]A&M'&@7+4,DGF.1!96. M.&XIR4(;+6&.I>@84[DD"S9_(9K:!.> .V!!:1%.O7 :!"#Z3N;PP\^][%.( M^NO1V>/=O(_>9"I))YHU"0H$23J!/2Y*)B4+*7T"$U]TXE@B:68,.))"4]P1 MP3PIDS@HS129RC9:OND7&G.)*2B0ZH06505G7F7'J56":6Q*SSMAFFV%)@R \&YU%F M_$NRA8Y'K]:A+#AYT6YJ;;:0QHU9 Y!=C\]/.7BX/5"; ;D8IS-_CHIL]*^5 MG\.!DW.T%OTO+G&%G)/IZ,4/RFR<_79]60HU^"GUNSG\YW MI^?"NIQ?>>O=NS3AHGH;?W8V&<=ZS.9Z;_)\/$M7F;=^W4_CVZ-16"WQX^EL ME+$FHJEZ7I[ V,^F,>.'\_-1M:!'U7I>=-_@-[CD^UIB#K?PK? MEE48-W'4 M)KHUW=<6=]]6Y*-BFLI1<&_ N7.X49\<\:"%"'AZGD:96?%=7N([9,6A]?0_ M[?B]:(9O/8DH@8="-7/\$5:%IQ6!ZF,.IM1%"F8U\8%S+&( :?/@MB7O/1.% M>FK%(:K\'DC:[#'O4Q[NHTK;G;88$55S*K([UW1\L+7W!;=']:C!9H/ZW]!L@\GS:Q/F7@#=EZ*<3EK M*/6"Z%AP]Q*SZ3P(8$A!ZYQ"I/$@%=*/(GOFV/0I=^>S0])MCP9&,7^(DU7* M?_ES&K\;13"E80K.8+K(=);R^F9?-5^O17N2/Y TGNGT^=IO#B; M^/-G^.WS,Y_0I-UBE!HW[]%R+S4?8,1X7,[7=ZFG$O /GH?9!QP;N,*S30W[ MAQL6JM_2W]I#D_#PL\GH3MU[+6-O?VY/T];O32G\GT\VQ%9UWAJV*E_@19[Y MR7M_OGC^U9]VYF\].;6L_^J9^90)N'_2D0.,]A5, ]VQ?F(._]\W^;R8 +0O MO>IH.^2"WO@\_VLUKFF^LQ&692\]YA#G>?T7'&T_C6,_ 74##K6?+A>88XP# MC"XO7JJ>@U_%ZL#[W?#-SWEY*81SDQTJC",T;W(RGJ=-M*&I%A>[KU#7?..; MSP!!1S],\KMZZ^9N;=P ,!1SB>&9,ET!52)PDLI$GD L].P"((%SKM3A0NA91%>/(J0B&/5*R%I\EX1@\#8 M6<-L3;J\&G*/_QSFH,+QQV];P'4"./AV#I"*<<:FY '37S>^,0#58A4PO+@$ M )Z<-XFT!61O,0([+\,_('E-J43] CM#-PN[> R/CD\.CA_,H@?IK!:"['L;[#.(W]'&M!:HW'"E91>X'SG7OB ME=>E'W#9JP9E=M6@U"AP,R(P/O7ZVW?=UEAKQ09+=S(ZF\_.X.]/&@W,E08I MGF'&\O6C D(.^@@S:&=S,-BFNZ/3SA4L28Q=3T&=)5A."Q N_Z&6]8"JSC5U M^OUL-5DKMMZ@SW38A, !5"Z=.SR;C:LC4.B84K7F>5-O@PA#" MZ\UJDC0*Y'S<1+0VYM%^47D*$W/SXNC_KL15_VB)JS 4\02&9]]@O)Z._N;G M %M-"07?$<\_+D8_E (>W8_@7R]G<_(W#Q)V!"9R/+[$__7-5S_\^+?1?__C MJV^/:ME=:[%L*YW9)/4OVJJH+<8I1:CRG$@DZ@HL4L+ NG64BDQ5AY[+1I:= MH(JHP"5F]F@2=%"8E>&LH-:'V(FV_FT\G:$^6<>Z7K^? KZ>C,\NXES?G;_Q M':+ CQ@O_!KC1?U4-#G0U]PUWEJBSS7^ZG;NGA7Q>)?C:1=;,+"66]K M0E:5X)'3UU)!B'Z3DQ$%=*)IH:Q:F.DJH.K_Q=!.[79@0_ MVIGJUHQ9O3*&+W.[^0BBM1BO:X__FJ>U8NB750@(6C_]]!)0ZJ^_O/P*G/Q& M73_>PP^$%+?T*K5*4B5+?-!8G F^HI,2W,0D0TA**.L[,"VM\R$)1X1TCD@F M!#B4P1&=C#4QJR18)UW\@:@!['&?4FZ'*N(]_4YMTH)[, 8PUUB^*2Z4*VYP_S+"*+&/)$N9V(U_$@T<154CC+91Q.Z/B42;(0.7:#M9*8+ M+P9M@LN[^1M>*W"4P$D"U[?6!V,WCK4WBHEB<(6:905N>G6H:@DI.%(3L!K@ M3I-)M3+2*J.%\6,.<_"?ST>\,8+-\>@B^VN\+F6MR5JUVG!/$6MCEH#-'$]F MX[@I061_$G_2H\L5$Q<5K%@Q\O51Z_>-RF0&ZFQ=PBB.C?KZ>.=AZNNNWVU? MMES]OHDM["8\W&SCKY=Y$88R8S3C1"FKP%*WC(22&6%>26F9-5RHC@HPT05E M*$D.UJT421)8NG")S$70-"G'KJP6>Y"\'C5D0O0W$\+RD(J/EK@4P7C0(A'+ M(HAR#2-N0^]#< M^K)"N67@KO4][R5N!^B^ZP8C@J\_;+DK1FD&KSF=@2XXA;&YFJ;A@G8IMAPD MH]9'NF)7]2-APZL&IP[#/#>$48.Q>.&AN)2D-)(4PY 3UH.OHKDG@CH52TBL MY Y@W$4]O:BAD.LZQ=W2L]?'ID?HL,WUNNX;UD2 !I]XNWQ>LV*=!IE1HH!! ME,$=%IZ1+)6E/@;-98=FZ^X2=X-&)K<3.J[[Z02#T$UFE1_N'=K\K=P-KO&. M[''NM98YD%@PR5Z""'FT=ZAPCG)5LL&2LT^7O9_&#;_@.!^*]U_0?G*!8C2[ MXD%7W76@R_GF00X;4R[]@UCVF* M;9D2O1-QYZDVWA3"I9-$>B6(\UJ1&(PNCFP+TH=-DKNJ:/*?3> MS3O/R0=6-#%()@N>7R#69C#DO%#4.!9$-\YP]WF_#[7:5UMNCUKMG0304I@+ M2,!F&2@W;!'GI&$$.;.LQMJRU*E7O(L$'%ZY,=[;=?\)RFV_2ONQ=6MWZFHQ M_/N8QEHWEM )'_@8,;"/40)X@\&NO/!I'-54JDR8C9E(I0OQ/!E0OX4Q9Z22 MH6-7\A ECC!1SH,?A QB5AE/F/<\F,@2(/;EI?<+%FFO#K?N!H+YST&Z2K$^ M4H<,/@5 V@B)=-,@8EC#%F@*.G6D*R>AN)>6@#^-/=&0J"R72$1F0GJ>"]>= M#;T#2Y?KY\9=S66M+[H;4SVZ L/7Z61-WN@6T#/3W!9$FY;" 8V M2P0A%Y02"W)-DM?"J9B<+5W#A65)P69("&Z*'/PW/D.96,I*10/_K/.7H%8 M@BJW4D>BBQ9>(J&L5O>MFUT_VW!\"GP^XN,_@5SIFZ>2_]C64CSQ)/++M45^ M!*LP-&63P4]_ORA/&6UU9T%X!6<0ZU*J9SC-VPUI0/;?^?EXMEIL*E:JUJ_E M*FW(9'(^6JS.SF;S99,J'/WBY.B*YC9@)9Q-\/8K&_^D2W05^L$ M^6[Q!J!6-5FNK'7UDTG;^:;S./7%=X=EO,":J;8UP>H,?>+>X;^FR40NP#Z MGV!=@(OE37)$*66E",$5W4F'Y<.OQ; O^.KTU#I4:1WN:VHQ$N"A>>];)XSWB^")'?UVY>N$FN. *^8R:2*I#*;!@I6GEMA S<7A$'/[R$J>,^>]UAM8 M8,;8HU:L]$XZ>9%*%,9 '(/'8!XE02A':-&&ARQ"B9U@A[(N.R8XL2EAIQUC M0#IM((D)+RRWL=@K4A .+IULB'=\!@)&N8LN"4]X%A*)S4# DE(D\1Q3"J6X MX#L"%DQ$(A3<_#, F8!\3KM(0%(5"RIX'O2#"%@O]>OX$FWM)23T-[<#=R&R ML2W]Z(?5? :#,)W!D]3]PDM>UD5]Z4F>K(D>UC0(YQL.C=:]F\QB2[U;/_XY M8[;*Q&/_L:9AZ*9$%8^<7.QI(Z9/\.]A-6T9$\*$@OTRLLB!2 7+P]%:R)&< M9-1G3SNKR4LG$[9=D,%I,''!CX0G8,0*4TRD2F7>+:8Z_&KB_;0E!KC>+:Q. MQDB*_E QV+, MPD;B?EZ=YODXMCR&_P''?+%4C?AR UOI([.5LCULI?]Q4T;2]2P.I*3[)?UB M2+<%^N8WVBC9%AW659&>)>Y 55JOL.2D<.*I\X1R8PHWT3#%.]UMA=3<- 3-O0:W6W9C#!KV M# Y=SE=Y>P;KR(\Q$7[YC,AC(]W7F^79^^VWINL'".%J %#O"&:.MXYQ M&W;Q;-<(J);0LG;YN4(*_&HY>][J"7Q>5!N ['@X /PR@] MIE^O3Z@[7F>+_&R1SSQ2+JQ%8EY7>+WV5^MG@(?8*+QWX\6XID:?/UM?8^M M.#)ME$B]K1;'0INO6X6XYR!VK.1UAUSW/6"I,?3BOVM/Z/TS_?E/R_E54]#: M#!8D$?E$WLYGX"Z05HQ+_>]J,7X/<]\8*\\:DP4_V#-[[_)\.09_H(6$!BGV MV2+L46R1C\'_+2R091H&8&< 0)+PVQH=^.A@7/'@5PR./=#8?)HWL&VZ[-<^ M'86QANV[2TP?!NE68:N/2\AG TJ'&M%#V?K188L?_VT,ATGZ-P M0*G:Q1U^#>YLG.-U-.-L.:K%5Z/UE/1AT1U22-!HO+MH?&2\FI5)12]&[- " M-:R7)[Q>Q+!>#J?6J]O;#[U^KX'/0\I@#3SYY=U+O_9:#!C@N$DDY.#6Q,,' MG1\"'F^VE _V[CW0?4_OC0=Y_I)G]TM[X[MIXQAS1&U\"\5[Y3/W9@5]@HYL MQA?[U8VG<7:*C,++^3BLFFCZDK@C$"R8"9=9QT2'^T8[R MD*TEI38E#<80[W0BU#IIM6?>L4[I\GU IC@R&*,>(/.3K?PG$&<;?/_[]_V_ M/'TZO/(7_'T_;I2:#8?E.6 (\,K?\FO/ CY$WKE M3\O.&/:#OOI+K;H9O6\[V!'?M+!KTB1V^GH.^S^?&J7Y;.(OGW7(^O"4]CDR M(YDFTDA/I)""N.*PE[M@(69#"^OTD;G+=LVE+I(_5P;.UZ76QBVV>@K7%;L3 MFVP6ZUW#D_+(L?W\&(/D?S:2/^#;4YCEP]-DF1XD M,>":,I8O2G5Y*J@/G% 7P32761/+0(D9F[1T4=N2Q2%,\U?3.,]-,F2S_!NE M]6(K=?*WV9K$(J@3MBH^(.L0?'\X7Z*E MNAK"[T\XE_@1M=F32B%6A3&NHR+4:Z0*M@'[(#GB310V2@=*S=UC&+]=ZIUH MUP$#7?I(T/T\Q$.B\> ;#'@ZX.FA\-3DF 3+A;@$AHN,!@E#!7:&X]8)$Z1* MG7X !]PV> \54=,#H4;=_4(X'?TW0:FUD]A:KUA=^V!+;4GS*1]?*;/AICP MRR(+??(#\&394G_=!]H#5^KG!DD#5^K _?C%X-+ E3IPI0[K9>!*[6DUSE"Z M.G"E?K[P^*4Q+3X];LE!GI_V['YI;_SYY/H_MC8>N%*'S>6["-- _'?_N\Q. M><^9(LK;3"1GGKB2*&&*^J0B925WBF_OTI;R/HC_U)%S0S[.D(\S0.8 F0\( MF5IR2U-)A#F3B"S%V*B8D0"V))@*"/<>B4" MY4I&]S"0"7<=('/@2AVX4OOA^W]Y^G1XY2_ZE0!*'7#D MR>'(4WWE0@I"*2*>02=)P$FQG1 M5$1&$]/1QD-LUSP>EZ"U?. 2_/PE?\"WIS#+!\J( MLLGJ7(QU7:[4N^RM/!Z^*7'/^R^?C>1_/OE3 U?J8%8/?'X#G]_'^?RRS%(( M3Y*A%,QL:XGG01 6N,I<%.%HA__H+J9YG_C\V)%09F#T>QK&WH"MCRT'3Q9; MH_/%:"I)NV99*JHV,'6N[@%?<)6+1\T4>LS1]8A^/ZI*V_@ M2AURB0=NOX?19]X5.-L:8@L#?69$(,&63#PUR2M>? CE'L/X#\*5RL4]-P7Z MPA*-!]]@P-,!3^^&ISD#A JMB4^4$VD-!5M? $"&:()BQ03/[W';X&&X4LT] M;XQ^87AZ)5=J.X"5]6,\T?O?D&%1??VPG "5V@?78DQ52ZU7>LQW"5>18 M_0BS*OX/HA57$X]'K.HV!%YB"9[58C4_;^]SFIS'.^"1?K MT95,+;<8EL/7T :>:8F4*)$ 2:C+),3D28Y%1V]\H;;#U'P7YOL7T^6XCOSX M7?XUQ]5\O!SGQ0\?FJGZ<3X[?7DQ3:_+#^WDO,GSBDPO3L'U77X,D_0.)ND= M3"*+'!&7T#5>Y.E7?_EWGL_V M+#"W65C[Y)!J7>8<(.X5I1L-0+V/G"9Y*\ M-#%S+4WNI.O6(@S0Y/ZH" MZ/YA3U:ZJ) RX=$"]FBN %$\)SEY;:47D=J#U._W3,+H\?[@Z.-)V"$PZ!8R ML?MR^R0DN&2SDX%$GS6167)BJ0M$E>BH,B8D'0YA&_=.0O9O3/8'@\"6VHJK M?CQ'H[',WF17':>FI$\C6#,7CT+HW?PZ>)H!+^-K[65U_'TT?YX>E5#9ZOYV6R1;]S#X"E, M3G,H7OG9> DWC==E0OU:Y^B7#(,93_PB/X$QVB_ H[_Y\Q%K;!A^5&43(=A/ MS_^X&'TW\_.$LO;]> Y+?38'U%F!2S:'FX*LMF QWXSDZ&P^>SOWI[ $H@@ M/'4\V;[DZ!1NMCEX=888\W_Z9BU9;Y+6#&PD'P61CF*.#O=P_Z*XS0F\N(X] MSI5UB14PW[-/1 J3B<_,D:AE43XX%[B_K NK&%Y(X9MFZ'[)IWZ,J_C%9J O MCFGT']O+\W$[[VA^D-Y0R6VC7UK."P(G!?9C,N3^6SU]F3TXFP^GJPM M<74\PO8O:T%M,!80\10ONBV,('Q;HMO>HL7GV5F>@K3.?\_+H\UM?(QY@DRP M"/271!^0/DSJ,\U]PK]^64TR+"SPZUC]#%_C;.)!<5=WHKDB//<[N-SD?#3- M;V?+<;TT'#U=---1GP=N"_ZT1UWS?KR$QS@[ Y2K]'<3_QYN-8=;K>V!MQA3 MP3./1]^#>;6.J]3 R3[+\V'F]^/NT^,]UP[H;SS[ 8JDSU#>2!\BL>"8$968CRR:R'@Z1$3I$DZE1JS )!_/VFCVE0;Y!1#1:W#( MZB,8DCXA41]=-*M]SDD8(@L%%RV"_VX5N.9:@G-F2J(FRD,X\?<^W1R6?,_F MN\7^QFI!-&CMF,N>&)K@'L9XL415]'@/W#N;2>NB58X,T"2 S:1M(H'#GSF( MG#3CQG3[$!X:B_[A)ZM\*-.HGY;1XRKP3Y6Z@T,B%9GI$"G))44L! ,),M*1 MHD0J-#H!5L9]0^(AI4[U4NIV0; :UV#YUA!3WV"H1"E]UHY(F0/\D )-(D>T M]]O-[UJ2[ _8M\: ]N.0,SN%T=E]_OP!?\^=EVS* M\&RZ'"58J4W@["(2TM[^<[8Y#VYBN%AX%D43)5@!$\,:XM 7I\ZY'!-7*APD MZO)B M#HUPF#=O+" M94\CH=&"J!=MB'4^8"VG\SJE8%C'D;M3QM)#BKHXMGT4]4'T=MG3E/(B@L#E MQ Q:1& LJBVL^. P%)P:@^2"O6P"KZ/D:6[HNR-$S%W E>/^+Z#?U8]BNII M]'Y?U4?4%P%)Q=#6XKC1QK(F @ AA425BIV]C.*C+1XL?%!. !I>1K#U)1I< M5"]8YX71R#Q25C"GB$S:D8"@./4HT$M/=')C4&0SI9!0).G&0 MSV)I4-$DQ3];^122]4U ^XAK.1K+&:7@BFG<=9X5VZXH3H: M(4@2$IPV*E"92DZXRMH7#HI5?[ZX)MQG"&QW,YE'K\ ]3&E<@]8[X>E[,>4. MGR! C13!)U(HAA&L#V"6 ? I68+Q@2H>.SKY03'O2@G]Z_QR+[^[B"E7?9/2 M/F;5,49#RDH1&R02,AKP]L&0)SQ$P8Q.UL<.R! ]@MMJRKK_45($X\0N8ZS/_-I/I+.7U>5_]92>38)(_D%1+.&!LG\%S MKTZGS]-X<3;QY\_PV\VN^@71V[AYI)8;K?G@GZO%IIQ+0)\_#[ .^ M)ESAV88AXL,-:2!N&=K8PT_R\!/#^$Y&1R6):']N3]/6[PW1Q)]/-L1S==X: M-CE?X$6>^-[]V?RM^3 MO,UI2<51$DN1,"#)$GA!2G06%MP[HPW+CQJYNK\!^;GGJ8@[)E%-N5T[7A\/ M6CW>,U^-1D^A#ODC.R#K?.E^1P@-P /6I$<7"%24+!-',>$)_6BQ65Z46UR_;!?_#ASR/XT6^ M+F9S7<41ZUW IH^N<,2I%#D2KHW$G(M"?&":F&RRYY)+93O\>-P):I,"72&1 MHS0Y@]-O\$0X/\:8Z>-/?_\B(6M$S^LW_,S@_*JZN&ZQ/_B;&0X8LDNV%UET M5JBD,;L$["9K*;$"X%-E2P-E7OK0)=JY \:^F<]BSFF!E#IU3;W!TO,#99/0 M?N;L?=Z)3 ?'8=92%WS/J[X/D]BUH?6>*P MAB#ZQ4D'!Y%I*9^>36;GN65D2&OFE":Y?CQ= M C<<\F([^K#-[[Q6L M%-U3FR"YXD*@/QXBOK0@7@=+#&VE4H%'8C/&7;53Q.I$2>8B664IS;*[&?_0TV]ZEQ_Y4?^R#]NIM\JM M^V*]RX,O,>-5\D$X$ARH<"D4+K&<20K!<">CC_(@"/L43?[!N]Q-K6+<6*HP MAN%1;%#H%,*SQ_!AL)%V QEW0?-[%K7][8<&[_)I"'+)7GKO+>&,66P+(XD# M,Y5P'RG:)8)UZ3[O1%WU^3A->\SW:)QF)A'*!)8?@U_MH@VPCA,OB3'#37?% MWX59>]-P,=[P+Z4"3X,0U#*)M!80 53@"\P& 7Q- I" M.8U&,>JC4X>HLWX#RQ@7\335Y/PWL\5RGI?CIH_N=WF:8206%S1" S70[3(1 MV?$?VA&N*^B'UD88M2,[JC;3TT[!V/B-BS/0$97)? 3+H1Y4^S;/YN< _64\ M!5 *[;B=M8.*O,T51&.>+SV89Z ]D(EG;8LUUE<]:KP8E=6T9?J_S#-4Z7A6 M#:5UR_I3*U;6N+R9N%\VBV/T:AIGIWG4=LLX'[V(E7R4.2.?>%;-9DKANHLZ MC.O."K/I>E2G&6<1K0# O/6T5@)7G)#Q=,W<5&%I]$U;;/XM]FN 43_"\]=D M3;-I&W] T&D8N*:U%78M4_]U"?]L)K.9M+[HDH.J#!>UHM*!NV?!=9/4*Q*\ MB42$)!U5,7-U$)7Q:SS):37)K\O/>:TB*I/<;[7#^O4:XFFL@RVDJ/BSIDL M'&I(%4!LT1EL2.%Q+:!%BQAWWIP 5NK*S\?H4&YP*&1XUVEM-E,:P[&,T4 > MG6<_;\!N=YE5:L1ML%P_!CSH8KS !=(>56:3R>P]YJEO2>BZ V-MP'C5_'G MYW7O21Q#/)\^KX>3B3^?K98P+!]R>MX,$:/TF'Z]/@$F8N+/%OG9(I]Y9.]? M3V;M.]I<^ZNK^L*_&R_&83P!U'VVOL;S/0W?ZVVE/I9?8_+^_D/8,>/7'7+= M]^!U6+KUW[4G#,_TA3S3=KO2;4%M2T$L8$CP\?>W\QD8&:0%H*8KZ]4 A(G0 M30'*LZ8,!3_8(^/7MI9>@^ 5)2?V0!4G5]?[[,?6]@Y_? FGA_GXCT<+,(3) M M19.4#GZ:M'Y'Y'X,8U-Y_P>B X^&V-AO1^\N_B<^TW*O?NNM]='OHP2/?4 M>GU8 #V8VT,N@%_WA><&\>^O"G[X]79(D?NF=MR:K4 SI\6W ^H ZO!K4&=3 MX;NNU3Y;CFHD8K2>DCXLND,*R7:'L-N+QD?&JUF95/1BQ 8M/:R7@ZT7,:R7 M8;T,ZV70+\-Z&=;+H%_Z[3;6[9^NWQAA*$J\E8MXY3/?9H7>*SO0)]2&O<(9 MRHMF]_8FLM?OD;@G+-Z^['36KU?>G?QK$T0/-+=7KO+[?/6ZJWA P=_3#,87 M)8H1) OOB138#-"D0%P,L>A,?4D=:DN1/-@Y19)L&"?P2R)6"4FT+2+E@)P] MN=/;K4F):3?@,9%HO1!Q,WYO'J78R:,4UU&J4KDW;?)SE?;#KN4!P'KPR@. M'1+ ',W68;FQKSGT ;"+*HT52-)Y33/K\N73Z SEC)(4J"+2!4ML\(+$8+QW MT2"-^>, &-O?VN=SE?8!P 8 &P!L/X!15Z2B&>PNSC.11J'Q%041PGB;0U!! M=_BR:#1)ZI2)L5@#+07236<# "9X"I8I%SNTB0\"8)H. #8 6.^G= "P0_(] M%B>X\9QH@1RN7C, ,&D(8RES*@T'K.KPZF1ELPB.**D+0;Y $FC1)#*10S%. M>YD>!\"$&0#L$T*-ZQ25(=3XU5^P]V)MIC+/R]5\.EHGM?O%(B\7@^)X,DOI MJ>J+;^Y8N'1+ YJJû'A!B13,$)^Y)5K:Y*B2(=@.6\EA0ICK!?Y+7=^O MI_C9B[JXAX#F)]I>-\K@&^"Q9W,[P&,/X3%HYU428(\C=P:7@MC "J$F"I:9 M"TYWX/$P =)[AT=NU0"/ SQ^-G,[P&/_X-'FF$O@C"CE*G&M(L%Y0#Z3F4F: M,T_U_81?[QT>O\1@[ "/ SP.\/AP\!BE!NO/<&Q]BXU-:0;G6E124*9$$DP[ M>C_!W7N'1V6NXO3^O)?0)\+CD%[ZJ:OHQ>D,7N+?E29E31S44J/XR6@R6PQQ MWT]>5]?GR7_IRNM6E0*?IWJ[6AT%I2QH%D$8]8Q()3.FJUKBM(T.U!1/LL,: M=9A8[_;"?EW^ZL?3Q4^PFO,MM-$"Q@E^NU8MW:]6NDG5Q)>^?@;0'$#SZ8"F MB-3:3,&&S\BQ'I0FWD5*O/(IE!(I ./]1( ?##3-/>^3#: Y@.8 FD\)-)/4 MK&B?">56$,D#)=] MU/.#HCKL2N/'')=:FJV0/?P15=7C5*?<9#"^4*U5J/?644-"R8I(K2D)6(RG MLB\!#/TQ]6%QOVG7]E9O@H-M M<#ZDHKHD,9^?JAIP<\#- 3=O@YM9Q!R2XT3$%-#:9R1(JH@QW'.;5;&V=!K% M4T5IBHZ$D"E6"VKB*.,D5+\ALL1U?&3<9'0 S@$X!^ <@/.^@-.XJ(WPBCCE ML";#4>*XUX07GA,L?AV2O0R<#( SF4B)S301670BWE-*6-(ZF*Q$EH]M<#YP M0'D S@$X!^!\4L!I=1%,:D8,SX[(Z#QQ13%BK179&>%LZ.S*@2WJ1%">2">0 M(2Q%X@7\EDKDX.4SG76GR_8# R=G#YJ_\-D#YW94&7['_GU_N;K5\5/KX[C= MS_34I]HYL6E,6_LV+F>C\7+1;5"+M!2S\H@-O?_/5;>^Q74/GVG*LF.1!8 ) MKL!$BYIXK1RQE"OX"&RVW$F:NDM_TB[2O-R>L>_.VV:^\P/UFM_SMB5[$\": MS%K V[)LP,P,X,G+;(-0Q:C8R:OU7L$7,A&G*_,BO*CER1)&=6;2))K3#7#U M?M^6'O,K@'4/TCZ\U(_@Z G.0EK-L4TJ=C9=UN9QV'_[XTWN'[&W_94X\9B+ M%31_$4IXXAG(L)061#%J7*S2)Q^-\K9#0:4=Y2%;2PK'NOA@#/$.G"IJG;3: M,^\8O6_QU3OB2Q8YH@CC+NL-K#O)4J A"%HZ M%:NPC@OUO! 3%>;->TN"H8QPZY4( &E@2CWRR_X\Z_5*W=6C[_,\-_H5-.IR MW;3]RE7\>,_\4?P0QZ,?9_/ZK/-\ZL=PP!Q- (26H[9#>6-&Y%J(5VV'4__[ M98MBL!IV(N)):95$(4$+B5F#&-W6H$>S32[QE*SJY+_B;6'3"4B49%93:+&PHK";3 %I?L,8B>+QG/0(;9(%6QOA=GIP?C<:+T7@:)RM$]O%T]%__:3FG MSU\#KL\W2 \S6#]GSY%8LS%80!5,%W ._%8S)CVR;W[G8=YC'OUZDO-R<;P3 M4[HJ9/0?H]&?X=\[+)>-U+<7;(6>N2!MX(((I0%WH_=@L%M-LG2%::>REYUM M\KL8!:^F<7::?_,?OA\OXF2V6,WS;W#%[R:S^/M7HPPR?09'+^>KO!WHJV$K M-/^FRV=$'AOIOGY^YE,"2[;_P;+M)F,'D$/&C__0C.((AC'OU.H_X4!B&4]R M79$X,$O_H26TQ8]&[_Q\/%LM1B6# ^$G1_"4L.HJP(#<^M&,:F5]' :9L'K$F$%%S"Y9$+@-53SC@/@ MI#91JD)*! ]=^I*)U380GTPP@I]6A',Q@D_ Q<6+C0M"'E".>C'QM9'?G5\F0VKZKDLF#>DWA8 M'Y/WBI.0DR529DL"\Y9PZ@/(B8HB=51!B4%H!])$HX1SC([8G36OPQ+N/HI\O1XO&><0.>\%R@VZ8[,CJHHZJ.?(RSU72Y MJ'.W M-NOL3I1,5T-EN,F[C4V6J^6.%D+F>C%[^^'/TV.X-5:"18P*TYN:WH MC]>FY(N;&LM-C.PB[/"Q9UG.EN!.I)$_.YO//H"SL 0K=W ++]Q"3[DI&>QB M2B4'#2@T": 'B?).>!Y$X>X@D8FU]W?^XVS^]_5D@0"\64_5P7W"/>];#$B; MX811QPCN49"@E0%=((273&2C.^][%S?XX=_W,]EP.QK!'>+)O3J:HVW,FN9[4\P&I]B$(0A!H*S_!IP'_N, GZ"=/MZUR#-3# M4XW>CYK,)BG,;@#^$DS_-H.JN5>W!CN,L$96 \?0<3GM/Q MZ-?;I?!1RKE?]9XY5C?T=%NAZ\G;<,7AR-+@PTN,Q MDK*:+->O4C]'T_;E:MF(T7_/PF+T(BYW-WE0&*>I;O+,\YF'ET5#I'T^N>,]332S) "=I^^G\LADZS-*IX?SVI5%,3\!QKUMFJ(3A M@?QR]'ZVFF!F2CW_S)_7TQ8G]=/QLF)1L^VV]9SUT>I#XB1NS0F8>'/?>IZW M5.V[KP:O=,6[Y7K)0:WOX]#P66>EP)/-C***!L]%*4\$!<5%D_"1=;+UA,R) M4CC22.PF)50BP10.OK%53'BJBK^J/J3.S"8 ]D.#A&WX]V"J;7_A][##T!>9 M4P;[*4I)E&,2S*3@B/>L@#BQHFU4GLE\6>:4*Y&I'$AVR%J@E,2-,;#)%!<^ M1%Z2NRJ3Z4%D;G\ITF-:3[OA^M8LVJ\FQXVSUE&33]GF>'6%X0;:=5C*%TF) MSE)C*2/94$$DU9QXP1W1(<)_RCJ5.XE.=TE*O.\EO#^W>U ;?9$U(X)G/DB2 M7/;@D8/9 8XU(UYR1JV5-G9YSN^207B_LL;ZF011VD2S)BEN?TIK%A7)>DP1O"%&BL8$ M7=X(;Z\!\SZB;3;*A" +YBHY(C.VU2@B$1%$*.@:T<,8E(\@ZZ)75N8 MWN# M/9F"<8B15\]P2QS@-F3X316:BB]61--M-'8'._-11' _+/%R-=/D$/@?+3.69C5O(G-EG?[SGD::\Y"S;/ S=XF0WA[%_5H!&L# M5DQ:P4UPOQ=WQZ?U?HOE+/Y.@L<GT>1HOSB;^_!E^N\G?O^"0'C>/U-(N-Q_\<[58CLOY^B[U M5 ++YWF8?<#7A"L\VQ"'?+@A.\@M]V/V,-4\_,0PL3TS#7=(^W-[FK9^;_A' M_GRRX;2N\]805?L"+_+,3][[\\7SK_ZT,W_KR:E<*E?/S*=,P/WS/AU@M*^@ M=^F.]1/;$&QR53 5_?'@Z06()J**GV#8_5(:3 8\3B/?IARE?-HD3%()?V4%XO9O#4@IV]_ MRJ"T7NV.TYMFF'YI!_-@6XRJ1P;F=I; )K'1C\[F8S#;L,)BY.._5N,FM;'F M,%:3,,,5TNA?*S]?7C 1'"!!X*%Y_ ^4[/YZ_M9/UXUDT>#] ;Z?G8XCK$BR M26MK$]C>YS\"R3GDRFJ^P"BQEK)1H)S6E M.360#C,]=W.U_; M9]/E? :F(%ZF=WYJID'1XBF!ZX'/R:4E+C*%!5Y)%)62*0=A>+C:3_T%1RJ. M)^,ZBO#AKWFYG#2IO#\V"38W=5OY=6YKGS#EZ[6DP 'CT]4I#/#\;%9]$10\ M7!\UO#'%W-L:WYC#HIBN4(3"#%;"?_VG%5H^[YLT16J,L%02+BBH&0?ZR18? M2,DBQ1)#L*$39+Z+-/W2CL:.CG:S?'U_\^AT:-ZBO*Q#Z)68=ASP9 MPQ V4+>6P6H'G9[-T#5=5?Z<+80+*# L/W^V<5L/)1[60:8Z^ !I; MF_3BFC-=&]TW5;0790CX\2R.ZY-5(;_\-$WN-.:=AWQ1<@"C 3HWH;N7TR9X MDL'Y.ZV7*JLEP$3KXR_6T+Q]W;"ZR,O>OFZKNYOV-.BT8RU)PE3KL_6EMH9D MDM^.%Y,&_VNB>TUPSU-?XPAPK74<88_?OFV.KHWEK1K2L.J-JL/M4!< M 'B,^!'J'3@&?;/1?_OIUNS+X]'_G;V'&9X?C9I80YO3V%;'K.&DAIP6F+5^ M*7U^L3YR[@5,# ^9( D)[",JSJ8S:O7!#-#>'E?\]@,,P!F*=;E6XUOO'$ M96AKZ%M56V=NO%BL-H9$U2V@2L'T^-''IL(8I^6?,QC+$8QI'?(Z_),9O,20 M.;Y+D9D]S:E$D@,Z:5(%$J2@1*M84M3D(!E,G"P M<)P'09,E1!) P @%:\4EI<%"]9UJ;FJI*HX3PSPE4C-'?,D@IH"U%(142W9% MT]/[E39[K'LI;O67!I=5%GZ\X M'IZ#V:K@;26 4Q)0S7IB+5B O- 8:7&TI$YY^FVB83''697%_YLGZ?5JB0; M][-3#/;&W_)\/L84KP.)(>^KP?A9(^#A63@,]=1D!BK7:B*%031C*$V!<:H5 M-;Y;1NV,94$P@C15<$Z4Q&-J>-+42/@S9D$?0^3 1^FCTKV,?&CS5SJ:63,< MZT#/3NKE$48)IW%\ALDVZZV4GS.&^B8@PO#]*_ +_-'ZK/\'6B3-3IM2A)?@ M#_A'X#*. 5M79DDB*$(B74K$@3E&%!5:R2@831U+[B[1?+"R3\=-S!2UZJSN MZ> V3AZ"^G<.ZLOC/VR-:R-'VR/[!#S YE"\\K.:CA+W^X2+ ! V6Z!O]R2& MYF;['AOZ%H"YO^4E>3.?C7[+\60*S_(6]ZA_^NGEZ)N62*\]H*7/^_9H%#*\ M(M+"-)QEE!^!'[UH-H(1 .HVL&]'GJSSQR;^_6)5.63&E4;SK<<]EY&'+^9O M\PBT1&A2QF"AKY"!QD^VTD$VB>;V*O3LX9Y=;(: M)WBL:9HT#]I<$Q,S7TU',%+^;4VXV=##S<[&TZH$:F &[CN!Y\.&.>=GV(EQ MMMD'K3CAQ]C/OMFSW^* MF(RLV\W&$*8.3).O6T@+ O4M8AXXS+&X5H/)TXI/%G='*\)5BT&Y.E;>*6& M.ZU>;SWNOMV!;ZSXZ%>+>A1NS\.X?G.1T9^R7YY\VY)^+Q9;39'&^!0%AN[E M;#5=Y$F=;I_>C1?K[(K3V;SF%& TJRZUK7&KHY&;0Q:Y(1J/<-$FY 7BB\\+ M"OC4[Q0L;&8&Q 34Q+SEU3L98RC,P_*:3_,YOA:,['+VMJK MC=_.<*3A89I1;AL\+7+SL,>COV$PJ'GPBVE.X\7I>('OV&0;[(P&AM\F=9": M:?EB:[;*2Y?"=;L1M]HW"_,C M?"-.^,)5>(X:N3K';404H5UZPN (.=67JY.FW76'M& MS59NLY9;RF_$(TSPF*W>GER*!]8$LSK'X^F[V>0=2D$'IEK)K.\X^!\7P;]0 MP,N0CG#A:@((]JO3D21)LTK.)Y8Y$KM^@9TP*$\$MW+4,PZ8VH'W)#F'/ 4U$[)>:T[8(U.M[(I8PO3+259 MBVFH])>@7\85E1M@\>-:^W45$JQAMUG$<($YZ!>X]*+RH6Z6;%TO1Z.FW@-7 MU,7#-2[40*RY+XH4J4F>(JNA#Y@VRHG+2A"5;' I<\%D^I1X>G7I7S3SAFVN MW^1YLZ;22YRS[M*Y6##T.@]>',$@]&C)W)H8UE=,N>"%;>F6OWK1\CJOE\Y7 MMZ*+'E(X+G%<*>5#<)9PG1*168,NR-F!Q!MGA0')#9VHE319LTQ!5RA10%<4 MK":WC BAH\T^:U@=E[5&.VM;?<%>/@ A^J/KAWTQTL><\A!!M5, IXCI$)(; MA^K?$,XU=DHIU'99*(1T09D2X*"">SP9:0,ZK MMMPK6,;3V1@NC^_UO[/Y[T>C-WDZ79Q/WOGIV-<%_C^8<_F/,8XV? *6W+H[ M<765X+L+9ZEU(_VBYS0A)8O(K$P$%CYN9DA%/+;:]5I2KZ)D3G<:2-ZI4PCX MH!>QT?,WS1Q5ZV?QP"WK[$5G:FQA_0.#2\L9CF?K6F=_!Q<#'!RL'@1@Q+C19R! 8S/-%F> MU)" O[Q>:D@$1',13W*JU9&3[)L(T:S&)MK/VZ(;C$ONQC6VRHK:2$EUG:I9 M6&^/?A-6$J7\K]4VQU1S^XN2DX]BR/2BZ =SQ18ZT^P=\DS X>MT[]*9AAI2::SCQ58]S?)2(&G2I8M_EJ*7L/!E;;QF.$CFL-1H/$P0-DK!:#Q7ZA8BX[SDWO MCB:?;\-#= 3J^5^K<:K-K>=;K[G)&]Q1V@.I2(](1>1 *C*0BO1K7[-&0)^P ME;^-\:A:$>9]W18\KUV%9BM0@;E140C6=8?L]&PRJUL%%WN2&Y<)81X69HU9 MSD%WPW7:G0 \=7T]OTKC!MDO-\C=;JB[IDUH]R1K=3!6J<;9:M[LEN!%PFI1 ML\&?LK/V6ZOQ)YAC4YG$<$1;!=OHSZV9J3.QNTU3#Z^5>>T\MJK]U*.R'X6Z M#;14Y2B==E;>Y_HIVT%]AFF[\?EOF99M1$(_Z(:62?YO [=ID3\ MB4ON!0#=3Y]A0:-5#CQDP:7 G#]#0B[@)ANAI1:&.MW)>K[3GMNNF_RW37+$ MX@4*\:+NP4W3F_DLPE^/,MR-R_?>-SX%#OK&8&\S"9K*VN9A4?XO]L5JZ:349G,WF_A_-6M ME*]+_[M:1CSC*J5DB'*:$ZD3RH@M(#+1"1]U"J;#['\7&?FNU58@\Z%MPGVK M%+Y>0L"A4_/4<37\1R\NJ+&>0L[9S1*:H^:7^ $_AG94U9&U^X*]#84NMM*C]*<_]^M#>LNL[9:PNJ2\NI\9A4JUM;*%=T MG_@;UF2O-USD'BK6WJT0QFE4J622'!J%U&KB"D!J44(F93P/.EY>(98QDXV6 MA(;HB)0\$(M-'Y44S):D>*T-WBXU:H9AS:'Z/[/Y[[@UY\]0/W_931LW;)KX M\+@1]7Y:-S;6L%D;@+]O!@163!V1EOD-G1OT-M(JKL4.%$H\05+0,W *ZFYV M[P0J@6P(&PS)6H% &=#,X((PXI24P?.8 ^]L]]Y:H-ZTX_ &A^%02"IZ61OY MJ-S2N(^YII?>D%/XY:9T8I]08V([J+^ZT0M"BHV%9ZNMY.W562]E-R<7O$F9 M6"' 7!":$>]!E!TMVLM,2Q:=4M_;F M-DN9F1'<,@P-)<4_-@7"1J(.934V9 MRT5P91U26:?RMYY)JTSU5F%Z[V2&.V=\]@HGW!+)A"&>%T:HS\:X(#TW'9D! ME5MD &.49,BH0#>%1LE*TXI5\2.S""'D)],ZN)YX\>'8B%GO>Q57HW% MFJR>MG)6KB8;'WVWIOX\F\_^F=OJI[8<9HNT?(0)O+LVV47X_A*_SMK5:4$+ M@"KD_LF=9]+8@+T]N9684*Z0JH62R)A0SH!8TD[WI5MCU0\P!J]7!R>NXKW, ML-WV5;!\ GS=)I%D0\3;1YW%<]:F. "/&A/F%/!'^$B43I1QIR@U'79S$VB, M( @DILR(1&YTQX,E)>22BRD(: \C![W$G_4&XG@..JB#.+^=C!?;<'&:/8;% M:RH5?+/A(AY/SU;+1=W+F($PS=^UFWY-IFKE$?L8\Y?X*/-76P'1$Y:UHQW M7--?GU\47,!;M_7%ETLNVD+CVQ5>C(>ZB^VVIU;!,N<9H#]@0#0Y8DW@X-%G MS6AVSNN.)A AP; G33SC CRNE(B/ 6N26-"NT*B9OR()OR8*OFDX:E],4TU, MZ>;F?]'=QH];'Z?IJM'L\,-YJP)/"#" T: \?]OD<+['?<:ZM''YURE;M-LA M-4<%S)/: Z0A0C\[F[0]9Q9;B>F@C9:YN= \8_UMDQ@1SR.R]IYDW]0U-8FO MS7'X82V>QT/?^3/,5:@/U8+7MEW49M8N+M$8;O(MVU*I2G2"G(:C%W5#LA+8 M+MO\SZU'7,[AWO656J;$K?-_F+X=3W.%N/6FT"*_Q8-W?=RK]SX3-8QGQ@G( MMP,[&]25XQ*T%XLL.L4+UYWJHMO$%=92_FN; ?RZ7+$!L/CN?.NO?3NAZZ3< MG%XL;_KH_Q][O)RU\-[:JB%JM39,+^=RL4%_IGTVA@W>M@O45T1=.# MU6DMW&_(DC%["K.#)S-,E;K)WOBG,.#LI$3?7'AP!II#S2@]IE^O3X IG?BS17ZVR&<>:W?7 MFX/SNC-=K[UY!GB(34;I.Q"X1J4^6U]CZT X,FT2->MM+3WF0G^-&:?[#V+' M3EYWR'7?JV/+Q:TN\N<_+>=7O6*;]VIAAH./O[^=@ZI)I%T$I?YW]2+ (JXF MV_99DW.+'^P9'0#))?)4M)NOS9[LGGQ:>X_IM'=)6=BW@K^IZ#I;+9" ZMN= M_))EZO4HW,KTN2)3^/+KP:CBMW5O]:.O>F6J^3V^?%W>]_WV3^J-KT&1JBBZ M,!)+H27>"C&N?.;;+*#'[FVW;WS;^MFU*M]B!MKTHKAH;;&W1^3ABP6C$4Q[ M3S+SF4@1/ E1%E*"*/"1-LYWHAFWB::NK;Q7TXBYL?G[W/S[:KKV;G[9O/5> M-T;LN#'7-1/G1X(?C'!DWVC>"/C[+_4AO< Q>!];$D2D(J$ML\>F*5!1M?"^VB\-1V$Z@/E.OSRZ:_VJN6Q*T& M2"JTKA/#7DRW0R0O&@^I1>'FR /AC3UR=']X_7-=*@]I)ZS=C<%.^.HO;^:8 MX][V,MH$K 9M\V26T*!D=C)$I)4T@I)QU ML I1 5\A #+4V>L^+9+U3,NLE M_&;B:VG/#^M5?""%(^3^./W36BN#6_JIJ^X7'"@R*Z3N=#2^:<,;VE1:5KU><#_A M>JOK\G7Y^Z)1. ?2'.Q(#Z[*X*H<:+V\FB[]].T8XY4$"R8&J@-": *B V&.F-45J[3^>6QG96+1=P<7%.,?COQ MT[_.9@F9N@ZE>D#WL/VI\D]KV0Q^RZT)'IP03YU;51KI8U;#:K@ M4Q?.AO-RS5YZMAS5FH#1_\_>FS:WF257@Y_G7R TT=/E""3[[HO*=D1UN?N= MZJFI3\Z[BJB&P1H+"K)OW[R/@ HD!!%B@3 AT#*;19(/,M=,D_FW<[9 MDA!^':[UQ$Y_N 5.-)QP'8Q)+D-N&J;*- UH%SAX44)57@E7]Q).5B<8]KG\ MSN\_1'YHIU@A,9.OQRV.-O#8%A7MGOI$Y-W>"]X]9_O!["L\47V)4+]U:@9W M-O!3J#J;'(]&+;>.SK%04[4"BNC8;V("SX,&X4+66NDF5-&W&;*]1BLIA]H= M.&*]&M^@\<^^=I5_X3 8Q9BS\:-SC3'?'>6(A(O5\EHUQ-3B#X8I<-EB_(E. M)NN83*YWJSIK7-CZHAMX[2F(F:'3]XLSO5;?>]SA@'L/?M":SGXF\RB4T

    MS>SU-QS*%(T0K@!/KG$\Q J1:P;:.ML.$RIO=B1(GSQ3^!B2DV^+78K=3UMZ MRO.%+Q+=GC!4HXG#=5?\4A8T;7C8."@N1//./%VV/8PO& E?YESJ8QKCU0?% M>XZ]*Z9U]@RL9++IW7*(S NH7.A2BFODR2\XIMMLNOCBV.Z7O6T'%V8HA3]F M.+QC9*][ 0T_MZY;\2IMDR#]ZUI5\IGC6%M5E +T"?:1(7F]WDZ[#7<6!UI%:]HP#T4LLL8H2J9 7E,J)"C@62 M4)$)S975.Z3K)C,62PP0A!(M<4[@M2G@.$\*;4XQDP^[TS>7U2[]GYLHP-V- MOWLC$>RC+,"P?R;$A:I9: M9VD:?8 2XR@P87E41T99@W0[SBBH\5[0XT_A6 M\'X.3GD/ACFADB_6U1V9]M=G0JZ?++4-KGIG1<$)'Z3-P&-%BY :$QE5 V . M4XP,RBNV,SE=*F8^4F+R$YI(3[?-AQ6$L6JX*9)K[AZC4-=S*^(7]V\S?4D@ MFI5&R+_ FH\[?M#R^>#M[V56L(J89>-C5O37G8#B,VA0S"86A26A5 FXJ0K'/)RA*4]/N(:7^]M^O_LZOGSZ-:;O4MS$MZ MFY>S3R7,7B2QL0\0:!Z_1,,#V4#A%2% :$@I(#2HDB&&;#"O0311LBA7=L9% M3PE*K\\&VMFEGAE!%Y$.9 DNV M[[5HH'+&F8NL)=>-\K(=N?(!QVX^<0QU)6N^JX%J,5CF8@V$& VH%"I$PQU( MBTA90^69D0;J4S50O^!6G=KQX+LW-U^]^:=6W1<$PMZ-%C/7Q22KP:J"9EP+ MIFI22"BU:%^"CC[OS#D\Q8S_#1\X0\-L?ETF\Y4^:YA?=N)1/\RP@]YW^BWS M&W76]8:E?>GV=;20SK.;2?+OX=/ M7^,D/PFQ9.SDRW5U5P*0:_6@Z:1T@\I^SGE+'0KVO09MYAC!\^BZ$. MFO#58/'[=#/IT%^A6(=C,V,D S07CF.VVF3:D@(>3G-$@ M0K6(,-XT'>T*3LEBK(@*@]5QA&)[:2=?$HK]HFKCRY7U8FMHV*37FDYMPG03 MRSE>S-::<.LAXUI3[HZD7)=)K2L7EIXS/#+.X7A1,E^6J;7S9 MO*I);NT*OXVN\.L/.\)O\\OI#,O?U.56LE[3R?OUKU>CCRL6\(_736OHSHVS M$IJ2Y60QQ0OSO G!70VFHW%WR_N KCD>X=L[X6=,LYK,O.:*UYT=%%'A\-7("-HSS!Z3Q>%K MQ>%K5-4)68UU41]!7NXQ12=YN5O;R/";\K$-?:R MJ<*;VTITX_(1,A:I \ FQ;:\FGR?1_/K/?PZ=YTYW;[K]-YW1[][[< M,\_I@,/O3-Y#:W]A.^%N6^]9??&Q $7JB[36[1.B=U$ FT:0+9UBJ(F>,(ICKCHA*&U[U,7>V52P!;:*UB M@\.&-M&QI^,G^GXI@CUUPLJMVG#F144V53)"*X==YC)O6[TUA"(]%%ZCYC(; MG^W=7J\Q)N&+!>4:4Y*S;9B;#!@AK:J!&<'+"XIL\J'R]U- [*DU263S='DT M2&3S<6L=43##90!NH@9E4@2G687*H^"Q).E-_P+& 40VQ=#P Q_DE(:C77VXW^DE'9V3D.AYM84FK'6%V& :5= "68A>B9 *Y8$RR5H MNT-8^910LV^E-#9T\L#D7*_&HFD$\ES?(*4TXE/>9Z>? 9_R/<<*5$%4T4TI M33<)&Q7!2\7!>.E"*+H*N[-Q^2GA9/]*:4+RLZ0^[OG(@QB/22J-ABTT;-G9 M*A:TRB:!+RF!\CR!DS*!C=4D5[,H:F?3T$O/D.TY7 VMN9\)\KQ\@P9 ^]H" M2OHR%&/.+\8<1QLF5VYKL1D,%XT[T'GPJBWM*"Y"#2%8_RR"AM M-H+7(B;3;]!^AOMM^&T&B_#Q)J)]HCA&\WHTK]>36*A-#C4Y!;8J":H*#<%B MF,LF"AVUJT6$OL7"#:S\%C[N7WF-&W>6TX^O15>4YB%)>8V4UTAY[;!AL:0L M-8X$@6G9*&B5 <=T "D-X]JP:NQ+'F@ZEO*:&$IO2'F-E-=(>>T;!8]BU%I6 M"<7FIKRF)7C#&$A="N->.YUW=G-%%9@2L4#)C756*(NIN+,@:F$(/HD)+E\: M/[Z53_1^\#B^^?589:U$[J17'EB13;33!?!-KX@+HTR-+/"RPVKM)5/%1P$^ MM^-0QG"(UK/V25E3)-..O2YSL;TTEWZRRXH<=4!00$3)"!;5X@!*< :(+"8E MY3-:P$Z"$GAV7C,P7$90,1CPF+. %5)7D8*(U;XNBV&]U.#KL7J:E8=#[J:2DESWR3@;6A+7^9!"X[#EJ* MF)5/!OMU'\'F]=D 9X/>6<'AU-.<=*XJP:&:($$5=&EG-(Y7O[A MMB>$$+*#?92)U-/ZJY[V_X;QAS"[H9INA&T_CZ[P[?GP/?3X4IY#GWU%T>UO M8;(,LT\#SEZ5IILQS#J)D=?:W+1K&[52:;SB.7BMJV>I[&RPU"H:KPR#'&S" M"%\%9FR)@RU!R^I4RFWV@33=GJ3I=K^S;PMGC?#B^3+.1WD49FT3WP^S?Z ! M7N'MD[!2]=G:'I;JS;^(I=O;2$F']E83ZBD38 M2^JZ_# ?-#V!5HPPOJM+LYJ+PQBLL)4.2"VZ]L,D MKT[!IC1;EOR8+6FG8 UM+@*?.R]=UK,"B>48P:. /#J@*EC1_>.T!I#K>/NCY_O M&$^7'V;=WS #FO]CE+$,3C9J@DG8X/,RZS*G]E\L=@VSJWFSJ ;J M8;#:EH,WS!?XG+AF$\40A 5*GP;7T]_Q'OQ\$Z1NJ7-=%ZSC1F^K26]>X9U= MX&FA;3%;IL5:,KC.PNIW+-ZJR*N'CN^(EFV:M,R_(#\6\H>6,MY5$;N>KK_? M$O;:ZIKY:(QUZ53 )IO>"0OLSK7>#+;3/[#E6]T[J1\TKRYQ:CU\TWN#-0%[ M4V'#D#9!.WE?IN_1J#"A73_B2YRY=\4FER/(@.,:%96!$#R&-)Z3L]$4 M\P4&3"]D43E *C(T:F9,5(OFD$(5MFW]+=4?08WL,44G-;);6ZOV++?TV!X@ MN:7;EY#<$LDMO9K]SB2W=#8UIK/V^SIKORNW]*(Z/$5&7V+F4"JF;4JU'>6L M6M Q*LF8B3+L9'E:Q\JECN"KQ_%OM!:\=QRR%Y9QEEA6.UG>$75XQ%!]A2-C M3ZU).CRG>TB;='@>!1W>VV";''SB;:N>BAR\]NT<2L,2&V5Q[D"K7[W2X9%# MH8B;^CEY M$8D [/"48;HN/9PQ8+3"RK8QFT:T"C@4,#9=\!)0;#$JH,DD@45LP"7682<32I"5,O, M7M;U7Z,*#Q]:>V#"FE?C-332>:[_D0H/4;011=MSY^\]US(H!B*&"DH*#%)RVRB"+N<,<\)5SM.9+HH3@NUTMOJ,]Z/M AQC-27J!1$8V*=J;A"I5#&6G \2E#>)9M339;U;JUGKXL\G V](NDY&OOL=S<(*2]0C#F_&',< MMFF7E#2J%"@UZ8YT"")KM'C,*-N$3ZO?ZV'V_BLOJ*$SI[=3X;602?<;M/>A MO#":I.E5(0$&FMVCV;U>AL3JM&7,2\@)8YS2C?HS5@9,6F6\SC;EO1 )O!H! M!F_.4__UM:@5T70D"3"0 ,),!PV+ HC)>>E@FS4I(HE!K[(!*R=C"E656-> M3BJ')$I+]PPB2(7]1?.!W-A=IT67(44$5HFBTU0U"R0O#<:!,] MY[N47*;Z(*3-C2,&8<9$!DXJ [%R1!AADXH[Y^;VNTTLEWHO/^Z^"&3XQ?V[ MDX]OAB]([=)K2G^KM$]!.. :+5 YB599T""S8\EX5TQ1.R(0.4;N?/+@O"J- MU,%"J$'BKREZ+ZS0Z<#;'(]AO^SB?G':%[#?_M/\HR5E['H+0C#=8,U ,-* M*SI:8YW2>L>44M56%TRVT'8L*)XK^&94I3*O6%0F&[4W:N\VOIR7R4NQ>W=D MVKVC^+[83FK..#>Y7'.'CAL@=>PY+>M8<=F@RSR6>6=6QBOZPND.VR$^Y3/= M6+O_MUF8S''\E#LW'EPO9PE+439$ (T3X,[C_I]RE::W'CKJ&'\;R6*[IJO M(.2_8W[5#AIM$W8U;JZ=:NWF6M=8GO;FU:,^7[RA?&R/F2_3Y4V+3%9*RS&, M5R1:F_?4QKB&*5Z[;C[?\/?=-,JLE!L>UG;_AFUKOL$T[.CQ"'NNT6=O:"'7 M?%FMK:]7_%G84MB:V&Z-66N.YH1A)(7) BN<5]1?B^VFQ>9(97!50N,SZ\IT MC?XW;<^\Q4.YL83YDRUA4XU5T38%7;5B8Z5KU>EXQ#Y@]ZQ:;C2YPT!6EXW7 M;)=W?VSQ2:MVL]O$4H-8E&RJYCA%PFY-N,UY;^=_UM+7+BHYOOAC,0R,"7'TU_S0IV(>-9F^KT;8P M[ [U'OXZF>+0O^3&Z==@J(./A@?+&4("/NB?X^Q/_]K]^&&;LV^2.X;T]ZN: M?S;A&ZKG-J?;:&@;+W:;:._*\&Z!_UE1W&)+_[1:IVQTN%N%O$4-V!*MSJ\W M'-.K!FXW=(W0,K)Q>=]H"C_#]A#10KUUSP %J["*K@T!ES/@$Z<.ZE-D+7 M_!C!@-GTKRW7^VFR2OF^P@]X=L!UFV5P.0D(#5UDF$U7"?)6;!E];K]M$:\2KHS9*ZY+D M%J\:"NRD4&^W[1?-L'SL?'%ERVF,T>M?WER']P4FTUPVS?#FMJF/RT?("*W= M@*ZQ^BVO)M_GT?QZ'#Z];=]^?[WBZ]Q:JQNM6GB]JK7Z0TNQ1O73YBW=K8"Y MT_=Q^K'U6B,HO)GF_/C(N;N[WRWWSG"XX_,+6'MK["]/1.ZU] M(I2:FE_(!^DP+\2S&37YA7;BN0]Y?CG,A7"0W_[V^6LE,$5_GXY'V#>@ZG=WY:3,I!L M^'23>_.C=Z"-YT:%YB<\CNA^,W7PXP$%%N>XFRP?SRS9? MUE0^]DYZ_CHQ[2'6\_/#-,&$(O@Z0A+PFL8*Y"]?\Q=)_D)),SD,!9A^.0P% MF%/Q%PHPO>39ZO?!K&<>5)N'<9D_QN[ZW0HO?3SMQ3N>!%*>M<<^X7.YT)Q32P9%HO9*"Y7 M.]L7T\&/?_GQU\%?)A]&L^FD'>X*X\&/T]GU!<60L_$OBB&W9AQQ@*ZMT-"D M7T QS'^]#A&T$MQ5'*#[74GFI\PX_M2:K,P7JX.4?UF=<-Q?"%%#Y2B $&91 MEYX!9O'*4O:60]#.(OY(#CZ:V#ADJK0J!57V,MUX<,P2GI9("+.H2\\ LXSC MU?""2&5"4R7/&B+3%;(M1?&8-?RMKY.+?PFS24=B=7/"[>UC3*DW57^QO=3] ,FC[I0_PRJ319]T]YYAE](.$Z]1.^S/83Y*-._U"J<%:%_P'B? /'=5 M* M)EW7_?%OH_$2C9IR\%?H8Q2 ]KE7.F:3A#' M+:@?$S@N2I@;:G.NIIDW9$' M/MBTZ]HK:=:!LG#*P@D$CP>"J;@@ R)8# 6S\%S 86(.23L3JHS6\!URAX-- MO!((OC80I+2/$.^5(9ZU6>'HT8)VW1&Y%,"Y7$%8SHO40KO=U?:#3;V^ .+1 MY.L)> 6!(('@\QB@-2_*"O#9XC@V, U!60=%AJ"E4,$$<;3)U^.#($V_?F'Z M%3\W_JI_W33-+\NNP?]U+>5\ADKUGU7I-P+SE^%#DXHO$_RNZ4R7W"[8EJH/ MX\'U-;II/QIT&8Y$83UB2P!R$WE?;&"#9O-&'A:HK6\S]K2?GVL-%D M$2;O1XU&+,SG!2_[?;2X'-11\X3!>%3+$,M2QR4M!DUV?/W&T?IHZZ"L3K7B MF]$?XF*PG.-#\4UUB:6X(UX_[(J&7\Y*FLY67Z_YS!;A8W/^>?GO99FD5I/: M??VY0;9JX )^ M$Q:#WZ?+<5ZU^C2EY:RUT658E14?FR[#?-T?5Z&U[TU)8T&K:B8#]]G !KL*GU9L'G?Y@P99<+&?E-I/;E_P%G6I;)'[+(A_RB!O, M7C_PACU6JYP=#LT5CL]5DIB#"IG 2^5PW*V*4#O'I*-41CBA,%OU"-D\*'"J M<<_&:$0P$K\R=R'[77G?NO4_2NLS;,!_&\W3>#K'2O^&#_[S>)K^\690$'>O MVZK*;%D>!W8O" 3;@C1[0 9N+OZ//R_GHTF9SP?KUAK\]!D!-J;1@Z(.MLWT M# '\Q^D5OO?3__5_.L'M]_-M[VZ:H=/9^S#!E^0."6?EPZC\CK_$3^CVD_"^ M=#T;QE-$D0Z&1X@1\RDF*]T3$#\*WH;U_T<#Z@XN&D+,UR8Q+[,/6-+VZ,^@ MTU#D]P:YS;LZNLCUY2L8W8:BK6>MBGM3P,7E;+I\?]E=T>HFV/>K1&M0, \>DBPF+KDW:6F6+"_BI4TT*K6!=EK5Z%[Y[];CG6/+CL.Z^SKL@ MP[UEN%^PE[L6/!^T-?+KKOOF(WQCF+60G)=IL3+"9H\C#.;#=FU&!)^-XNK& MBBGU]/?YV]?:Z-T3# MWQ$!9G_Z/>"CNH^#Q:R$+L<;#J98NM4%^&Q,?+M'K1+(SQ=AYS:@:7^=A ^8 MEV(9YF4\7V6:5Z,\;Q=?M8=U?WD?6HG38CI;H]_:[/&/Y1^K##GG60NSK2+O MQ].(S\SEJMU;._C=9MAM?\6$=73=M0!6;%%60][/D'V#XI<89K%"Y7,+7H_# MHH7P^3I9;ZECN1IAT[0;/\>#X:".ER,,$GA/^H29T:1Y%)8/HS^6(4TQ+1XE M_-.=9JJC\6+3 >WW'*X0IE>>B5E[F+07#?X^';500([X!9O_:9*Q;6[;<8>1HCG"-3+&Y-J[\8R M3E9&UGZ;3<<;^[S$*\:=6Z\2D%5A/EMART3"]?6X&XMUI5NFRQ8,PGB)SUQ> MH85_0,AX7P8I3#:19&6^2S29:1R-RZT_U^ETE4C=W+@-+G-T)BQBNQHK4T.< MK=\\')0VG$4_1K>Y]4#$H;)RZYLR88^,;V-6>REVR[*&A .S[F\8V]"*)UO. M%OY[&1+F53B(V>1KMP$'!]NC.>)"PG[ Q&?64 "O;,/Q43>*3.,25JT^#[5L M)Y(=$%U=CZ>?2D,"Q))EZL # ??]IVX8O;RZ7I4%*X&1^7_:UQW,=C??O',- MDZ6T81<^Z/T2,6DZ0SALDH*$ MK[ZZ;KOF5B SS:V@X]&-P6RRR(:'7T*_U@_;';6>R<#"C,?KMMTR7#3/5?EO MF]\M*/OR>/@AA[MG/!RK<*X=D]1<5%#!9G"I,&C[2F.)SGB[LW_T2>/A=(E= M.BZ_UKLCXZTQWY\_K;^\;XS<%01-N.0?%H\M_7_Q^S8>]A3^]Y3\5K3025JA MX0HQM^;7!J/Y/2GK9AISG2;OMEK#K8UV;"LY=F&;5VV7PSA\FBX76)B/)7^_ M*AAG[(+]87-#:M/.U_/R=AW7RZ8)NPG[U;/??&DGZX?1?(18.5I\>KMYQCU; M5%>O5>9"_>'[-W_ZRB7\@HN'+GGH>W8A'-OZ]^ -5*83*=,#6Z[=5VDNCLG- M]YJTOD^\>C=$.(:DS'S\GPB['L&%=W[8)9A0!%,4Z\E?'NTO MDOR%_(7\A>(+^0OY"\67?@\;2:_EVVVPJ4//FX[YX+MQ6WD?31:S ,/55FVX MV0K0KMC[L/)5G;\DCG6J,EGTN73O&5:9+/JDN_<,JTP6?=+=>W)5/IJR2[^9 M4YXC1WGO40,BE'F%A\6)2V&/7 K*1)>$\R!Y&Y/\H'\ID639$"JT0_WNTN/QQO7W\ M+Q_7&[=_F,_;L9O\6_BX)VEC;X?2$U,6 5OONY2 ;9\,W3;Y(+B"RJ(%59.' M$)2 &)I4B\7?F;L+;+FR9$(T8'@(H(3$>V+H3CB86*HQH8;^ )NS0RT(V C8 M>M^E!&Q[!#9>19$J)2@U-A9G%2!PIT :6[,I0G._0P'(HB\Y) . M*QPL!JE5$+4Z8?L#;-R9H56]=2LBV1V2K2A938H!H.:9L)C$(PB>H MRDNAJBT\U9U#L949)6,$YG'HBFB(&&>\A:03XPPA,077(V0S?.@MD9@^9V;S M"?(I_8;-9_C18Q@;**X\UZ$>WH/V:ESNB9W^3;OP3BDDE9Q2ULQ 407#2\9 MX[C!%-IR793A3M?=9-N:4D0-(&UC1XBU@M=9 .;:P9B(V2W?41AXN9"DV)#+ M S/*/F93XJF[$.$FX>;YX"93Q@3'*U2/^;R2(D&4TH 7+%5GF,>[>C1)H?C0:$^X2;A)N$FXN2_XZ8?6''CF^*1P\VC[9KO2KS6T^9[$N?EK%.?^ M;=J8K">;LX,4T/;KC^)"-(?,TV6C"'W!D/8RBYZ/:8P3C6Y:J62$LF =!BG5 MXEQ0-F*($RRJ*'@-^FYT"T'K:E5N6W-Q5,!XP?%!=L"9*5S9S' HT9_HQN41 M-K-]U8)>7X C'"4<)1S]%ASU.84@0X:V;@=*5 _>&0^&"2V#CX5K?A='C6@BK:/.%H+P9L,S'GE3.#!\QZ-$KCP0^X.O'6.<)1PE'#TC'&426&9J-T$ M-?ZPI0DY5@,N*>T+3U';O:@YOAR."B.'3BO"4<)1PE'"T4/M+E,2P$2# M2.@E V=#@1!P3&]$TBGNX*A5I;(@*MBD.2@='$3+. @7M(R8R*KD>X2CB@^M M(AQ]MJSY(XINODDUR3PLFG0HF:2=ZI/XT?8EYR?J0V5ZW -[*)!P8ERB9\6] M2SHN)(=$;D1NM'2JR!_(7^A^$+^ M0O[2.W^A^$)R2"\ZP0Q($)$% 52:+/H/N/<,J MDT6?=/>>897)HD^Z>T^NRB1\]-B!# D?$=GT35V);/IQPD=!F5)3 &\9 Q5= M!5]$ :^M9S9Q[MS.WNNG"!_]NIHOF+Q?32+\/)W/]W76SP_EH9D[7\VF:0*N M'G)$09.32V!^4Y\SKL4!(_1=CH@,"EALP=F#J3 M@(N BX"K5\"%Z94T/E@HRC9Y#]>$BY2 REEL?.D! 6T?PD6' RZIAX:1>@-2IPP^>\R>0D0XLLY#$C4[J4KD;B?C>HHNT>& 2\BA\P<^ MA?MJ@(MDAY[K)B0[=*)AXZB9P(E&"\Z2"LYFJ+:81D6<<*2.T:)XHZ*O,EK# M]B$9=+AH@5FNH>$YP15UZ1G 57;.5%T=1*$4J)0QO1&L@O0UQ1HC\[NBFT]1 MZCD<7*FA=H;@BN"*NO3TX0J3*%XPC0++O ,EE8:8@P56A!4(.Q$'V/L0R#G@ MZH<86DJO"*^H2\\!KU1Q7&@>FFPLXE5Q&G PZ$$&+7D.2=BT0]W_%&&: ^)5 M$X@],*/TJS%NVI/X7#?Y<3J[GC86OD&8Y,&OB\LRVS3V_6]H%0!U8=!SMO[I M^[1V/K>"N;!XT?5T/FI&^W96QN@D'\K]%"'\4;P@_>Z=EPY5I,-V!CILWSWL MM7L(G]$7);+F8+BKF+I[!J$R!38%*7R*MLB=79J258L1- /WN6D/&P^N)@4\ MRQ"KMQI-R$O(2\C;%^1E.=5LC001 M34+DM1:\]A(BYO!*Z%!J:@@ZH@C'AZE;*H02N:70%XV M9):0EY"7D)>0M__(6TJP07@/-6.FJXQ$%/5<0JV8[2;O0Q8[R"M8J%RK L++ M=@\K$*4(((N4-4M7F=[OE-'CD%?RH9+G*?9.R$O(2\C[NI"W)FF5=A**E[%M M](W@I+"@3U%1/YP*]%^*/2!3]^=F)0$4P23!),$DP>"B83+UD&*:$EE: *CIR]L16J M9,;57*R4.T/NI^B['Y:JRY!\^[/EV]<-^,ORJLQ&"7_/HP__^L_X8Y#&88X] M@6UU!>/1? %E7!I_0F=OV*\W1,=Y-+\>AT]OZ[A\W*ZRQ!;X^W*^&-5/FS)V MU\!\$6:+[[OJ07O\_&T,\S(>39CII,) 1([CO^B,M_F_^,KMZW2ZF$P7977K+[_]ES8LB5HLU)+1ZU5F$%W[ MD83G0OB<7'PS^'@U?CL.D_?_\J9,X#_?':=Y=V1-QLN,EZ:;/?D(']=E,N_: M8CBXGDUKF<_Q!<(-QUYV-EX^=I=Q"K.OPOL!DFLNFO&]N^5[GGGDT*UW$ MP/8<+Z\FW]\"L>N0,P:MK07$T:HIUDMMJS]\T>_+)&/<^-AJCT]X>Q-"/CXR M3O!GM-#S-*\^%^+F>\PI6^KPU]GTZMV*V&G^V_3'Z:1;YT<4S[]A0?X\GJ9_O!D4 M3#&OV\+V;%ENEKS_NWL[+=6CA9&,S76:_>O:;+RWC?QC-1Q$KMOCT=O.,^X[@ M=:]5YD+]H3G'_9?P"RX>NN2A[]F%<&SKWX,W4)E.I$P]E'G_ MR^9D7$LU(0 M-:0@>G=[T>6LE,$5_GXY'V#B6/+@;\M)&4@V)&%1YT;O11W*B0XM: MO42T/[[7[M,LOQM-!HO+Z7(>)GG^J.,4?6F%%Q/'.S_L$DPH@BF*]>0OC_87 M2?Y"_D+^0O&%_(7\A>)+OX>-#QQ*/.:X\:4/&3[:!O]]UDX9+CYUFQ3*?R]' MUVUU:]"6/1]]\K W#?-BV-6/G7M'C4QG6&6RZ)/NWC.L,EGT27?O&5:9+/JD MN_?DJDQ4ZH\=TMS7OG^9X(M*F94\>/=IWK;ID?CB*U8D(,W>?1Z]\M(RWV3- M@E5-A5& $\:"KE(H'8-VSN_(FC%I1(X5N#8>5 ZR\9Y4T,SFQ)P05N^PG:PW MQ?ZEG67(H\5R5GY83R#\-OUY.GG_\^A#R3_,YV6QM_/]GI$8!Z%9W[N4T&R? MQ(2U1NUM!*Y41&1R"6+B%:Q-J3I=0ZR[*D*5)1.B <-# "6DAQ!#=YK-Q%*- M"36\/)HI1;+DA&:][U)"LWT27'->$+,,Y* QSQ((2MZ:#$I*'KGB7C*UHY = M?H5GO%I; M&_D^HAAF9Q8'G+ZP%7F "ZH('W:RLUB943)&8%XSP"P(D("=!4.E L28I$2A*M&>)E8,7PG);:F%%$#2-M(:F+% M-%IG 9@1!V,B=X;+EP\A2I#6.8$8=>D9@!@F.XS;'"#$MGYB> *OC((:=54N M>F'\#GF)+T&;[!Q8:P2HHC/B%^> ?\3[F;()Q$ZN2T\4 MQ!3F71GQ"E1H['W.EI:)9?S$0TC5I:3%COJ>\]S;&, )C2"6I(,H,3$K06DF MFNA&3"\/8GS(I"88(QBC+CU]&#,U"9XPI2HN2E"R)@@-RX()#/,JQN+N@#)G M(8W/$G)LND \,HA91% Z.YYMTDGNZ%B\!(Q9?F!ANU=C\[2'\KG>\^,-'6T[ M!M;1(%+,($E6DF1]:OH<3!-"99BN4=I$A9$*J MJ8 2*4 T'C/P)@-B>-O"OLOW;)WQWF;P2FA0*BJ(.FIP/$J9HK9*YI>'2SY4 MS!!<$EP27!)<[NU43U8R21: %\% 641*IQ0#X[+@5A;I MN9G&6A\K8[2WBI M0!E6($H1 *^6-4M7F>[!K(8: M% 6%F5 RDR'L+LAK$6PN>'D;QH-JGQQ"$TBI7.8EALC+R\,E'VIQX&.0)P67 M1]N^VI5^-,E8J-53GPC.ZU;IA&*ZYVP_F-T5]^GAQ/)OTT48-P6U9Y.,47@C MK5726GUPXME&94W@($S;?%8QZKF@(TB6F;'<\>S-W5@7@M;5JMR.^0M0C!=P M(CO@S!2N;&8E]^# /PX-!"E5T^" T)/0\V#ST%[Q6$L [5+3'30)7(P1JG2L MRI1#$3O;18QG(A;GH(IH045K(7B3@3FO'")Q\+P'$RMBR,V!-^\2>A)Z$GJ> M,7K&FHP5B(1:. ;*V-JFF#.HY$6LJGA=W#Y46X^/GG8H).6>A)Z$GH2>AT)/ M'S-FE]J"E2RMSKYZ!#\PR1K-$TN>[YRX:-LC6! 5;-(ET=/.?3\P*=?3PP]M^>I\7/3 G]4T]T 23CU7]A<21=^[#?Y;P7O2 M*'3+L^W,0KB:8C7_I_L#:9.2-BE5F2SZ#+KW#*M,%GW2W7N&52:+/NGN/;DJ M$YOG8\ ,\\48&PC6$(!24D*7(UK8MU?M01-^> M0L#/X](^_##)/VS-).R-!<1QD@\F(.M]EQ*0[?.TG90B:6E JI!!&2' AUJ M"Y6K+HSKD/52@&7'%6[^#74V3/CXA?7M$@GM"+NO0,T$OC>!L'X@I8-*XID&D( M67MP.0:M=(E,JGWHG1]U["[T@<4A3MW8";].KDM/%+^4:%S3R6(!K6HK*0)< M*APJ3Z;D6EW!)WI/"25(P?QD%\_Q<1C *:B2"1B)H#\Z7L,2- M%1HR;QM:DVHG[7$DD'4(+ CF<]F)<$^1+S_J63!E#KP)]L34SP@V"38)-K]- M.])X*5."DATF^2P;",(6T"IHIHW65NXW7 M(5%NY(4T]D&A:_V@COE#WZL+:RW[_._YXMLO7282Z'Q<..G>=DR!SA-3]"&) MJ*^;S49=>$#::H>DDS^9"I,K?47I*I6K6&8#R3MW(NFU5RN]ADWU\L/OYUGC M3VU7R*B.N@P[S.=E,2?=$](]H2J319]!]YYY M=%NM8SP+*+)M:X_<0Q#&0&+:,LNTU&*':UEY)F/3O'""&PA*-<4,%TRQ MT1:I[ZY!_- EH7M:95#"#JT\\/')5[."0XRXEL-HG5X:6048;&[V2;Z? MV^*GBV"%#%854TS8.=]H')/%2P%21@-*:M/VI@BHIIK"5!!>[U#[[A>LI!@R M[PBL]C#3<_:I+#&_GVB<(.Z^YX<'P[43RAO02K6],1(#A3,9A J!Y6RSE#N2 ME(7G4$65$--J&R*&E,;\'FO%4*%<<7Z')&2OX8$K->24RQ)&49>> T;)Y *F M,AH\QQ_*Y:8TX3.4=HPDZ1BT-#OC;9V9L4H"SQPQ*E4-K@0C];V@5 '5AG-_^I^\[3O^Y%-ZF=5B3^C,&F#9>!^Y]<(>-;\(,A3FP1,E)L:<0%!(4$A0^ M (7,95U5L9"#;L+RJ4+$T3[$*I4O412>[4ZJ'U7DT0:HHAVG3)PC*&8#*69F MJ_4RUAV6J?U"(1LJ?=2#CZ\<"OM-)'5W>' B+%*CI^UOI%!%QU+I6.K#T^C% MY,(]>&<+J,(P,6?2@M=&V-1T<83>.99:N<_.2F!M8DIIJ\$+RT!RG1'I3'1\ MYUCJ7N.6]F[()9W8IRR>H)&@\5#0&$T(CE5,RFNLH%QU$$J0P+47O,3D0MR9 MW:@F2\TQ^7?X7[RG$T,T^(@D&7-%NE@/.[MA&!L*3]1YSSZ5GT]Q)__7+ M-W4=35IQH:OR5^IX:Y:]->K&V#;'^>\^<>V/=3I=3*:+LG+&7W[[K^)JJ:)H M8$X$4,P8S%DE G\Y[OCM,R#:Q[K84L# MBSG:T>!ZAMXZPX<.IG60PORRNW0T2=.K,EB$CX-NZ:+D]7T7-Y:[U3#X&S;G MS<^5O_^RO"JS4=K\]0C^MW&MZUN]^PU4$C?PNR[[>1-7U)/".(&D12J2H$ M9A5H+HPL.ACK\CYHIMZERY*7X_)K_5_3:?Y]-![_A@_\\WB:_O%F4!"#K]MP M?+9<0_UHLBSYA\5C2_A?_&9\3Q081(%QIPN( H,H,.C;-+0O9W$$4.FZ3 YP57ONY3@:I]2 M =R5$@('DXL')6,!KXR :*M2U6OAW,[1YJ] MCQ1T8.5\#ZPD85WV$CAK]$I-!3:HS*!P5H3DJ::XHW[X%/Z,/0<9XX?,&3JR M0FDS@2&!X;[ T+I4>-$XNM>L@&IRAIXEW5)HQ7RM7(6=C/LI1!T' $-O"0S[ M-\=,Y_<^G]][_PV+LQ2AZ&0*G4QYD'?#\NQ*]%C B*%'M7/FD3E@2GOO4XA1 MJGT'#O@9-0VTFUNM!2_N$KB?3>='<[6UV?'PI; MQOK8,T1//\7VX/FKU:7MR6]'F*Z/TOW^%F=_^FR/=RIT\T4?2OK39#$+L%XF MZ,[6_=0 [N8O_U$^E,FRW.(1V>OIM622#:(&2%8C".E2( 0FP&I3C:G)R"B? MH7O_32X#//!U7*\&%TC"J(5C.;=(M/B,BP&\S(>#Q;300GI">ZKT4:@MXXPXD<653B0CYX.)")9QX.=!=:L*U_SS^O2$6B(CVE2$7#$8Z2O MW)H(D B0CGH0Z!0J2Q5\[14D19Y%G[<&S[C_'2)Y%GD6>]53/VB6\(7\B?R)_>JH__5(6S]E] MM/V*[3K^\4>L0)R-_CC$ ?XY[P:V,]G2KN9AV^?NOR\5\ ME$OW^4=,0Z97948H242M+S?9AR"SVO9(O);$:TE5)HL^@^X]PRJ319]T]YYA MEVS=26B)\X_8N9<3Z(/9? M9].K'Z=MRT5:_._1XG(S-?N7CVF\S*/)^Z8(C?_+OX6/^^)F9F+(U8%EH5\- M;P0A6X^[E)#M2P<\!J-KRC5[=52DG&/[XZ<'(%,-M98G!YB/\ZY';<,F MY'R5?4O(^2+(&:P17CH!M61$P9QQ/)J8 I.KL5[C'P._BYPL5L:#C!"B3(V6 MF($/7D!C"G+1RY)5Z2%R^A;AYNGV+>'F3N<[P<6K[WT:0I)#DT-_ M9),J:&9S M8C@.M#KV9W+,VZ'TXN12%M(M(]VR$XTI)-5SME(]-944$N-09-,Q4))#0"0' M9TKE*7ILZQUF71LJ,Y4%,"I84+%C]N:BJ?J6B$-QPQWK3SA2:FCL@6<>3TK5 MAW"3<)-P\\CSF;KPH(WS4*J-H'B,@&@:H)HH\7\X."ALA^$\\NQ]6V>7N1M* M<'#!9OQ4I6#)%N6/.RQX[$J04NPL\9AF/0F8"9C[/&':4^"@1([P@O#B521R M-5=CK#&@8\4!M0T%HJ@*F!?9)E\+"^YN(A>$KU$X"USEM-HPZ0VK()-4J@0> M7-X1 N]!(L?9>0ZK*8TC6"98/BR,9JM$S,DV_>\V+YD=Q&PRL!J#3BQ[SG9@ ME%E32E,)DU944+%6\#H+"%('8R)WALL>S4NR(9?G.0[N^8FEKO2D-MZIC4^^ MA6&$HADIZCXIL)V5HF[03K:4'JRS#I2W$D(("FS 4*12@JVHZBK)*]&1 6N M> .J"AQ51!?!2^>\3S*[U*?C46N<2U2Z!]6T3S MF8/3D4%*RA;9#A9$?1>7)2M6MMU\O!0ZF1_!,LS>$TX33KQBG#9>964R8F3"8"\NDP7&)Z!NYR)&QB"DT'?TBE":4 M)I0FE'XIE([,.5=L A,Y9M-6>$1I[8!SX[W@4OJ8:1V44)I0FE":4/K1U%HN MQ5I\P>PU!E"^9(C!>RBF%BF3]46G'50-6E>K $G,B(Q,X4KFUG) M/3H]R*4=:G'@XX.]!=3GKXSBYX#5>%31#?[Z^,*;S2+F-\+DG?=_]86/K?ZF MLEU=O[3D&I:+Z::;6WG05EOKM\MA'#Y-EPM\Q<>2OU^]CC-VP?ZPN0'==ARN MY^7MO%R'65B434MT3KYZ]ILO+45_&,U'<30>+3Z]W3SCGC7FU6N5N)#:_N'[ M-W_ZRD7\@HF'+GG@>W>AE'SF,_92#"VH&*^^&#W4;#XQG9P^BE0?C&V:.Q(/ MN[OWYG)6RN *?[^<#\HDESSXVW)2!I(-!X()2:)3KUMB_L1:^*S@ZAO(\<^C M;\^NPF3,I]NW9U?A$S)FRB/OMM[/C3#II_86>+W S]SY$?4\UESP[ M .EA\GQ\Q-JG2WXWF@P6E]/E/$SR_%$K8WUIA1=+0LX/M[NS-YW.],-P31!- MKD.N<]-Z/[752ECYSIH?DOR(_(C\Z)O]Z'[F5?(C&C*09SW5LW:E(\F?*"Z1 M]SS.>WXI-X3?SWW%=AW_^"-6(,Y&?QSBP'P.\S(;U7O+,-A7">Y[P:UL]72K MN9AVN?FOR\5\E$OW>;/#D##Q>"H#>YZFZZ_*P+> S.-93TYVDSKIP5.5R:+/ MI7O/L,IDT2?=O6=89;+HD^[>,ZPR6?1)=^_)5?EH+*6G*?BW.SE.,G^O6#23 MI&/WR8G-LP_*6E A5E#9,?!<:DB%,1&4_G4T<[PF@F6LW*@\1D09, MTE)[H:HRNC^'O[T>.G=@3NQ7^,5 MHBO!\5P"9^4N4.J8F,O!0#!&-X8X#YY%!=P4)EGPIAY98_MQW$-VZ+T^.< D M7B%"3D+.ET#.E%FM(4'5I8#R"(#>> W AMF.@AQ%!!!6MBJ<:$>ESQ MAJ]K-AR!%_'5 -OS-CR>_2K+UP[WT'H+R9>2?.DSPY&/UF:3# Z<.M/.%)J:!0G^5+* MQ0DW"3?[.I^)^7V.F.:#D2F"LD9 X$6"DT5Z[C2":KB+PR+;(I4(($33=/-: MX3W2@ NR!N5XS=GW<#Y3#!T[JEI0;_"89CT)F F8^SQAVE/@H$2.\(+PXE4D M%XYR,I+44QI9MU=&/4E M:).= ]N&SZKH#$%R#OA'PQ/S-B?;HWE)/C3:GR6 ]OS 4E?ZT21CH59/?&I-PE'"4.@M!NP"::\>%5BS)G:T023G' M.G2L^T_0- 34!]2L&:E849LXY MM)GR DH& 8XI"2IK)6,LS =.9[\(I0FE":4)I5\*I7-*W ACP6:50&G#(5K\ M5&24);N&X_H69R#*J(%%=O$AC<9F//*F<"#;UM2>C-Y+/R0NW.=G'C^TBA^#EB- M1Q7=X*^/+[S9K&*NBO]WM(51_?0HI+Q3A*^^\]$M@ 92.CO$RN;1AT$:ASE: MV'5X7V RQ6'>^N8WJZ\WK3$N'R&/9J4SJ[?HHAT]OV[??7X?< M;'MKW7RT*M=ZJ7GUAW7]-V_I;H4RR6A<'UM=\0EO;^SLXR.-B8MOZI(]:MH\ MKW>XNV6;V-XW/[>[:>OSC>U>WJSD=SVW6IX/%:OR-HQ_#Y_FW[_YTZT>W'1/ MYWQ?[IOG=,'A\X:#>,-N:V\ H<.#+^U+",O%= .%K8BMN;!&[7) 9Y@NT:A' M'TO^?E4"SM@%^\/F!K2K<;B>E[?SJU">/;V#\T*[K^(7S#QT"4/?.\NM)//?,9^BL&H&*^^&$?2 M(]^%G[[(SYV\OMZ1]2FY>[;$WDNTQU[5YD8?!U?XV^5\@'E6R8._+2=E(-EP M()A0AQ5B>^6V1'!$<'14B8A3J"Q5\+57D,R5*OB**GACKI3K_=RXOGYJ;X%W M*YZOP;L'SR'L0X[Z5#*^D_>8(Z6T_4EA#RTF_-UH,EA<3I?S,,GS1ZW9/LC< M>0J:U21T_W6SZ0Z*=9KH#P/TLT&Y#XUW5) ^Q0J3,WV%\'0Q"[#RIC6]*7D6 M>19YUAX\ZWXJ8?(L\BSRK*=ZUJX4*OD3^1/YTU/]Z9=RPVG_W%=LU_&//V(% MXFSTQR$.\.;.'EE#R M>$(:>Y[NZZ^0QK> S..)?4[V&,:CHU _CA.\5-9Q+E4FBS[I[CW#*I-%GW3W MGF&5R:)/NGO/L,IDT2?=O2=7Y:,1\9ZFIN7N=#DI6;YB75A21]XG!Z,TB6M5 MP'LF0''>I"6] 1FEY*)JX]B.#%HR(=4L,YA0:N-@M.!T]B#P65D'5ZKO$S>N M5X?G?7\UQ 6$;#WN4D*V'M-KZ8 P&7*"9!T'%8. :*6&E*4/7MH8]"Y;;1;X M?RH!TPJ14B0&W@0&R1BT[-%*?'& 2=18A)R'G"R!G%;QZ@4FE M#C& \K%)"V4&TNG(,X\.T\@=_04E93;6@>,,T;9&_!0T JDH6A?,,0,[;H[Y M2*E==V#ZV-[Z%N'FZ?8MX>81E'!I"$D.30[=J\DQ3#@8MZ)"8D&!LB:!BSB& MLU89)6-(S)2[B0N+ON20'(24) [Y9$MA5(84I%9!U.I$CS01N3-#JP[,_?EJ MD.UY6Q[/?IWE:P=^:,6%-'I)H_>Y#/\L2%^J@6!S7 L9>B]!1!ULM,IZ*>[& M(R6RB-)4R,DQ4,%9"-%R'(M[SDSC]_>J/_'(J:'0@C1Z*1DGW"3<[.N$IHW9 M.\X%".<=*"X5Q!0\&%:<3]+P8G>45K2(P3N904HG0%4<%X0F$6 BA3@A-.@3#$0C9)@BUX=149.)55;(HS%256LZ,/C4-G[FT,"*,:Q\,) MQ\-1U@ E*,U$8$S%U)]Y26N'G!]5&;HW -KS(TM=Z4>3C(5:/?4I:VOK)NDT MNKJ';#^5W94/Z^'26T<).YA\"\4(13.2?WU28#LK^=?H;VRI=.JZH]M>WK%HW])SD M7VFRAG"4[0 U'?XBE":4)I0FE#X62B=6B\W9@ZRFM%,K KSR'ISS7 CA M@A>[*$T+H832A-*$TH32]Z"J$PP1D1?0*590(4D(IB9,9CEWNK@BU0ZY5I2( MG$ZHAK\)% \*7'N$BM&(8"1^97HT>6SDT.ES!=3G+XWBYX#5>%31!?[ZQ,+_ M'2UA5#\]"B?O%."K;WQL_3>U[2K[I477L%Q,-_WE[?SK9;[ZT&/UA-!_%T7BT M^/1V\XQ[5IE7KU7B0O[A^S=_^LHE_(*)ARYYX'MWH07;^O?0]0]^3T6B(CVI M2#T4?#XQD9T^*EP?C*J:.U(>NRO*-?HXN,+?+N>#,LDE#_ZVG)2!9,.!8$*2 M7M7K5J<_L18^*[#Z!E[]\^C;LZLP&?/I]NW95?B$C)FRR+NM]W.C6OJIO07> MK6B6!N\>W :^#SW@4\TESPY >I@\'Q^Q]NF2WXTF@\7E=#D/DSQ_U)):7UKA MQ9*0\\/M[M1.)U'],%P31)/KD.O*2^0]C_.>7\H-5?AS7[%=QS_^B!6(L]$?AS@PG\.\ MS$;UWC(,]E6">U=_M[/5TZWF8MKEYK\N%_-1+MWGS=9$PL3CZ1/L>9JNO_H$ MWP(RC^=+.=G=[20E3U4FBSZ7[CW#*I-%GW3WGF&5R:)/NGO/L,IDT2?=O2=7 MY:/QFYZF5.#NY#@)!+YBN4U2G=WCJ?'BE,/_E^""+:"L9^"DT5!JB$J:G/0N M8Y*02GIG)!3;Z/"<$^"\4HMWSH[8$I[5[->7!"MAYW*2%; MCUF+9&$V8A M:QTPC;R+G!Y15CNOP1B603%NP"53&Q6^,;8$SR7O(7(J2I7:E3DCY]+G$Z MCS:I$"#K)GBJ:X*0C8.D+'.L*L[+3CRR!6_Q58 7%N^)+( KHD*(SD6M:Q95 M]R<>.3DT3I#T*27CA)N$FWV=T(S*\A*+ "8%QQS?)W F2- U6,9-+CF*NSAL M#-.%!0\NI "*ZZ;8:0U^2ISG+'@NLH<3FHC'ZJARG;W!8YKV)& F8.[SC&E/ M@8,2.<(+PHM7DFS6TC2?[PZWX^1877WK4C2)H ;WEF(M2RW*MMM^61[)W_OG(4 M@2*)-@BP48 DSJ=_,JMPD2(IGA) YL1N6Q* .C-_E9F5QZ#5KK8-WFEQWK+; MIEE 0<[L/&OAG,*@,8EQ!,L$RP=V(F\U0>5%7_"^W:PVS7ZWVFNTN]7V@#>$ MU>PUS;:8AU%0>1OMGMVHVGVC 5IPOU[MVR9:->VN87>LEM6H%\E5.NT# M7Y,5%$ +'K*D1N]X-@Q*M[K-W5J\)*HZF&HDWVI]ODI9 :_>5')7YFV28H1. M,ZJJN=7!=E)5-;G5MAIM.)=$%Z7]NM&O]ON67>VVFY;@5F?0MGKS1YNHVXU. MDW>JZ/Q?;5KM/E:AA^/0-+JMEMDV^@.K.$>;V6I5VJUGO7,K?55-PE'"4<+1 ME[37"%EQTK(9MM^=QN=M7GEJ#:K=1-ZM- MNUVO\D&[4S7KO&,: \$[SUSM>,T:\HV*\;S&FP+A,YEO"*@)J$L,U(U68] U M.*^*A@ !NF.C_QGO5VW#J'/>,[L=XU%9>@K^(I0FE":4)I1^+I0>6(9MM5H@ M"_?M0;4I1+?:[_-N59C]7J]EVP87CRSX=!%**$TH32A-*+T,5;O=>K\M>*/: M%L*L-JVNJ/9;5JO:[]5%JR&XT; >QVLTQ:#.S4&U8[6,:K,%(-SOU(VJV>6M M1K]NMIIH<"Z,\;AI5#K-4P74W:]&X6<.T_A'LH!?(M@OQX+?;>=NR5_ATV(@ MZES?*[M;=Z5PY96+D;@?XJ2>J/2$:5=,V+:,K MFMUNL_DHAK?1;)M=LUGMH6M_T^#-:K=IB&JSWV^;O-V 1X\,A;=17XJ_(IC6 M)3!C*+]!<[^ZOO7S%1/ 6A.\J@XBL1Z5&N93ZSFS?>KU Y2RV,,&&YW:+]G2 M,+TV>ZU"L]OX6)Y+%_H#M&OM=N=-@7P ]C#K:X_]3^1.F=FK,+-N-BLL' EV MX8]A)%-@AO'$%:&PF1-*QJV_(D M9OU#]L*K=Q76YQ+;\=BY8DJ8Z 5TX7L5AE6#X&SQ'%[+-^I C\P5',^K"GR8 M[\(6*.*+@''/9I/ OW/@7,!!.5GDL7@8T,QUR.^/H;3U'(F^-MD MXL(\54LU]FWDS*X@M^^XA^WF%OR_I)JP".3(F;")'[]Z#T>X*NPL\KU-=&0U MK$YNQ'%P->M/H0-<.1AO.M39B7%+!6:'/O. 3(;"'P)-C0 N@5!_BE"_E.LO M;EK-1;!)%%@CV%(8!JP.N^<2)QSX#R .A (HZO4BWMZ 8OT:\:G:;9%T:STQ6/$IPVNZ+'&XU.M=\UFN@6W*]R+NH@O TX M[_:ZHH]GQBS^?^53M4Z?_.!K(.X<'$09O MNXJF@6(&P&5 US:+I"8_ )%^PGE A!:7(^9K:NYS%]]EB,F?A#B5@"ECIE1K_ZSQLX1 MX/0J5+(1VHZT7%]& <(@KA)T@TFT]1:=WUZP;KU58;_BEB.F7&1;+F'#/9QN M7P"PV/%L82 XW=J,9+Q,Q$4IT'*Y!+Z8\*&H>KXM$NH#9L\+B:YXJ-HP-,41 M9T#]T=C[ *.?N'QZAD\_3#0LYIPK'4W8L3^B_L.? 'K.8)KTHCZMPL:#!O* MS (MG*7*R,.:&L>&LMP>2Q_N*+GU9K9)ZR/)YHQ2ATZU-]I+DP]@L&?=3 M^>'5^WE9/MD#)3,MWH!=UKF<^L[SJ'1;TY%J XX?/U!L?:98'Y!%[&,Q+BXO MKMGEE_^]NKG^\L?EEV_GG]G%]G=]<7=[.Z8>GMU)_ MG'\Y_^T2UR@^#6_9QZO;B^^WMU?77]1RP0N?_^_VZI9=?V*?KKZ/5-WCGY%<0U^CF\O;[YV]JB:Z_7MZDN["GLQU"A-!19@_,/\ =_ @:J$OQ\H?T6@ZOG>#_BK M.Y6._#$HAEGGZMOE'\RL_?)'.MQ43/^8CEH)H^?QR$$4+9+9YU,J;5_XGIW) MSC>Q*@""\_5$:"22FV/$"QKP=EN8;PL4+UPAX:$=!WY2$4D1GWIV X/ M'"%K)[196H!2MC,/-T)1V!50&^]$()V!(V8,299NK*)-:]" ,@4$/K>9"QNI M;.3SEC4GJ.1_OP=ZT,8_X8E@.&5AP+U8\4W,5T/7[ZOQ:/L@=N2 )GH'%'0' M9"FLD0=[,]3$DS/6,?$PP=LG*6I,K>M(N!,9CQKHB@T#_Q['[ 2LGVB\:*)C MD@\$:,VP+EY%&P-]4-K%8.!8#AKE,OM;. (U&-O%P85([!/A@ZZMS:^Y!9TW MPJ'F/<$'\=BR)ITQSE,H:%N9^/BW\=36WHA0=]6/^<85,9,7!KT50!2SN"T5LSML\*$P@6>,US M)T8.+#X^M"-+=SCQ\QK %2-9K92K<[N@H84G@-LF"$2X#.@ D@+ M#K"GOHK0#^5"BS#O*P,P6D6UD*!@%\V =W@7P?57VJZ)3*'I'Q@K7NX:^Q<@ M)X!UW"-BST\!_(P30BX M#_X\=-1-$JBV>""Y4]7QB-_A$N"K@"O\/M?M(/#'F;U;=>7JBS#X(D*\%?'R MJ$9"_E-X,?V C &Q I@J[%XG9=AAQ M@!) ,'UFP8-[QW71FHON"M@B[B1@G?K9]N%$2LSJ@P@P#0[1JP%^AJL;>+9O]%Y!Q0*$:"_0'RQPG"WSR< 9]$0,Y" M74['&M>,)K3PB@@Y#$8VX8&^VM(PHR[8E'B:NY>: ,)9#@B<,A;/4$[&"^%) MF%V+??><5+M3S!G?W*=*!6Y>HA*H*S#85[6A"X<7W[HQ"X1K#EU8(]B163P' MM@5 NQ-Z+OJJSE8BVYW6"$*4P^&1[PU]A;:)1HA@*P)U90KS/275;^;&+K^6 ML5N$S.V&X^E+9747ZNE[N T,-_H$B*\O5U&:(@(E^HX4&L?W?TC"Z*B!J@(" M>'J6*87,CQTLCRG;";*1#%-V5"(\J#DP5=:L0#U!X4PL^ M4A^)(M;J\W/ %V$<:I;QJ7A*A)_?^Q&7R:KJ95^P_>/X;$$@21_' *)L \IL MA?NVX*E>!$6V.3'2426D%5MLB&*/ $PF )K I**)1'#C4OHP"81C1?T+9>#L M\E^FY*='"+1F!4Y?H%SD^O?(3ZEA)W>JQ";/6F(#^K9H3FJV,2/$+ATXH<5< MH(PF03)J.'5B75N+AOBJX]O*10#Q07@C[3J"WDM*.$>B3WI)!#\]@(=XE>8< M/M0*XIQGL0'I Q8V"G L:"0,0:;53F(3/%X3^X>B@+FUSJ\KB.LCQYV!C410 MGJ O2FRU% \XH,0W Z8\QH,W%G"M47+T51 ,;%](-0Q+08S2YN?<0.8G.$<: MB?TAWFS87+4A\1+/K6)*VTL0@YPM7M;9PJR3LT7!G"V.1P\K_YW6P0UQBP[$ M4JW0CO[@4?!,MWPH&W'TM'1!(I%G'S*/23.""A/U!S\ZHUVOU-\D'L(8NGTAQ)E&Q@.DD^Z"BP'3;.KE@+E'A'1S^ MVKQXEGR?9"#,QS"I[IJMFMGNO8EA>,$+1LUHKGJ\ZAF ==/<]F/J]P#]I@%< MC_-:]E:FM5S$O2MS7>8&\63AQ00]%N!4[Z"N7?N*MCVYR0)UX!,5!+!RXALE M%GZQI=GF,%^NY>/!LO! V8YVUDFN6X1%?#9F.NSD#AF53ZRSDG5NETEBQ#AK M4%>!SO;GY]!]DN%;QTL"Q&0%#7<""$?IGG)QAI'3/?[-9\*P;FDP#'7&EX:K MPZ[6"Y_S^YK*1!/$**)7$-G2QTLA"/T,E2?&714@GHU]8+MREE M5!A-<:E7Z,HB1?O,,5D68]:")E?FPWOI[=XL<^1V.[IN1LA]S7K?"2&-1J?6 M*O&.[X^4B76)="%$\8=$N)I=WN'FT/VY>E/PIJ M(6 @8#@>8.C5GKS])& @8"!@.#%@,-J]/6I?A R$#(0,QX(,G5J=D($\/W8G MI=]4):5)X,.?"6Y+8]DD6_:FA-[L[1$RRP"'Q+F%W$CBW$TYM]&K=4N\X<2Y MQ+DGRKF])CEM$>>^_&R)9-2/B;N)NXNY59W>98]7VRMWD3[&%X>Q6 MN&Y:']"&MQQ5;1#KS<0%3O9IXR@$ Q*XGC2X+H72]A[]VFF?B8=I;Y\_ +A+ M/%R:?28>/MZ]W>4JUR >+LT^$P\?[][NP,.MSEW-^CL M)G>,'0QGYV,?)O!O+''I*9\,P0//CT)RQB!H+=W>[G*12X&XI=EF8N'CW=N= M6/C) G"TS0799F+AX]W;77)0D2=&:;:96/AX]W8G%BZS0:)XCAB%ME/N8GBP M_HH# -MAR#; T%FV?9V!U:HE]J[XK2VF5CX>/=V)Q8FVT-9MIE8 M^'CW=B<6+G/:BM/:9F+AX]W;G5BXS'FEJ*#'LQ@>;H0,@\@*HP#34)"I@1"R M;'N[$T+2!4M9MIE8^'CW=@<6_L__Z)J&25M=EJTF-C[>O=WI)#ZM@/4R;S.Q M\/'N+9W$I7-W*)W)X?)!6)%*<1D&W(N='LCR0&!9MKTEL#R9K28V/MZ]W4EM MH3BILFPSL?#Q[BV=Q">SU<3&Q[NW=!*3L\-!HRQD7\C0E\QU0F=(T16'PLD^ MT)0(TK'66I.02=]U;)9L6QE8;,O=?WKRA:"/@F#MBM72MM)ZXYB)I1"D0%!! M4%$2[8K@XN7)@>""X((DBZ(32R%(@:""H((DBV(;AL@EY=4_KB<"DVUX0^9X MEC\6E"ZY-*;3V5U?-LW7QW:R[D#L/8K.)\9]^=D2XV[*N%URDB?&??G9$N-N MRKA&N]8K\883YQ+GGBKG-DM=+ZAX?B5JP%1)=;D!0H^"0/6(>>S(L71]JF^7 M.D,1%6,CYB;F7L'<9^G>MT@L7\,M\7X M[>$SIQ=@R]\1&Q_=GA(;SWBB'_K>YZ [_L)7ML2\Q+PO>08?OGYY ;;\&B. K*L@3$A$2$1+M&8F>M,X2$A$2$1(1$AT8B=;PCR,DVG1]DMMWLGP1 M5!%4[0^JGC2G$U2]@//0\P93%=>FAUY&K"\&?B#B!"XLY ][S>E[' )K^8WA M=/\QXZAYZ$PN!3Z\B7D+-%UBWBV8MU[F'2?F)>8]7>;M$O.2=:4<>TWW5@P[B9OHETL#R%_('\B,DB30?KY@C.>Q.>CM4>_/($1_NR&/\6->B\6 M_+QTP/S2G(!/ZWXOB3['35X$/B3\G+;P8SP=F4K"#[D+E16@COOX(NF(I"/R M$'IN.]T7$3Y78:>R2:)%MF/3S<7&E-X\>*&) LMWQ+P%FBXQ[Q;,2TX%Q+Q% MF"XQ[\;,>_@23T?-O,=F0"GR7A-W;\'=Y!%$'D%K6!I\#W\)?-?5U:1UNB&Z M&2N^X;E@#%AFDD*OA]?#F1 MB/R&"*H(JO8O-#U9=XR@BIR(7MR)B/$P#)Q^%/*^*UCHLXO+BVMVZ=TY@>^- MX6WNL@L_F-3HSG-;&_DLEYHU$]G4]B-<\!<\!Y[_YF2=A2@]\C?W6,9AY8*5 MUW>=H(*@@J#BU3_6R-]-4$%005!!4-':HT<60<6)&+ (2PA+%F))F[!DN>D) M_D5;B/IQC5$;)OR^_L#5Z[L;=N;&L[+_)2OQS6>6/Y[P0#!_(@(>HI,7_##P M _C,PB34X;T0'@M' OX_$()Q#RC$>6!C:&0DF?!L8;/_B3S!&O4*,^MF4[T" M/S0JZK,+[,";LA&7C-M_1C*$#WX[/_^:ZS))_/6M"1];?T6.=-2W^!:ZK@T# MW5;V)BRL-<+N5:>N&'(7&K4L/_)P8+H#'Z81Y)MOO(/?A!6%SAT,.@"L=N;: MU2WBU 8"=D(-,WZ(SZ(@$#@DM4 2)@"#@#57[XV< +^#^7JP?VD_V&_S'4/O MNR"RPDB]E+8Y"1R@,=AZ>,'5:PJ+*05P+.YCA0VXY;A..(5/G&3A8!%]R^&X M'VKFN?'CX[!;9SB_>JHO^%KMVT18^/,@@K'AI,+0%6@\9!,^ MQ7]EWGQX](P%^SKP7=>_5UNA#*O0OL1U4)L>"'@9MR2E[L4L@1LQ]T3/&1?= M\[WJ\L\6/-6?GB4;\?SKPN9H0*_, I,ZCT(_.5EP&#!Z!'Q\O>KR*? [M/P@ M[ ^Z%Z->K]7?)!_ 7%P^D>),"L V(-&$3M0QJMM^-7_%< =HT5<\:C+WG!J!FFL>KYJF?UFKFR;>KWF?M=<2/577DAM8B+%M]2 M/4:M^4%MHL9T]R159<+M@4T>QSDYH 9\\O=7[5>K)[JMD\!AEV+=(^%>LT+? M=^T5!R(*CPN%QNUH8_M[[_+0#S'':3#'[3)]BEAC,_^0?9W&Q3A]=U%?UB&[ MMZ!%P)A<4$! F0/-6P"A*!59/NE#^&1<9#+XLE+9+$:9.V-4$99FG\2#EI[# MP5,15NM(3O)#7UH2CZSBD2?#9HA'Z&0AKJ&3A4X6XA$Z69Y365P23) $8*RI M&!YGWH_K1Q=*D@5BX@>AOK?$*]+ 5E?$]TXX4E=4Y,>WK0?%B],&Y4Q:8]-[ M5)V8F+<0TR7FW9AYNWMT>"/F)>8EYGU&YC4H&2EQ;S&F2]R[.?@*?+6SZ[% M^M-^0PQ>HETF!M^%P?>7/X 8G!B<&+QP#%[J2@W$X,3@Q."K*+U%(OKS>6OD M31SF/@PG9I$-)\O6_CP?6+\HA)[ MT0<2."[[EZ;-9,VFGBV -,EGEV?9\GK MBGBV"-,EGET__W&I;1;$L\2S)\BS)U:L_5F=--:V-2Q8P?*;&]9(Q4>H>M3, M=JJH6M]C)8ACWFCBV:/9RB/@6;(X$,\68;K$L^OS;*G=H(AGB6=/D&=+[?A0 MP%P4Y-V [=PL3)%/('K4O'6Z($I7+<2S19@N\>SZ>]TU#9,VF_BV"-,EOEW_ MK*4<,L2S19@N\2R=M:5S;3@Z0\/EJAJ A*='S6*$I[39Q+OCVYLY8<&YXGCD+VA0Q]R5PG=(84/[$?#MNVO&S! M>'#+S=ZH=!+!\?:E=8^#7 @;"!N."1OVK6(1/A ^$#X<#SZ0[$#80-A V$"R M0Y'<3[:Q_A3?O//%]ZI8G(3Y<\57"8-+9#VE E$;$[YADF,M<6\AIDO,:$S),^'W].:G7]V6'2,>SLO\EBW"-WC.2]7W_ MI["3!5DPC,'@H,-@*[H^\ K8P@H$E\)FKTVS9C#XV'5\K\+\@!F-6OM-A84^ M>VTTZ[5N\I#9.DUJ.!+P_X$0; SMC203G@T-_4_D"=:H5YA9-YO,\L<3'L"? M[YUP! VUS5HO;/9&(%P> M0BLP=#%VI(2^)(-EX$,QAGG#[ 8#*4+U%8[B\6=^%# I8.0J9*K"!HX;!CQ7 MCL:.9!@XW&7W\$G 0F&-/-BQH2-DC5T/U+SFE@UFZ^<);I-UK$!C9LW,VI*, MAS" ?J0X%8?,LY(Y$MKC(?,M*PJ"V8Z >"QAJ]_NA7L7]\DF(G!\NY8#!>+] MT^+]W@SO=V+&-[OM#!7R="2=APW8OE'OU>KS;+^RB8,Q_!Y; QPG[N>*A:CO NLC=9S#<:.Q]L!TY@\%ZQ__%S1FE5T5J;_3]#Q_ 8,^X>\^G\L.K]^DNIF_J/5!"WN(- MV&6=#Z\A[6%1%Z@\VER:$EB%H=721*K@1GD"-/(0S')$3ON_!>0(R5W MX=T!G)MKR<0)F<#!VZTU9L[==JV9B-R-3JV5[M.\&&WV/29Q-? G$ERM3:<-<3IOPGY );1JWS MB.[7$20WI7JCD]/<;/9FUF+123_U,(^2?"G1)>_!;Y$ M9<&'/^=IKC='GPL!.> M'X4)A8%2(P&"-C<\-"N/<"PS>ZP/8R3'%8<*FCN#3#.GEG>''VZ M87:1G74U8Y$@_C1G+Q_:>BH^6M+7'[,R-'31FD9B6)DHU,PCU'8"& 8";XP] MNU(GT%I[4_+LH.5IS0$2<3['7*_0:0<4[%1\SES)\+1LY$2E[0S\SGP'*"DU MLEBKA7YZ.A_<\?GI;2<=9IYSWN/EG/6FTVH++'ZDK"2XV*%JH1^R/G>Y9XD" M,1:YS;VPVYQ);G/D-G>@@V1&6'C=WO!R;ZUCI)W%Y)_T,;*IFKG>(>)(+1/& M[X*,*,B:]5S,I 3QD#_,VFKKNU\\.H^;5DY2"VRX3TLGR\9I;*J/[##*=8A? M# 8H.=R)?,-(T.NO(LZK4VN^F1LHJ%Z;:-QKCN:)M<*Q&.CS-#\8$-?7UJ]6 M#V7>21.MZD^,RG:@L4 K>OCA=S2QV^PVU,T)..OQU@Y^C4(_F*IN:NPZ"G*C M2%<"[P'47[5/GR6"D*.!3%T<@FX*W(->G;I/ 6*MK. 4W$@Y,F,G^2GA4P_T M75L+QF@_@X?0 /8I0]_ZJ7T(9^XB]?UCK@=U<*7KPV$I]&WGGQ%@I>U8^AH4 M7@)8L$;L7L2J-6#:A*30XT]9^!8^OYAPJ=XY1E? M7N2\;G+^BWS)E4,E/6 %((K-_HIX@"Z,T!;N4[F,@_=:=NS[KKT)L*X?/?MK M!,>%.5SK[S02;6(*1D );8^_3?2*A 2H&X M<\2]9LDL'HMQ%UD!O9TF@8\)=\OR+>GNVMBK$2L3BYX#-*$N>KQJF?U MFMFMY_ZW\F4:0P''L"+G8W=ARL=5>M_B/)"/P7A^4)LDB>CNR6BQV#)T@'PH MQSDYH 9\\O=7[5>K)[IMJ9[#+L4V M+RYH.7F<(!4A-4ZDK/[T#D,B4=6\4B#>&0O/')LDR6NH9.%3A;B$3I97DP] M?*) SW/IAX6HN;,.S6%2GEOE=OW6Q?M)QPL#7HUC8D.\QTFNT?"E@VJ0>UNS M AWT1S=SFNWQSI:HFF9[?+,EJJ;9'M]LB:J/?K:;:SG)+=B:"DVQ2_+L4++V M,LYZAJYT4QF*L4R\]ZA*46E+U5"QYC4VO=>I-'JE+B%*Q=:)?T^7?[N=2LLD M_B7^+<)TB7\WYE^CVZYTFD:9=YT8F!CXA!FX;51ZG4Z9=_TY[U-/W=)PE57P M^!KXEHKP]-U(1S:2S6%'YMDV+*!@[+7E9F_D %-.M&W6*T:C_AST\D14Q'%0 M#,$#P<-1P8-1:;?V5VV=X('@@>#A>."ATZD8QI,>LP0/! \$#Z<(#[U*I[T_ M2\[1P,/!_4K4B#'7F!>WN Y=PL+,+%^\#"JOD&HDWVI]/JU1 4U#W_R0NUFU M! +J_3">63.1\VP_PB14+PC5SV]<7V+>7NC).;MIW.8/UN!'-,X47)?RGQ=;/HAYC@- MYJ#,UY3Y>G^WK6N3'66^IMR+E)_T^,YNRD_ZDCQ"^4DI\S5Q#9TL=+(0C]#) M4BCUD#)?;T9S^5*MUVFI5CK.#Y!=LCP3I\D>ZV2)I&FR1S99(FF:[)%-EDCZ MR"=+2:TIJ75QO'E?G (H)]\Z,3Z]2F./6:)*X5Y+_%O0K23^W9Q_FY5Z=W]I MG(A_B7^)?Y^1?QNM2KM^8BEQB7\+NI7$OQOSK]FH='O["V(K!?]22FM*:4V( M^;R'7^F!$N2<-NDIQ+5%F"YQ[=I9HBNM;INVFKBV -,EKET_<5>E0XF>(D0J/T^4>7/O^M MT:ITFH=*Q%R8_/GKW2<04!!0$% L XIZI=XAH""@(* @H%@%% VCTFPIE%>!2WFMF]TQS7:SLO?E3C_L:1^D)SK?NJK8+SMWO>V\KSS+ MC6QXU4I]LBQ_/!&>5.:L"IL$_D!("3]SETD1W#F6D!7F> ,_&*MW6"BLD0># M'4Z5/Y>/_EQL*#P1P"?X%VY#]XX, ^5XE>M*/&!/0M9>;/Z,Y4A_30HWS(U( M7+V^.XVK%FQA^=K0>!9Y #2NXXE-"%"_BGV>.2$,Q]HDK]#MHRB_0B_8'OCR M.@K8\@1+3&&]9'W?_RGL%20,F'_(4;X@< $]!H)+6)O7C5J3P;>N0@T_8(V: M^:;"0I^]QK*&[>09LZ/ \88,0 +^?VF!+(;YT144<5SY>R<<84.-6B]M2%5R M>;*11HU]@[>2@3)' J0Y0' P368'@$<>ZP-P96\H!U%H!88NQHZ"/LE@$?A0 MX*[#Y 8#*4+U%8[B\6RHB"8[0A(PQ*V^NU> MN'=QGPPFX_AVC1A_(>.S>WB'O3:Q>.E! 4*:1;XD(ZK $Y0&>2.Y"4PF> *+V_@F MR$1*!X1#=CX!*?0!0#L4 -J]UAMUP+SNF;5.[L@9Y%9Q[=590-E^,.2>8\'X MX6R(!%'I:BHUF]DNZ..^V\[])=F)S5#0:)LY^%FKC?6)U.C4NH>G4C.F4J-C MUHPGR/2)Q=F<2&WGCEDNE_+OKR8@MU0]WQ;)/@-EX>.$BEWQ4+4=P&FE50"= M16/O@^W(BLC3.8)KVH3ZLPFP]]_P') M$FM?I]:1AS5-(!MRTA[KD^S&2'-U2V"]X__BYHQ2WQRU-]KAA@]@L&?=3 M&==@SF]3L@?*+K1X W99Y\,;;_>PJ M,5R@N=>K;&S%&$T,TS;08K(-+%Y?,LFD*)EA<$(0D!?>'VQ"@8"KT8R&*X, MY4F=W+L1B6','>*-5DXWW>X,-_/*^K9'^#-1R/-O&!D>EUJD5R0:.TT3Y#JY MU\@8F3=&&MT9U3!@#:/6C& A8-:D9 M]*3-A%MM=J>S8+,W Z=.+V>\6U>K>+S13W1*V[Q*IUQK[_/:96[7\9AJ;$3_2R!;V8\S<*YJ8\OT"FV11YMC1&'+FI MZIF- 0LRA9VB#2!EK-AA+J7@1>NST ;N;Q[[OVON@ MNU^Y]=/UAZ5:@KW,F+UU:J)689$WB-P!T#A0,I!'(,;<\9 /@2&5I[5G ?'U M8= ZS<"[3$61FA]B-4N1((@50,0@7OA##T:I* Z]&R:!CP:36<+3]#ARK!'# MX06^RT9<,L\/V10$ES#@GAP(Y=D%C6)?%DAS(-\%-<:2:600H)B^5\_91J$Q M8)M9%E=9$UXW.H_?^R@L,>X+--FF[FTP]*1/Y-$I#/!.J*&H .0 GM6Q"L$@V^C3@AL#8 MV%\1B'0@ZTQ9GTM'KYI^0T.'H[ )V +:0C\XSYK"7E@C[@UAF "X K412]Z"= M_!50>\X^'/A/Q,JV9]S$-\XMRX\\M9V@77GPLZ4;9(DYE%J@ ."O;%!\'&3/ M\GAD.\B*T(.-![KZ2>4&4H9G M8#2 $M1G@9U#W5#"IE?P.S,0R>!7R?Z9PL:-4"(%C Y&"Z_4J_\DMZV"N6TU MR6V+W+8.A-6?'= ; %9TE-P%GZ#M U!!PB$-8M@)H?6_1B!PW2/. KF'_*=@ M+HQ4L#_]/M[Y@)7\_I^(='=*E0.4'N-' -420PQ\?(:&1'=0 M'4";\&&-_4NH1G2HPL@12EZ$CU%VZ8>Q<)T(E.J[@7Y+=0:Z)Q.PR082RUI(M.P!4_E5&_FG3A8^ 0HDK:CLXPEI>!*[&\CD*JEUR@3F'8\#V(]%IB MSO3:Q"(]OZHHQ49JR+ J%IQTU"P?X> MMLFH-=I*QZC5ZRBGS(V+79%+QT^4S\(.'GNN!NO'%"9"MALY[P\ M\-77K69VSU*!A9<3#;KNM,;.%RCQ2_I^;79S]F;5&(@GOE>];NGA/1;E,$E@JB$\Y4'CK*_X7>@8,._?8'T!'*\#ZNJ MY/?'NKI3-@/<;F3T4?3#5-.WM;*"9B(7\!DET;FET+;2))-$+GTGCT(_R7F! MH\1O0=#$UZN@B/@1*!3.@[ _Z$%@R&O]3?(!3-7E$RG.XJ ;D2R7,NKHME_- MIS.]<^#@52?+6?+]AP6E7R!2\8M59WU>-5SXQ:KV[6L_^M M?/E 8S!K1M=OJE; 2":0$FZ,K9< M/+):S)HL_M8/WL>;LNR_WT0P9J[/E1U)RJ MI FM.OK-^-%PQ&[%)%11@$NCY/3\*&?)^ML%X9^7@3;BY$D\=E.[!.;+E'Q M46[K44WWX+6*MRH,LX"!\L:E2[YU* MK]4K\ZX_6P;U8FPV\33Q]!,\;9B5YM.6RR+O^G-:5$@VVHR\;E+OD=AK9!"; M6TA6HJ*G5/1T,22W*MUZ_=AKGE(M&X('@H=MX*%3:1 \O(#!J]B8LW-Q8W_5 M99ER89V],".(/FH=Z6058K-1Z9"1JT2;3:Q\S+N[$ROW*AVR;>W9ME7L<_U0 MWD(H *ER3NP.WHX"H6*]F"WZ(0E"1\U0IXJ>W8KQM(,F;35Q[3%MY1%P;;?5 M.JVM)L//ML3RW>-C'Z;Q;Y5OO!\RVY$J:0J!(YG?R?R^I&QXI=YZTON][.;W M]3QIG@R&+-W)2]!!T'%(Z#![!!W+H8-L5X>XPB-A[JC5GU*?M[M8]QOU2O?I M.$3:;.+;8]K*(^#;3L7LGIAEF6Q4VY++XY#TST+*LS2C'6;8=7R*O2.UD]3. M96IGO=+J'KW'*)FL"#L(.PZ 'O,9N'NE>86[1RQ0017!!<$%S,PT6[TNGM MST?LB. BD>7@7TSG6.R<\*J%7>OR+JW"NS36K]!KLH>9?\N*=?SG?W1-H_-! M+@N-C"M:S-8DB%/LJ[*A3 K/\;%J*HBV6.8O31B*23H?/=:E5D2@7U$9.[%, M3)PRPXGK-KHB#+$H8EJ)I<(DCJ>JZK/@I[IPQCAR0Z>:%B;4#]YB!OVL$ ,. M'V=IUC_,[;CZJ_'A78UM4@L^>]DZ17F#*%!;E"^[YWOY34\Y M1GF39H1[2KNDU=K(4W4SXZPW_(X[KJZ\,\T53A(/@!0(*O.YB+'*DXR+<\BT M-,?SSV6^TF99JX(T:HUV9W5%CI5%0U8]:]8ZG4X]^]\.54&>>0Q4(62/%4+B M4D?;%@@YHGSU5 6!2H8KZE@>5[>D+C1@LX)YI5\ M.514J,GH7"*W/4H/O+FQN F*6IGWG.Z,B'V)?4N[YP7TM-XJM_>\Y).WG94R ML??'@-\SV[\G+YWC9J=313\,YD\$B4,42T*Q),LPN5$S*9*$Q"Z""8*)U3"Q/]'M^&"B$*D$ MRG>3]Y1;'B$RA8]0^,@Z!4.-/5XI'%'P"($%@06!Q7S%\%YM?_57C@@LR!UK M*WHZ'V-V\D1N@VWOXD ?S1HG9SMWS'*YE']_->%#4?5\6R3?P+CP<3)[ M5SQ4;2? P'/?PWC-:.Q]L!TY6BO4?_HQDZ RF M22_JTZKP;*"C!YPBAIVF)/6P)MUL&&F\QW"7W3;%G,WA >L=_Q\ZF,@T#SVY3L@2++Q1NPRSJ7D]*S)5UCBNV-**F]OY#U?.#4 M'E;A;_W@_3^N ;+O''C7'[ ++D?L$T:CJU0-GYV_(L=^G!B$XL,I/OP@\>%' M%(E7Q&#X@X2NMBET=3Z!B_/ QO#;2#(06H2=)M6A$-;=;*:4KF+3=!7AR(\D M'.7;YJLX$HRB\/I'6@4EI:!SG'CD*1ZAK!-TS7FP:\XO(F06:MR3P+]S4%#L M3]E;Y;GF>.\PS@!S?GI#QC%/HLJP1[<71Q?<0Y'LN<7H5+H]H\Q[3I>/Q+ZG MR[YOVT:IN9?\]5],!HK%'OB_.R%)ZBDO#U'T^OIH6>F>+%X2_Q9T3XE_U^9? MLUNIMT^5@' =(_B$& M/B4&-GN59J_4V?,*F'?T.*6>R\% 6*I:FGBP1MP;"H8>GDS_+#&T3PE%Z'6J M?A!_1VL*"F4OQCCF>_DF5@079C7!X/XQ%$=;''6']UNA66HT3R)M#\AOA M!N'&'H6Y7KMS_*CQ;*D97K $^9[CN:]3C_'S19>'Q5^/W:;_R0]4E7JY+/Y2 ME>*ML->=6B\IY*SR^J/!\9[+F8O81=[WS/+'$Q[ "_=..&*OZ[5VVD[BOQ9_ MYWN2J?@[ :TZ,+"IX XYO8WE)F+>$46/[K[NU5MH,YF; K[FKAS44'K8G M[)H.SA^X_CT;!/YX\0#C+@=.(,/\.L L<>ZIK&ZK\51]P(2J'EG@P+;":C,[ M$BST6>B,L6U<'E^&.A] 'P?I#96Y-O)P,5P18IY=Z"2 4LT9XT+"WV&S M^%",89[8SH1/\4>)KASS_QZE?HZ/N;7 @R/E6IOG@<[O'7\ M5168O&[7NBE;SP&'V:T9CY!C84O+,*3&UATQOC,[EK6&GP$"-@!H%;F*B[GU M5^1(1R,<?CK9H8' M']E"6H'3UTU_\4/!C)8:ZNM&[A 8Q&N9^WK%W'9AT5/BR#W#T:?4-8JDFU72 MC='.B27(. EG+?(M>X1,O9PP\I1CV@H)1_$B2XR$BF$-,^.XS>!+8]$4)R)3 M@0U[6#BH>Q$HQ.ND\P"! R0N/F6NCWFO1#"&D?5#6*M6K3[W5A18(QPQK L, M"[;8MW["BV8.;& $MAB((-"BCX0ETB(?B#C.8QC"+)=[F/_O,_NJ;1^2!S1='CP@HP! '3RXX*U3R,5.^+6+4,0#IJ3[1T MZ#W>FGI>2/>R%4_7[/$ZJU7,"^4;K^*WW%IQ5R)%6,)!618&;^8I 'C#$L*6 M6AC'1L6#""Q'$[LB&Q#1XW,(QJ7> ('9GPH1/TYI;>)R[R5/E9,^5BX"1YE% MX%2Q,.TT$L17WW4LQ!+<*?2 M47B\""QB:$8]UO>T3JN^TQ*<^BRG*L,)%"?YCB9+T >;$9Z,,1>O&U$MSO4C M0_B#@@;-QY- YY&+&1;:E&+AZS F0!$86%YA!:08\Y_ L\GNZUE+&8T3KNXC MA ^B,(+!B[NT8SG_$R1?(VXJ(_]-2VZA/FCKM1MM8!5^\B=J(I#K 9Q7HO] ,'?QGZOGT/ M6(I_#KDW=-#:J,==83XT%^CSP%70FSQPQ5"3DYZII9N*8(^!; %V^\ T/$/< M_#HG(A".%'C=BMQTK X:,@0+^0,VM^BC?B3QH%.R4A_H1]-RAA9Z95U%CGWN MXLD7'T:XF GA3WP95@,1 J$I NL+3P#3X9L@: SUM)=0T S)!+E\^./'?-J' M3^<^_S.RAUHKR_@:*%;M&.XM$,+R_M3PX;]#'^<*/3NX,OCS"(Y6V%#$3J0; MV%IUYL/W>@L'()3Y.*57!MZ@28"$&N!.P:P-EX(& M204ABLJMY*S/<>\D?];G 8\M. 0_SAZ"Y[E#\%-ZLES,''@WV8%W_<@V/'_( MG7L>DM2-PFED/5"3QLRH5W]/;11*MM=K\1$ =MP':FL8:CT:Y:*I?=L'_."> M!W;UL^__Q(V]30_X4JW*;HOP#4"9_1/.Q!#%C06$],_D*%<*E%HP-UZPG$2$ M4!>3Z%AP+[X)N-69O9G9.4_$/OA3%&@!XUP[>!N]1D,1?OJV<;G@[>+Z/^OF="+1I0N$$'R"8!*#%%L<\ M1ZG37SAU>IM2IQR_NI4@K_O@HP?./*G7OD(5CI :E9\H(3V,9^"RH4K/Z=3P0!BA0K7)@#I.M&F4+Z/ M=S5^N9+?2J:,PR/<,#V.>%JH-@?HH0![J=A3;7)^+E]]Y'B4XY<,>59AK^@9 M:.5O_3D@<<<6-31ZH74HV9HK& HSSFOL!OIGG[0FG.R4$J2>%/&4%\;6&L8 MQ@6OK%(T8DT3GY)2V[,=_J MRYRI2G!'$YFZNYLJFW 49- ,G).:B9#>,N,M;-]/$>9M1]I12K$6'DT+K$O M$!>7%]X(&*[RB_)#)[K-B(A$M$>T,T=IB@J"HSAB\4W_ .\D "2EU M@TNM_O$)(J4/5*M $8U>J%SGY:[XO-!^=N(!KQ7QS[-FSK$(1[ZM/7!2VQ4B M=FR1)P(F EX?=44:CS\,_/MPA*0\ XZ.-PA Z@PB"T4L]%B5 ,U6>DWD:!U# A#*"*[_U*5Y48;#K".1- M@3=61)9$ENN1Y8Q'!HB'2HI#>\: ^%-$Z5$(ME- M^.4)S,61AB @7JR]TP MXYL#;;,!6L^^3/T_IA5VSP/TDU!TKXV#0)?.F$B72'=-TDUNYS'(*0 0O1.N M/\FN"Y$T)\J9R5?&.3[(O./C9'Z_U"T!PY0P5]H&K';EN DTJ!]]$7"UJK*&Q%CS +* &] MSGPI=8:RV.1.D$GDN[40.G!1H\ZT'64YTK[LT%"$5W*1CBL83WPOO:T*^'UZ M>R!G;$>S4BLLD#.(K^>D(NP"E;J\[P+(K&-6^ MZSH*JX^GNA6IP"#4R'W/B[W.E$B*MTDRQ/CYH6.A5[HGN97S-8;'.7.4CA%3 M)O4D@,D)M?!JX9M9:'[<&U^'P@,'G0KV@4!B@\YJH;$TJ>PQM2;"A!)E0A]'B._DPU_2<3J*#U.]I M'I"L#4EG-Y'A-F0H(PNT'3F(T$\C$+#X_Q9Q["R:CM C*XZ*2N@3PW+U):2* MU0C\8<#'1'Y$?FN1WXSW$ ;ZZ.B?16Y#1%-$4SM#6NHLFT\D$Z(-)E16&]!# M5-D#]5A%K\2N;FE\;@:)7P26P)0 <=SQ$KXXYBB5/[)5D:G[(0:,BZGOV8N6 M- =E<4H4?8&L"*7&;G7(!JPK_GD,ZSS?//QYUJ,_,?[!1"KX-([ZP)$E4?+Y M( V5*U!%X0<8_O8HK!IC ^[0ZNAXF5V1JZO&-/F*CPE[T JDHJVSV L;\^+@ MQ:.*)0_P3B>*B01=U6'.P)26RLZ@/3-%JFAI&5 M8H)I()*\%DE\@>I VQN8S"*17'ZO=E$YK$9N>A2E5H<%T9LJ+TH2P7D!.J2C M@Z+?XGMQ',/MY44B3^T?CQU\1$C7&6MT)_,5-?DXR@10C!/OJV^4?K%'[ MY9_?S[]\N_IV_NWJ?R_9^9>/#/[P&7\O4'9+'-K'J]N+S]>WWV\N;]GYK]?? MO[$_SF]^O_S&;JYN?S^AJ/%_J2@(U,+].(-7#.A)H(6"^GRFKYPS2)(]2U7T M4MD^TD\0Z6;O0/$V?=;QB=MW*%7D6TPZ39W?]2UI)8W(P_,>5BS&?&N:5173 M84FS TI2S<6A4)4D$P?.5J?0"00%C5/0>!PT/IM;G8+&*6A\ZVEG>)E(OJ&_ M"CH!AVU?B::9-#OR8^$9R *CR)T[D4DRN9 XQT-+J985)P!K[E0'= ;Q>>&?JB.R7PV3)W,2E,$ MZD")%(ZN%',OAG,)DE0F:B.?\'/V@,;G2:"9'6LUN>,Z3>#Z-LD<_TYEDHW% M:AYX*F%H6K83T]/+6"#/3G@VFDZ07+7UU:B_R6I&S=216K@@V>BT (C#!(D! MX#=+6:J+B$UY;D%]1W^LB6MGC0G'I[_>EF1AC1B05SZZ6# MJ;/KW 53C063>';;SP;']MK(\M66*]?3[NR3)/4:H8D(0-&=5OU[U.31-\2Q M'1[$&8F514M9^2,OU/D&,QM6O U?E/KH<#[['+L M9.+LK1^%(_8[O,NSQ+V8XP'59)41#8^ D;"'0CNI+)!WM>RJ/?OFG0IG:NS* MK,5\_@$5 !@WGY62B(TN:)E0')X[J^8:1;,,C %#M_&H44F$ASS^+6&(* U/ MQ;R.:2])EDD=XA6#"/!69MAF0U ^TJR3RK;7E*Q>>)6>3:,K,@GL3_H8XRV'.INR',S)Q4EBJTIVGKU5!4@&2=ZNF\@5 MS&CPJM%Z"R?7>CD19TSJ^1<2V_H['>FB$@H)# K4LBL<>BIP!I_E3.+9G8!. MHYBE2(U3E243U?GY_2 )/W1"T#5=K7J"Q#5&'YWL6F%FY(Y4Z:$#E^+"!>K&PW(&3I:Y.;Y1T%>!Z4T%SBT.<5 C M54;"_)1A/-RRHG$47SYY*KQB''D@H\::>Q\_5#2>?8&69 %."5-15IHM5O>+8)CO.+YQ/7Y9N M6D9T6XC_A"N%Q96%1*=YPA2/\LR%%\G MQ)CEX*M45Z]E:4 M" M_XP=@S#>-@JT_<*+$^"K:_J[&?N?AE.J MSD)7C4S B2U&RCJAAG<^%IBKE0[[ O#)GO7(KQD2WR22\!\)4?]K!OZO$NB_ MR$-_=H#=)-!/9/+R9++>5/6KV/*9$T*GUM+)W\05=VZRBCLG9/D_EXM$%F4H MCYVM43_DCP6G]'IU+9$I'\>\T.]4>:5AM2!5+NI1#:29!%,R>8*:KNI2J;4. M'(")OHD"W:4'*RZ4,'P[E:J"B13#6/37$IORX=-"HKZ=FY5 M? $KV]%.CH%0CCPYG9/9OJ4NBK7HB3FMXF704FDRUVSH2V<<22 7D9]Z3IE? M/D&\1W/D@DW+!IUD[-!&E_@]=#/,O"AS#\59?B8KZ"DY0A0-S^-Z;4PJ(@EFB41C7.P):3MWL5TNAK@=,/P/'L"C.)GZ M>B"N!JSQ>7:,NLQA7/YZ=CJQ^O'$/%9#]8P?>7^:VH=5V:PI ?F1 GGL$EH0 M7>DF9RF[' STK83/SFT;,]$L4IO(J;983K5=> MXXFB8Z-"59Y6__E7GP>V]AQ C/&Q@@RZM&%@E,>2[$2ACZ%/&]X2K"T>Y2]+ M J&N2JU$_7/&^)(.@QLP;N,9B[_ VLP<_;H@<7)!F?283\68+XL[JW&J14L' M>>^I,CJP6\(;PA \[2(6)_X&M5+O9YS[06:J=NYC["O.2*JRA>LJLW%Q!2PN MHDH-^>AZZZ0!>3/E@@;9_4Y_.M?^3 7;D1*(]*().UN,E2>/M *GCTI< M'Y"ULD3_6.+&OK[NNL)K:)!Z#>4=;M[E"R;_I>_3%U=+UK76'CD!JS!MKBJI M<>E[O.]B^N:?0@#W_]34EKH>63.#U/D11)CF M7- @ID>B(W?F/AA'&)85B3M,! Q8.JR2,INI"2_,#-.S20S2Z5+ MU6Y??P$31TN5ME;>)0J(HQ.4@XSWJ] 5)=,0)B6-QS46LW@/[KISH]=[(F9< ME=,16-S+ECU>W?DUS3?IP*/8UQ*##/$E-:5!P"/846? 5%1USIR8Q>KA%1@O_ % \_XG2(!4((K&[_RTV!\.'J]G?VZ?SBV_7-*<'# M-Z6O9#J:E]GZGK)FJMPA,6%IA5&90;-HPBQ@7\-%*@)HU#BOL1MLXI-N(HG< MGPTY^B_)SG6"C<>(\GL:)S\5/+%V?@35:]P70>)9TRA3DC_S1^0!*CH2TY38 M/U1EY1_HRQ).?\39&@O$PF;ME^]?;BY_N[K]=GES^9'=GG^^O&77G]CE/[]? M%8BSO_T?1HU^O[GZ=G6IX]>_WU[B.&.)H%S\OF_Q/*GG@(QWJ4@M'XX<1P1? MH?E'6U#.!P/E> :\EGP;;&'/+3-B NY@M*ZZ;D%;96))DS/B#>_[D0X@G.37 M>!;<-'/G4[&NFU[D;&[-]4@6I/+F4>A_B/5O7 Y4QT%CQM>K+I_"(&&&#\+^ MD*:JKM7?)!_ FKI\(L691 ]#V/5D7P)%A:KM5]@_#" U(J!SH4XI?)9\'[\$ M;]FI4JZZ:S9KG6[O36Q@6/""L>TSLU9OFMM^7#.V_;17ZYE;=[OMLWJM\Q)S M50?D>A__[7T8S--);"SJ B?VN?5S&/B19U=C-AZH_RUFXWL@3FVE.M.V*OS# M A*[$X%*PA6#AL:2)0:H[G/;GS8P*H7V24P-=AZ?_/V5T7RU>IZI.3&Q_TY" MIO17EL#_@F$?<&5VL^SFC_2E$I'$6'U@;T-V+F')LDR4>7Q[L%V>V_8KI^]E7#E/%\T&Q.G$3<1-QTUY/3"[UW1P\^ZJR M%KM3-*#[6)[)9E]=[JDXRJ]Q( 5Q('$@<>!&YQGFT'A0^=O91S1N!NQ_DUS^ M,3=^P[NP/_B4_9\(V:\BQYW?TV29Q(E[5MR5/?^QYF[!$@RLM97TA>/<1"M] M:<_NY60;."Z+DPVP*M._)W<)3Q%?L9?EP,BWP>07\L$AET/=PNR13-0-O?GD M*5BZ)3F )' Z/+&@2<\OUG1G27[9/%\?'5T_+ZL7;=>)@>E0HT.-#C4ZU(Z* MKG=@=:->@6_*O.G/H10GU]FGKA2CC293B?&W)!T?X>11L\RIPF.S6S'J)NTU ML6T!IDMLN^Y>FXU:O4=;35Q;@.D2U])A2VQ+6WFT;-NM=+LG=MC2M?JVQ*(B M\C(3PDR 'N'CMDSSM%=1*=AJR\W>R*>JG!C;Z%;,UI/.]/N@E]0+ZI@IAN"! MX.&8X,%LU,P6H0.A Z$#H0,)#P0/9'LY%=L+>6_LVWLCG^9,M;@.0<'"S"Q? MO QQ5K0D%5/<:GU%@K2B&&I4X-Q3E'5$2U4<">]E(L:-:@\1> _]B!N5UTUVW-\IVW2Y*LNNWQCMV[:G0&$.[M9B5)26L M&8_"D1] =S;C[+59K]49].5B*FR=#3(022+LI)#S;$G5N'B9"Z(HW:+Q\O/YU___SMEGW_6J R!-=?V.WEEZOKFUPU@A/*F__%]Y87'2\@ MT3=_P$S$#\D'(IS^B*N:8 W' A%[L\9^^>/JRR6[/?]4($J__/9_[./5[<7G MZ]OO-R=&Y"'CDXD+0A (!V4B]U8ABP$3JWE=2HC5X ,WF]5#?8MX*ILGDHB>/@-67^0;+E86^)- M6C;;CR#]8@F@-8KUO!S7J"+@=JRD8<+)6UU7F1EM4-\&CJ43R>;++"X:[ 8C M@;UP'LX\W_L2C47@6.J,^?2#]RVC833:56XVS6JSWK6KO-7I59M]H]FI&SVC MV^Z_4E4F86]OQ.#OKRY^<-YJ#3I-N]IK6_B-(:I=T^Y6C7I;P%=V7=CPCJ#9-TZSV.]:@.NC5#:LM!BV[;N\Z5!"'MQCM\],/UP-+V7IFO1;\_F*G M Y#V80C7KG=:5KJ#1GW/U/ M&'OA5J3+ M&X-VK]\$JAT8_6JS85K5;J?1J(I>VVAU._5Z1W3VR67KC?3YR2$4 3SBI:!< MGI3)S)_Q87S&\R# *IQHUJJD)3*#Y N80'7=KSB<3!PKZL+28"E=6PR2'P8T81JXN8G=;_;V(I79?\AXAZ[NWY;0>69<+.+>M]VSAY&SG MCEDNEQ)KU0]%U?-MD7P#X\+'R>Q=\5#5\@J69 $ZB\;>!]N1$Y=/S_!IJBAG M+MN.'D[L-ZG_\&UCS2F)#676/NIXJO9&>Y/R 0SVC+OW?"KC&G[Y;4KV0)'EX@W899W+ M2>G9DN[5TK/C8F0VGO8/\3!R^DY8)!MFN_;+98$L.__OOZ]^O?JVA[SD+QT)GO>[*LJ;U595)N[U:MVNN4YYTN2_$EJ7_YGTF7L1;<;.0 MJ]JFE<]>:(X'<'1XN8EQ-@I00QN%X42>O7]_?W]?D\*J#?V[]^>!-7+NA'PO M["$/WF.AQ?<-H]=YCYO;:]6-3MULUMN-1J?WWA*67Q4/C1]&;12.4R^6*K0% M?P:5P0K/XH-A._A=]QE%_!&C;UUTE=!K>E/&:R> M"(1G"6SZ4L^0 2VG/6F#E\H/W?D@V444!#B0&P&-A.@O\ E46M:M_LX&CAM[ M**@O;R\O\#'Z1:!'!)KX4LOX>_YTA,_SP$F;.(TF]HPU>.JU#AV51EG.RATF MR8H[P^303 X](S[UGN%@TX:XQEO^[KW1LJM&$\UIV6F&QQ<<2A:2TT"E32%*D M"19H@@4A^J("L%$W:E=?;D^2-(YJ(Z\\/%+8__OUYC.[\F3(\6[_HV]%Z =0 M8,8X>H*A"19H@@4A^J*"")X&MQ?_?9*D<50;F3\-OO$'W_/'4W;Y $^E"EVQ M1F+,T^-!.V]=COO"QO#,SX[WLX^I:)+GLL"L=/0D1A,LT 0+0O1%A1VC_F1I MMZ,DBZ/:Q L?IL"^\J$ 12(4Z .--QL?>^P#_/!-<+ >W9N MA?C8Z#6:E?C#H2/# )L:8=;+R)TRBT>8SC(<.1*38V+,"733%TS"I.$!*#$. M=-,7(^X.T*]+)\0$YHI?@-\#$7GPD6HOR\"Y-/-8<4[FW$B>I(PUQ)1]!C(V M5P=PE:-O:N1JXG5+/YR'?/<#@9B1P1MD;@K '&5.WCS:7(J"]$\4F^6+091$%'0;A2D'=/. M+'-D[+U[<^0VEB?Z_WX*7._&G7+Z=G0 MTZT>5:564MG;VW&C@THB4VPCR6R2*2G[TR_.P8/@FYDD05*EC9VV2@(.< 0 M.,_?^8__^;QFY)&&D1?X?_KF_7?OOB'47P2NYZ_^],V7VZ/CV]/+RV_^YW_^ MM__X?XZ.R-G%Y6?RF3Z1XT7L/=(S+UJP(-J&E+RY_?0M^=\G-U?D=O% UPXY M"Q;;-?5CXGCSQ[=OGYZ>OG.7GA\%;!OSX:+O%L'Z+3DZDL1/0^K [\F9 M$U/RQP_O/GQ_].['HP\_W[W[Z8_?__#'[[__[L>/[][_?^_>_?'=.Z-;L-F% MWNHA)F\6WQ+HQ16S7HC%SZB^_(,6/D!GI%Y(9&-'RD M[G>"YG/D_C$2/,1.N*+Q9V=-HXVSH'_ZQN!D01GY/F3?!>'J+?_S6_@S]/MP].[CT?J(<_GP[MW[M__[TY4X*JHQ\_S?B^?. MVW]\"W^^=R*J^:5>\23X']*3X']TXW1;2?6'M^*/9E.O8@[\\,;\0.DY4'^[ M_E!$^<.[M_0YIG[DW3-Z!,UHB(<[.OKPG=ZR*$RFM72B>^S,?YF:_C8Z6CG. M)M]0_B'5>.&PA6@992;T\2W\;>W^-=O_O._ M$8(?AK?>!&%,Q/=Q%2R06L6"P;^.U*H=P:^.WG_@1^\[3NP;XA=^625+_K;= M)-3Q.6@2^NP=.@EUT&#T'\K&+3R9C4:,RKX!^.$(?J@<,_?E'#:H^OK5G=%\ MX-0ETWCPS"+GCWCAV/4?QG[<%WZ/;RF+(_6;RG4H_IP/6X.".Q[_'34ZZ44O M1 <'89]#<,CIRUV<8NWYOYJMN[YODV$=WP]B' M^I7ZYV7C^,A"_X;^#.^&/ M8<#H'5\S C]\N;EL\F"_C9WGP _6N[?0Z>T-_Y^_*VE)_??8=\_]V(MWEWS( M<(US^89X_#5MWES-5,W5I5SX\I"K]^_@_W'1S)#2](^.[Q)!C1CD_N-MEDB& M_#:B[MS_3_QY$W*9RA=+>,5_(3O+)A4=C4]QKW[)M$J[R5^J'>M\'V\YNRC6 MG0:^RU]^ZO(?N*SKN?SW[HG#X!6[?: TCK[XSM;U8I#U8$L/ZEFSN^]A=S5A M F*RI$U,XD12)X(\>:,'^/9UPVLV/-%^CA>+<$O=\^<-K'!TNUVOG7 W7V9^ M?T9CQV,?Q*8?W+MFXS_@9YTH9D=$TB&*$!P,,08)EOF_OA$#<57J]00T/@'G M3NASE3FZIN'M@Q/2S]OU/0WG2_Q'--_&(,2"4LUUOM.$X?DRV['DC'1.O^84 M?FM8U1^'[W%$0] C02-\E^)O7#>U59+CF'XT?/]#8XXP?+C^D MR=0<@1]:"Q/D36K 5^%B'^'BGULOPME$8#!SMXSR>SV*O34L^H7CA;\Z;,M? M@>5Q%/%UQPXA=;E2<.4Y]Q[C?6G$_\;%>U=\G!_S,D@?@]0P-+]2%N>ADI:-4?CIX..1FK$ MUX-RH/&J^0ZCR/\0,)>&T3F_K^-=YK!T2*_FP/Q\T($Q!_PW(H9\/3#]'9A3 M)WJX8,%3UF36GDSU\7C_[K#[A(]#<*#70S$:8?='&\+NCW4'ZOTPPNZ/KX>O MD?]%;\R)$WE\XV\H>)ZD0VK=FWGW+[IJBI9SCS^K[NX7Y?W*7_R%<@"/6^ M5?R]9J]^SNV5T?EU7_;;EU^"P'WR&..?RR5?"7\%08SBR!?N4U7[ZGW[X5UN MWQ0Q_+@2]W*0X,2"DS^F;_7;-7[HF)7[;PLS+^7+,U M'W);8[AH7W=EOUW)1DP4[DVN4XG6C]OQ\8-&X#@QFOS7<0+DH MR;JF-9OV??ZS CI'2(B8E%ZW;K^MNP:/2^!#V.IZPX(=I2?4Y[.,KYGC%PL9 M-5UJMC)O/)'T1+2KI$@D28(T7S=U7W$>W&=WSG.I.)_\O6:[\D8/Z9O#WJ\; ML]_&:&/1I1_%X;;<7E78L&:K\M:-Q#9ED'G=L_WVC+\N:R_&I>-7'A@>N+! M^;+2Z(JN'/;)B6,:%F]CT[XU.UMD_]"$\=Y,D>9_1^I$DG_=\8.\7C]5>:M^ MJMNSO!W$[/ZZ)7OZ@K:1Y],HNJ4K./0EN3A-FE=OVQ_R9A!%BTABKZDXAP5* M;^\C^L\M7X#SQ^39J_A[S4;EC2 )!2)(O.Y.]]ZUZX!YBS(S\5X$:O8W;TEI MZ&TC;]00K^$>K1UO=_ _Q9M=VKAF8_,&F (G''DCB+UN83?>.',?]^I1LYEY MPTR-9^YU8]N[Z"H^RGRKF@W,FV,,$J^;U;W?KF+SZGO5;&;>6%/MPWO=W];. MO.*+M;A1S>X51J=D,H)?]ZNE?Z_B\\LUJMFOO%7&3,=\W:K6J=O%WU9)JYK- MRIMC"M*H7_>L#R=2Q2?7J&/USOZ8M]C4.Y1>=[J=:;3LUZMI96?(NUG6KV,F^PJ;*1>]+0?%-/I^8$-+/L9#%O M\J8?F3'S>C+:GHQCU\49@AM9?WE[G8DJ"C6G(6\:*CX-R1#I^^'U%'1I -0? M=U4CL>1[F0GWHEMS8O*VJ#IC8NHNJ;4\RFF\'JENCE3%W;#7$:JD4W-D\A:O MVE-0?-]\^WH\.K!,Z]O ^%W%>].L9\T1R)O-3 MVZH9(F;9?WY>VN[VO>-&P M:\U^Y\UNZ?U^E2=LN3+4G^Y"QZ6 ZUNQ]P>0J3D'>8M>C;/#:/"6Z,%>#T;W M!R/[[PN8.KWRE@>>D%IZU4?EIWUSV_!.R?].#$M@W-=3T_VI4;OZ2'-_.EX# MJL*_< &D,^RPDW30G*V_$K#U=^B3Q>10T,*>BG'^O)Z[[$[>O ',@J9KS MDS>@T'IZ"%SXZ^X?&AQ0 ,I<$RE0U*-FGPMR&1NA M.+]N:R?;FD(_WG^/B[K7;'C>K%FSX6F YM<#T/H [/O.-^M9L^UYTV1ZVU_? M\%[! EK696B$-=!VC)H3E+=L]EWZX?70M3MT^UXT^_2O.2QYLVCA87F]=2P@ M7^S]WNQ-I>8PY&VC97@9KT?";C DK'W@"RSDTI9%6F?OHU0?J9\/"K/$1'4Y M$WAZ*KN\*K*]GKQ]+Z7#J=6KVF^L*(V=^/VZAKS3'(FSU-9)G7 M#;>!/;/OSN]+H^8(Y$V>A8@UKV=A($R;?8]'!V1K3DQ1OO$>2#BO)ZFGA)#: MD[)_MYJ3D+>J9JHXO&[TF$N!V*@$4G>$\A9:&X5 7@_>0 >OU/-C<\":(UF4 M ][CD7SU-/5S1)/BKF%P 4^/(3C7A[#(]*T3SKL>H.6)Y W1E,BB M>\4$IR%CGM 2L.0S(7HJY'Z7I_)Z975]YOAGSE<\WH'AC]\*&_BSDJ6C,\K7 MCG_YL; ,FH&*<'YHX.BSOH1/8Q@\KS^H=W^\$^@LE2SE'8+-4LM=(1 MS8@Y46R5BNK$4VY,5B/RO)[GCL^S"J8\Z"AF.M>MLO M(0U0_EK$Z])0_O.&/E)_6^E>ZX)NS6'9$R\!4Q)"YTC]388&TU#_1@W_>IC: MH]/ND]NZ5]^:0Y&WB.=0;;_Z#%;XGWLGHK@-S/\]MZ9.N(">-W1)Y(_F\7B^ M#]EW0;AZZ_GQ6]=;OY5MWCJ,WP7/2.$AI,O4>=*=/G!1 4FX\1'\_-USY/YW MHV?,I_NG;R)OO6'TF[<=S8S_+#RD1WSMG"V+#YQG*9V^9QVL'<]O/^D4F7[F MC$,J07Z< Y5U!J,W,8F$9KYSNZY?(R_ =' M?LMOG*7FXLES^2OF.V$8/#59=!:&NB\0/Y+_X-R\_^GH_?NC#^^1IV*Z![,3 MF3O!'Y2/>A(1!'##?7;DQ72=9R#*;P'O;5R?1^^_$U,NIE0]937?PY_!ZNKM M)PYS_ 6]?:!F,#SH8[GMG3M\=UQ(/,>*]/7 MR/;6KC+Y9X^5:$;'YK?0O0?NXSZ?3(_##WN#)O7> =X$+)L=7:,-"(^'D#"!>/M+=E:#)*WVN"MH0]INQ$#Q&K^N'8VP+1OEQ^'O5U^M'J>6B) M-CA0G8Q@>2T:8D_MQ?U>-"WS6Y.KO!>?C6A9YJ_S++Z]5J2GT2VO80\)*'NM M8F_C3_NU&O:QLGL6@P5&;JO_P@;[L1?O4G7[FARJ/0B-T4J2BJ_JPV12.,#( MY%N\$1\"YM(P D]YO.M+T&TPDN6[^,2)/#ZQ&[H!W[]X.(S)ZT"JA(L]+]O# M!["\$DUJ ^[)^SXD!Y?16XO@]E_!*M#>YJ]9$RK#:0V'ZP8#S;T"@VQ/7AI0 M&LP2OY?AL+CG8)K9P6K82'2NEDK34.M?B*&P[UY4$AF5'M>I4C;8/:P3B?>^ MAW,]+<^]*!5V3R:J2%CFIF'FYIX,[DEU&/W^I\,4\Y^&TBC*2]OOJ3G4$K+H M4\T5AV_L12WI.4+M)BF=WKF6DR4]N+:CZHRUU'G29,:A^31C[1!:PVE!!VU7 M:?_Q:$0'\=68WF#:T;Y'L++[8'K209M3UGVXV*E]-Z.Z_ZATC(-V:!^2PTA\ M^W\^97U'(_L=M%--R0TN352BB[04,1K0'H?J+,76U)$U'&L_:'%9RJ*OU:C/Z M>-:PN[NFW2 CS1KI*6ED<.VMOJA&%\&(%80'X[R[ [\7S8&]@MUQ?0#E4?@2 M.]SW0^F/RCK0W7JT'FR.]0.IC]-'VMVR=#?@,':V%BMQ M,,&IQH@?($$-,)6A5W<_7,5VRW?(6*.Q!Q\('-B1^;C5Z*-9PUZ \#I:X1[G M-IKUSP*W=;1TQ61'P_4>N&4=+(PX7%]2-7?\0JH?S; +O_"P8]+GTQA^6 M*^>>-H"< KP;LQN@]OQ\]/[#T?L_(&-%U*JGRZ#I%?])M@;JI7/^* :'AIJZ M%T,'328]*GV.J>]2U\#ET@,'BU13_F\G#@HP?S38SM*)[G$FV^AHY3@;@9U# M61RIW\ N?\2%D+_X>][)]TL81-'I-@3!1@V&L__3-PT[O3V0F?PYA-_\_20 M5"*P@LQ]_I$%[)'_S)>2RQVG7"[SLK-LV.G06;9?\C!TN&ZB=)7/ < NJ=_< M\9\B9X%OTZ<4*E9V#_:DT@F[$5U\MPH>W[K4$YSR'Q(&^3]T%B+. &\*D6Z5 MX:*RZ6 []0U#"K)10AGYS*FZZAD/YKU[?C3X(-2_LUADA\@> EYQ_%< M+H2;DGK1%]*X;\=S_B^Z7@2WNPC6XS2X8HO"8U[9=+ #PK^R!3BZ \:IKO#U MIU%<^9U6=AF,D>3FCJX"?W5'P[7RX$?SD$O,J] I/>H-.P_&W)PKY*&AJ\,6 M5+YG%1T&8R)1KK5\*=-6#<'K9"?_>&=F/6:X.X328&QS'3BD#GAPQ7\ON?I& M-_Q64M>5=.WQ)P]W+9V#E^'\0&(#?I51''H+S-0.%K]_\3TN8]U^J;Q?JOL, MQLI^_OJ_4B>\>PI*6#R,UG#RG92./P ;@_W2BZ#<'; X!VZ)TQJ^X\@G5]!CN;7O@7RV( M#1B;7GWTB]L.-O4KT'.U=VEW31'CZ)0YWCH2$$@E?#3H. )90UF^3 7@9&?\ MJYF@T9#,H'*\$SO\Y0PV#]X"35L59["T^>!OS+6SP[L> BN;V6R*>@S&1M%E MKN3P734_C;H.*,8*/4^X=*1D\IF6,5/:O%L&HC V)L__E4R<_^/O=V"J!/P^ MUWOTW*W#8&UOJ !NBQZ\S5T@$*7.4N#RDI=#* QWXV7,VG?T.3[A0_U>=K65 MMA_.6*7-2WHRQ_<1?A-E)JJ*'H.QP>\CM&%>!"%7SAZ]8&N^&B6X A-1_)Y/^9:&C]Z"EDH\^Q'I6,I42SOWA7Y!KT!S M3ND;^IHMDCGWZC^1'[",;U?Q(93BJE4@ 7>$XCD/O?ANCL!846Y'+Q-6]Z8QE?_F> M@/ #UJP;&F]#?X[[5&GDVXO$@(S>QTG$YA??$88K_K7Q1QD$\U+NZOIU?/]_ M@V17>56AIH>(]!JFYK/FBFW^U$;3D7$$U^C%*;:#'D+ MH#E>FOGT?Q;!RH>S_K[\TZ_I-YR=R @5]85I/@6V6F8EJNMFR8TOM+1CUPTA M# KP4-&Q]^AQ@:[ E5_9?/!CI;,%Q'$O5\,K.HS1D7(M);8$Z>C8_<JL'_C@= M/W)!?D7QCV?\O.JX[U(SM-U9#&BY$DGLNP)K0:GUJJ*+I0L+[)G\Q-[NUO4*L;)D+*^Y5+OP-A#S6NVI/HC4<*8W$0Q1& 11+3,J"LW(1 MA%R.]<7\%CLCZ)R_"/@O)I/UE1K!;Z[YDNM5UV#$XG](V29%+F55B*:U.0RA M99_R'^?A7?"4?;*J6H[B*-=(.C<4GE87BH-=\*_182#XM!>@BLF.*'!58M$8 M6 4R]J)QM&HYA4$?^^871W#A/GR"VTG-8>0AZ4=LQF*6E6%&C:U1T&(=GHV;^Q6V' MFSICP1-$17"YY2S8WL?++>.$\>ZSLRZZH$J;#6D& M$69_M$EQ"7 >H@O#14MLME1/WA+2I/. 42&REMU\F?0B8?\2@2*!@13Q":41KD[K;++8(PH3(M#O&?-^@Z;/[9= MQ!C ="+'VWH@A]5?C65 MN<#*VPZV0V"BF"^-B(H*ZT9QV^&F#O:Z;;A#*5GZMZLBKLO;6S4\GU)(H6)P M53W_%\U^YN7M!A26'5^$76+ZFO([&W@4S4V3A]'J.MF"AOQ#C)T50%"B6O5G MKF-=^G\)/#_^E?]EFU,\F_<;0>"M+OQ0EUY5T6-$MK+&-C*[W_&=\ZRDDX7 ME"Q*1*YO/Z3O1$8SJ Q_S]]R.4+#8$8G=!FD8)_/G_F5%(0N%SS"'6(K[94B MT>>('=\1_-K= L2'P[C;D#ABC_42\#N]EV1] C?Z;((!QW$ MPJCX3X62<"]##+90F:!B<:G/E[GXI3./WP4B@4BBZ<-E5O/9=41\P,<\@7Z\ MHWN6'=>J+AU?J[]0GW\3[&9[SS^)2CS#DI8#.U(K/:=C2=&^@>MG MOOP2"0-:691899]173Y7-7BBU7U&)+_EI1>E2R>[D?QMW]BGIF0'UQ)W%T'X MQ5_0,.9" (872MRCVO3T?2A8U2MOZ,J#=]N/X0TH52P4-!YPT[#9U5:$O(T0;$ML7.73K/3H.Z9-:4.JB;BWB(J V5;DWJJCQ@'%V MFPU#D<%AIT[T<,&")P,HM?]Y/G>>KLN_)#R?Q\:W;8\P$;^>1 ?,*3%+)P2:/J* MAD.;3 U[>RV<94G[P5@05QR$ P0^GTBE"%K<=OCHB$SEHZ@JPZ"RSUB0475N M!%[C\+<49/8T,=0@P?E%J5SB@3. M7_@%"4S51.8V(#"2W+DZL-;BQB.)MC]Q(B^ZW834<>?^KUR0@ _PAC\(Y5!= M#;O;C8 2,H,NB )OVC9[Q&J;CP=XY7@;/P0AA*N6*J#E/;HN5Z!!N2.L4(9A M5F AK*A74--E.!"NTBQS=:M\\?EA9A4KOQ>)@3U"C7+J^C)E*2!)ZLK*7^7G MI:SI<,MGE*.!$.%&8>+X<"+0I38)LX@ZKH3"TM:YQA'1Y^^%V M2L# IRP?95M2U'1,"5P'9ZF!?4">J$=^ULI3!GL>U)+2)P]= A=T[KL%^>*5 M34>&@UMFG"UN/'PP5_)LUH5P&2W'XTV3#Z$TG3;UIF5Z#2S[-&5C=--/*E8G M1QHN$SSG9CWTAB7$#J=6*M>U MI]SQ=:HL3BKGJ,+F7]9TN+"?Y9(_?_,E7[<'>$[ADI^C' G_9VBY"+GDP4LI M->#T+^J5\#Y&&E# 2]7#_N3XCI2V11%W1/7P79F_7"K9[45D6.S657TB:K[= M<&])$NJZ/'$8X$W>/E :WWC1[\:3;MR>5S4936TH#FX[#])FB68&])).PWUS M_",(PG22'+P&:U]#04CA7T15E3JS#R T%MSD.N=V:?/1P>_#Y=< S+Z&WZZH M#^I"]40@'*)QJ=<@I7G4+,)^-+JV#.3 ;U30:58T*[MA#R8S,F/VH>74?@G+ M[Z+LD7[B+]?# M :4_FQ#M^.-"F;'VPZ]L.F3&JA?BXP$Q&0 )5)-O7M)\^ H6_!.OQ=LJ:#JB M?-5:Q-8Q M=G\V_4K7L:E";3UG0:3"8M E$ZB,1PN2P\ M*H?Q)^<9$F@U(M*IL^%_J:A)O@>) =7 *!9'+4%QHX![6)X*4=IA.%NR1#50 M=4-J+K?2YB.QZO*WNA)CK;AQUWDH>' U#EA%]DEAPT$3KC*>=G7CWU37.*GJ M934;O0Q.KA26O*;#@+4@4'VNMMVGV@R8P2-B(+"J=C7L:$'+,6H\!^>$MJ-I M%[=!)=,K7(8R ,?"=M,SXY59,CLD/'B -@9!"P@W+A5>@%/+\&TUK67R ,BRC/PM% MM&05.B,_)"9.P!Y!'TAK"]6(7E5]1B.*0\KZHJ$<+MH.;]WYC9\F+COE*DI7 M-!RC&V]_I]WPE[^1*%/G<:[L,A*K"*9O0L&44L=!>?N!TQVTR%1?6*"P]8C, MA.E,<5CQ"):\] O9A\(H8%L-5(3H9&?^I0*(:@\"XX)-KHV<+C^IAQ";3"AK M1W&KG1N2N";B^#L5T?1;$/Z>%!TI-"A5=ACPI?7Q9OO-BQ\4& (NH9&M*6H= MU.DHAU :T\M<4J[03/TZQ4C;2[@XMU#VKZ["81G^D:W1AY3?$CT=(HZ5SW.? M(*S&%+I.,Q*64G )@ Q/XYA1]Y0Y7F$V545KJT:C&S@ZBT\]=T&LD-7NJHKVT^),H,%$Z"^-VR '*C1<='W("B+WO,R]M-SX/; M !CBUP!1&!#U7554@JR)2U]:^ S0SC*AOK[CT/AX^Y[& MVFY=&V5EN3R%%%V1FE/6M.,9?:9/4ED3".&^RR\KT-O^2N-C-]B 0R)@WF)7 MIBD<2F5P(>@B"&_H9ALN'OC7"L;*NO/?H.-H8CT:QFR,,H+ND_./(#QE3A35 M"G7[4ADV$P1#%]VS;0@EQ5 5$*CV^$>9P,D5V'#A1:7:X0&$!HSF-ZNA[IT, MT[A[YY#NCUX8^$($@2]E%2**4L!$/%,5PGNCGE:+1O!7FY\,%+,<]G^\S6G@ MEA='+6QL=;IX,SD80W?FQ$YQGEUM\Z[M$6!,XL(;QW?.0RU?-0:L,Y3%(1DI7O>&'3 MP7//95%$G6);S\*9/=450/XVE1Z7)F>0@'0=$%=83F%HNY2R_:6-G=+4M$?XP,'DAH_N;QQ8 M5=5CP,@@P\#%'TB?_[B@.HX# ]\B_85A&\3H9O4N]DY(6WHLKC@-=OW ;\;/ MVP(EN+#)\$GP[:G.V".@(E? M6XT15MQV>-&)R_E\/A*J%H*SJ8C6 \(P_A M.JC3(---@^,HF"G"M6CLN M;3ZTA(R>W MZRUF\C0!*RT/H-R+RM!8$T7X]%=U6?--N@[W\ )V)A?'RBL.F2T&C4J6WL=K M)YR'^"FX&&FB @@K0I'K>HX@?K76WA*5&5RJP'RZH]]YVI:(%:PI"E7=UNJK M*\&U2A_=]-][@4NJS-PO;V=UF5)/&=YMI;A"I4V'ON71LLW7$51R&0QT%T"] M*A31*\M&[T-AFF)-*Q:Y%%BUK;?4[G#_Y-(P>O$WIYY=M M,=S;WJ96BO BY(VD,NW8K,HB4&O*Q 2[D^@ZEL,)_?DVUM&WA5$;V39#AJ9A MRH#*B'=8G;)4U6- 4#_]M0S1N^9'LW#CTPTZ'EV*/3#2FZRHO3CO"0JGXQM#__ M&NM/?[/.0V:G"#^:E-R*P][J6G<>I\^O-CD$7R<,O+C-%8L *!6,Q*B$A>B MX C48^VSD*>G$1)&X^Y#*QS:-M1BPG(I4?.:#)LUJP![U)WLLK;#__L O;;I5]=S+:D\=B>8FE!;?\4 M5Q$:/ERCTM>5;F09>.J"R]\.$X; "_Z[['FJ;MNQI&Z"EC2HL5'5O..9W5+? M"\)JT)-T]_&=5=XD7-!Q0@(CXOYC&\45I;[*VP\)$2T ,8(H MKD;4:-)C< ![9[U5SB_5^<;J6@]G=N=WBPN@:-XCO:6+K2A8 M*P"5J0N*)T3R;)4//5=V#-%IRZSRG= >@5U8&JQ1#S]_CFGH.TR!'@M$QE3, M1;-8J8.(#K<8V_N(_G,+IOS')F]Y6?/A\!-H#,6P5JRTBV6;S>22[_N8RAKW;%X!B6 [AT(0-V5U&7-M!@T%@?2 ML=+Q+K;#Y\+35'@K8KXRC5\\1A4F2 -_",4YJFSV8YG?AV?>1.# M6IG52\J,R7**=X$1NQ/5EW+J;9B1K41!/$,?*U$TS,BBVH3B_\7G?/ [!G20 M1ZA)6?P-(52X3F R 7?W"HCK:LS1!&C7@824-;,*H* MO/+R\,VR#J-B0H+O_&LO1HQ.74O_3O3P9\I<,%CS)UA]_W=\!AY8E0HU@+H^ M(S!T5'SFS9S4M02&NPN@&J+,V"W[SLTF@YN(#4%.FF*K$_SK^XTI8K$"#;:L M]>@C_FO$L+W)C*U@!BJ5'=3+J*!CU6EYOJ;A"LR(8? 4/\@2[*7>RN+6T[." M9-9_MDGGO?'2_YXXY,$]GT0Z-O7U MMQAAL$W.5L?20$#)]W*RNW8JO!'[4!C. TH7#W[ @M4.;\=&^:MZ)/H&G:TFXD.4LN=Z3NB5%(\L:338#OS* M9X&^1B>N5AX+&HX5U%P!1R4FN22]YD \\VJ25G62"X^5P_OGF@R.C"]@>U*+ MV;C6Q'XT>H9ZY1]K$@QW',EDBRJ!JZ;GL+GP]15<2E+WAA6A3FAH M273PW!QI?&Z6E9-I/)+8U0K#;D'#$=@4XRN?1U MCUYY^XXE\?)28XF*7BZ<[]%[X'W79P^ V^L*G8RL0R5W97UW?L&M3I M4"]E ML"N6["99GQW=]XT>\7(:6Z^#37+HK.G_4Y=+R&GRFHBEP^X+M56^:E MO/'@OMPN4AZSTKT.SJ^I$FEW#EU_1$EDESJ11F$4(U6A2/ \A,+@1\7PU)>$ MVE_M#UM:2VF,L<)88FW_>2S ,T:EFQ*MJ+3]-)1T2"*\XP.7*4D'$AO. M%&:$DXLT6E!-P>#%U;VUMUV76<5J^PVG+W#5R@M%E=;LUY)XIAA\3 +L"J+, MJA^55B2'3 %:>G%%W6&CP>! >5#R53BCY"]$#F2I;;.ZUY!K_NA!W7HN>0O8 M8P2F@C6N '6NZM-YK1[^' +2$.B35]?E\F5QPY&8O;DD#H_(8L?O4XQI]!92 MGF]D#*_H/B"#FY N!*(^_YE1627/O&E+F6O0U7+VV?L/]VA'*E"TY)@-=J7&#[4!BCU&D47VYPT X@-,ZH^D)#P2%A]<6$1N"XJ$L-:NYG:TYI M.'LJ%E34Y<*Y5 #FF725$O[+6QKSZT89QL!4669O/9C><((\;DASS.3R]D.[ MY0% "3.2P:-['H9!>!KPBW2!5KF:ZW@O$F.KWR"LLQW4;Z@B-)R:[?E4X;26 M*<]FD]&8-*I\O$5-AX27R:0?*-RU\KBTZCX#IH^J6+/*T*I+E<02I?\^"N&S M,FBHH.&@0I 3.UQP#S8/W@)%S$K)HJ+#X(Y>PQ\/(12K,'=5-G?HEQ$8\'C% MW@KGDY@$Q.N-X26BF@J:]J^=,(>@>2B5">BOK?56VQ?L_]KRI:4AVPGXMHJ[ M-MMR!*\Y7U899(S?PYYVONK>5E\50P96I0@1[(V&&SCY %57>!'NUW?1< M5XCON6;#EM> 6Z@&?2+;;*1G&^.7JN$Z&_;EE5]ZRS&K>J.NPEK^'@+E<;Q48*546O73#87T6*Y%>6WX) M9EL-B*B\X,*).W^DH0]1]HE]B%_/M\$RU'^!Z+KGVR=G W^IO&;:T;0JWD)4 M'4PUI+P9%'YY?XR*MW)ZJ'F.RR!V<(7/:P$G;WW@O8@F- M4.9Z,=3"P$->?S$5,?8Z8>DZD-#*-247FG0=6R2B\(]V$8I826EL.,YG4'*< MNDT=ROM2&>[1PZ=7I6)62.$%#4<6."GRY[90FG0C<^?*F-F#P)!Q45(4%47M M\W/CGQ'_<+P%'J?R2*F]J R949.!&^'"DTIS,"S\Y:DUS;H/O)_\J#4WEE=V M>1%BA#41K*7L59;Y3'TO"*4.#PF4$#I2GIQ4U7QL[SS&5XM?7\"CXTU0P:"7_GD4>VNP.1A9Y!+HMF@[FG4U\&RKA4W,9 MIN9!0U!:LA8YTU('[C: MK)49+O?.E_P3TN4HKR%J/?"/XSCT[K=HU[L+(.@.K):!K/0@C,GEX=&=CC(X M,I6L@!I"0#M7A.(=* PQ9%WQWVXJ\L_V(-#Q\VHF'\ X0CJ1UO_BPK#5/8;3 MWM<;%NPHE4&0AJQ>;66O[S>X2F2652M_Y+.-$#_!\'P0&_X=]I MZ"T@2)7_@1^?]"^,EOH&X _>)H@<]DL8;#_*\9OPG?_6G;ZA_].7VF]2T^(,;;,-%F7U0);XD*2X(S25OU+^S>PTNQ!]Q M*O:-;]O3T]-WN'6P:Q_>O?OX%O[\%HE_\Y^**$FHSL@]708A)<>,!4]08IOP M?Q)A529@GYP1.>A_O$TF.GZ6P8--KS)\AYIT7\S@$3D)PC!X B5P[M_0QX ] M\I^OC%R0-LPDQ$G@;(06\;@"9L6=RS'V-PGFC(!TF2^E&=R6JRY,KQ? M.,]*]PXVC01+N8??]?ZE)1BFD$_'M0$G^0V:9IR%@6S"I%+_@&]/6/8AZ*3- M$5 T24*4"*I3X(0-Q42Y!RT1][31N-7^B &('(' $"09@_P-+V SURNS M;#Q\XBNC0F52<++7C@?.&-.HU9C/GP6?/EVA J[9Q5'(PAR&;/@X*.(YQDC3 M8C>WK8+/%'T" Q ^ CF>.I\9&6(T_/X772^"VUT$'\QI<,46ASV0&?:0*I%D M.8^$$R9_$Z3[_2P[XD<>RT'XT!'3A?;=]M)S2ZGU7Y SMM[>+H5^NY)89Q&<$R!\!?:('(/P65$-,D]$XB!UV5<9M M7,KMC-Q!S[Z9SI:?3("SVIQ3H?BPA.QTV& F!P;%&4EH3H<;\_15LF3IN"6N MWUN1]" 4+WP!N"2[1LGA9"?_B$;9-N=0#0D&?\-A>W\M M+"P%RZQ"4+,*,W)O?1GR.(/7(07-1@G'TIMZ[+M&O=1V^I0<@5!!&NTV 7X= M\FL@#HXR<=[3IT -1MZHX;XE'E&X0[Y8)4MO.-WH6VN<[0=GB:5=GH)6/C"# MJK[#^-TN(CBYV+6D_$"KF41H(OKP[L,?7L1"R*T78QWA8"0937RK,_R(\5R8 M \\(C$GXH+;\GW58AR>[-.8K.,+;?>.*&@%R+XG-G,*(')*_ 2T+E]RV%QS.;C^\YZQ]-R.<7&\.[2YFS8HF M;,?BW'+F6DH^HWK2>%MP+;H=>"R($J1--?L:?;DLN@6[9 M8\H>.R!;VI#PP$4<55JPY?.*M(0-%JC-;#ZR$*&F"W0N=M<4\[9/F>.M(Y'= MW>KM00H8F8,4R4;0GQY7 M2J@@SEK\R>5J1!R0:'N_D'I$$/:N*77(M=Q#':%]K5A%HM9BSXL4/N7TVG6P MH2<>AA=$8#.FSPOX$D&H &1LM!E3E>A.J$P?A@#A+:0:0 %.$<4E_+U37 HM M^1:KNIJ\M?U681XBF4,:%S_30QG342."'GDC*7[+GUDZ&6;2_HXJCBRY-3IC M+&-.\@1/CI$3"Y?HZ?GIG(M#CUX8^*B&,BY!A9O>K!> R(DE:Z$,N.L]>N[6 M8?#9828EO- /WN8N$ #9(OB[U:,"0\&UDPPV8LA $N5G*2!&GV'T">1V12.9&'&@:3"/&$#RY>2JJ]AU[_FURT?C M]6H+5D=M+FN%T"N( DDY+[4T5#7LK3Z!G7*:^K=,2@7 M/S[3XR\K2.@-1"N4L;=O//X3#O&MY5Q/0+$*?$C*[#RSX(N_W/HNWTU]B9(- M'Z?W?>R70^722VZ;7(:K&!$S76W>1:F"'4V0QPZU_-/$/@5#?4N.,R:=DNRN MR2] -O#KH%6P9,7K;S$*I6=.\\CDUGLQ>UZ>B&F+QWQZOHJ9O:'Q-O3G>+MU MD6VA8W%#) SB,5S9EG(L>N&S'HW "$$6XZ@/6M[AEK(KTK"B7WQ'A$-3 =NV MW>.E*MQ:@R!Q^5#$E62GPU=V*^_A!E:$9\3D\&RJS)E/3",.>WY.4#/_Y+!' M)SSW5_S;H2'JX6N/'ZU.X@T%<6)0)Y*\G6C#;IF3A_-E,66^@0-REH_D:9K5 MT&E0DXZ:P%$)#ILQF!FI#]:CFWI=$Y99CB!9CIE8CYE<$&?@!1&/]J%!),8M MC->KY6S3=I,W\\^0D#4LR3;39N:,K86DJ-15F1RB_Z,*J[QOL_KGE[< -P@4 M)\='(C +W"-)<:9^( GMWN-VC?HUOILOV=O^ZS;LX7AQH2U.CO%OA.(H4^,R M8ZA2K)WWRDQ26O[8=7F;"*OZ(23+H^O2UCV/2-(:UCG*Y.R[<7Q-8=;]F+L)BMZ?"3 :$43,G8O!CPM0?, M/5>Q,5*FA+1/]Q_;*$9G;1_IYWSS=#Q.,B@Q1GTIJY%&YK87J5-8T-1 WCW9 M)4VD6_[XR0G=.=;4B7[A#:&D@7##90J)XA_/^*VIRPP=G$O'IW"$+M;WP>LG6]>DB*"UF@GS6S.MEF]L[8X*#DC=S+ 3-Z@ MTV.PS$61Y\U2QIR()$*ETHP9[2HX:2:C5V14[$2X82E&;@4CZ4#7B7!BZE]5 M[%A2OA0F*YS_3TZ\#='\<$,W*L)S>1URC?)1E$G:D1 $/NA]\0"@<%7"/G7@>$Z@_L8#0;\V .?+,UB M.8IASS9PR!<#./N >2Y$"J!!BI_=]DEO)E6BR$Z##5;!@;4!!2-Y 9LH]%'_&[\D5Y9^3_.X-_[Q05K$0:&M* ME:T]T!E9TI8;M0,NE(W%\!FG7VV#K!B4+T!S;]18+\>(+7E BNGWDC3&(E!-2PV#92&LQ M.+UQ+#?Q>'YZ6?I06>)1P?=PWNX]'\VE'1O_4K!(\%[])? X@[]R+K<6OKA^ M&)0[J,&/#.JVK81%.MJ^0GMA-.T59^R/6A/9B&KO8^:B2$A/SQ[>90@,G@ 7 M);J_8BC1PB? BVFZ2>K,E#%DL]1,P95^$8346_EB7HN=4:>3*\;X+P$TDO@I MN:@_7]XYS]?BD*4S-,1]WN8,RPG)+W&Q(W$R"?*&H;JSXAK;5[U@.5>'7B%8 M&KE,7_4*R0NE2*I*J?+"ZX3. P\(YW[@/0H\*V+<= O]-(68G__T$?[Q:*.%XMP:T0P M4H5DVBY\)@E<5(BM$V:-::Z*ZEXEH:=48[;:, !W;/6XI;[';Z0S"\IF1[-G MA@U^(!-&!C"PO3DQBQAH+WVO"T[8N)AH6\LARX;%6@Y<4D #I,.@F/FE?^IL M/"[OMC]@DA!<7.<:?)G+GR+<1<6M+;9TY.6-\_0) M:IIX#FM7D,QY(FM%:!*SUX^EI,7E/AV%P7F00K:1#H2GYLQ7 E>6/2 M#-F%HUY9-(V$NS].AQ.E;YAUF15']J(G4K%'76Z*"*CJ?3\ZF;^ZB-.14C9W M@;'@"=SC%T%X%FSOX^66J53X)-N]BQ1N!3<0:JHSXE.^76H&_:>C]\DKR[!Y M8["I!T; 6:G97N$E:"NEO1?62TI=!X\>(LE8I M@_4YCR*;:IJ\L2Q;,M8== O I<81I)9Q#<7^8)#^T4/YJ&!>FR_SN?LM7SE- M&S0HD_J_R71^B^]>.B!0F5HA]:]5E0RPWC( CIF1'03NKQ U6/\H4T-X^9NT)W0?]78+"A M_$D!),'XV'?A@]U(-UV[2UW0G2%"8RSJ62G:*"!.B3.69>I:,W6>,&4!9Z'3 M[3*^IGK.+.GU73*8CX%NPJ;UNI_=LYR$2C=AV&ZMSU^"P'WR&.L#2T/1'APU MHQLUX=2,T>V;K1NH-;-=Q(@\?\K%UM7!H/HI4D32FL+\S5NSD E+%V4G MO)CV]10O*J^Q5Q30W_B0-/2/O?",#QQU5?)>DB6<+D'"A%.V@VO:%4?R(QF& M$ZTRTL662\]M!75)1E6!M_%MM)@YRT]ZQ+--ARW8F[*V!1:8'=OP<.)(]&]Y M_Y W(?^L'BG S_0> MPE4U568\-.K).KWP!L91@YK'SE^4 8:U3CP3TFX9$LY-1/^(%DJ>J*'5I M9@">$G.6,EN?Z 4%%BBBDY@X2\_9&G 'Q.W- MEP:H8GMO*N-#!/#=\%-DPE'",V/^6V3+Q ^.3U*=)L$RZXI;2T[;.PC*WH8[ M=,9)$*_6Y1X5T32FVF1881DNI%=6D.P;1"))I#GEQR,$K"V7/O\7;26_R%P: M21'EMV?":8Z>"3;,_!,GG>.+^B. 5*E!LQ(=+>H<1R&G!KX('N4^7@G'N*RO M@N,9:&'&D+:3$T3=9LK_P#69%7\&1#C"GP/&53'$LI!0%JT\G9H^B%6B& .! M B(+/\' F8\BE$FQR;+<3A?JI .H,X_V30DR.0XS!;>;KR7O1?<3BHF*5]/ M)U>1(C:AZ6MA.0'H4C0E'!>QB=62"]?NKGJ3Q;KG[=E0EW]!M'G_ LB=\ZR, M7 O\=C]OV^8#26D$"F>D21-!>S),L6'Y,=)0)83B11BLA:UEZ_FK^4::6:(3 MN@Q":F2EGC]S03 (78]KQ;O+F*ZC[HOD7H>8CHN1RU_1$LA#D4;:7/)9D61: M))D7N<>)I5)Z9T,5SA[1,J83H7!MY$K9*%A!7D[91#"E7UV$ >8NW =OB M*K3/B4QH$TF<:.KDEJ[6-G)8>^&2-6!PDHQE)%B#P8UD,-(,KG&$WD77/ "! M_%+]E4Q#;6G(+L$?T*,DV:[6XL[[XSEE;GT "R-6[PDTL\(MBAHW,X4Q7V ( M.4: 6/_)M@[9Y#>4@'-OB_DX3@=)A@ M$Y]_YGI$/E::9N]7(2)@+?E!@)J9-'STH-PP0.E@Y6&PH&IH:7!41,5_:N5D MT@33.-:6/$Z90EQ"]9@O59QAFY3[G MRKB)X3$G2U2_,6: T2(^Y,0(E=#>0WGE^72^%#%0*BNG-?H\$ 7;9";;QQ9: M>V<\,8.=P#H[PL6M[';"Q/J)Q@^!"Y@/(FH]_UM*6V:V)L1G-A-;?\,:RMN( M'J]"*BH,Z@2R-FJAIDLT89)0MA10TB5SK E?4V+(O#GF10F$1OY@RNA/$/RX M3Q1JE'M^H3Z_P=G-]I[?WU=LT8GD(XF2$*D2QA:D-^FG0R[DX5.S%]3(U=6I M/8"F@T(UTZ#&J8!,.V&L!X;@YGP38YZMTA*M3%'K\U>@W]^ L#5??HE$*.^A MB,Y:B4>B,X)DCX+ET9=(!MU.BJWTJ=?,P*,AK11H2(YS\K65($EK6^D[T M&XK7:DMQD5TQB5@R;F7[#OG=11!^\1@Z'80K9 0[!7+JBL. MV!"33S*FL1[8-2!HM;*H2D($*^H-A7-,W7-9,=(H='9&E][":POF MIVNXV0B0Z)X;O46",%&4R1N3-TF\]V3+'G8K!3_0B$EK@ 1=\YK';VG,L740 ME[ZX3Z!<&O-N%\\%HQBHBZ$Y D:/4VJ74^1$#Q)-E/.%ZA1=;UBPHU2DGG#M M"IT6])F&"R^B[C1XE%>3(B8X0W((SM-_ =/M9L/0=.HP6.,+%CQ=^EP^6HL* M/2V3"PWJ!+<0Z!-C (M.IIY8S9U2+)#N"L@4L!:+;Q9DSMXB+="VF@"\IQ)7 M6YJ(G00V/I4/C3<.> ^GP),\CF6\V'X'NJVK:[6&;C>LE IDMM@X#<(-9%_J M'*A6?&AJAKW &B!/#KB5:[)L"Z]]83&U[D->A4L $S\UQ*O(DGF9O#>HHOZ2 M&2\KN?XR>5;&"1P0X%#DD*4%&"V'P^,K>>%X(4)'%T>*775A\X&'DFP=%USH9A:F\)/:Q( M&RD9.C!Z9P5ZN&/F6(:OQ'Y-4MEW%O"'N]XV0[9HPE[/IBP(@/OD^=YZNVXE M)$H:O0N&K>=K?C:V)IVH%X_4W[8%+14TQCI7-HUIIHW*@H:%3TW!'T'!YH43 M=5$T4@$J*9)6/L%N^% "B:V99U)VC.3)#JI"#5'WMC-&F#:\8)! VEULJ;"3 MT$( I"WP^7#M\=$D;(>F. D&6/' A"4.;!16]PT16=2#+#TW&T5 M@)7@2;*@M++BY<.'VF+TR@$,PUY!F-!DN2W$H]H8+#N6(\+ 8>E3]X3Z_(<8 M/&"0V8\&%DSIWYT+IU\K@4 .0N[%*%B,ABS,<2;+)DMS* = 5Z*H]D%T]4ES M0'*_(VK(_N51#?W5TKMH@HA9+**9%.NX"U3&'.5Z:()(<1> (Q"APUV^R[LO M$4@@.H+P>!%[CR*XL0.?HS$?L#^&:D:8ZJVL'0'^:X'N23DMV/,WVPA-(M^: MF>-Z=OTGAH]@*5GA*NK)@(&!I %2^)_1SWMM+N07M9!)G&@R-XNG4X%@@<;@ MK7PAF"YVF'+,T-3W"Y>1@)%N*LTLQ3@2K6JQ(W$RTG1Y95DVY1!$C4&,00B, M(@]'_P_'?9QD"+<\\UCSST1?'*@@XXD3>='M)J2.._=_Y4HS7.DW7$9]W^Z5 MOX\-Z_6,W,,P),)Q"-^V1SD2"2U4..R+8W,KS?*-. *YU(JI($Z2-BAY2]S'1W@:*2\?,L4*^CA5?$D%@@HQEG+2:0:8W+D8&8>=Z M=\\6R5F@+21RUA>?OS=LKP^NL*Q\0B&"Z+K1"^=T?K(:!G M4"?T@ZU5#-@^>6:YW35$YS(A6PP^4Y"*=\ZSG;SS3G3SV]OSN]MQSU;=,KB))#>6 M8">/UR!8_POG 764#JRU5OA*F;25A7PB_!1",Q3Q(X/!O)CR1VA)[5?>ZY9A M5L IY]!Z4;MNN3)#-6I9LY3Y=P*@&OQC:8DP&0F+A;7 AW;33J-[VIY[2O?H M7$N<$!?%ZJ"]W!)MAL"XW>XL*O_CNW?OR<:1NL*_D_?OWLW>B?_+6UMFY./W MLY\_?)S]R#N!ILC_^=/''V8??OZH&GM1M)7%/P,#\LR)R5^V/B4?W\W(AW^I'FT7M="@@Y1FY!*78>PVW.23:"IYLIYATPU_2:Y,)7=V$VENZ,;9H:=SOKP*_-4=#==[U1DO%(83 MJB!U,$[WJ'=@Q,XXRL85F*P P2.@:*6(>E>LI*-W<_S$BA]+UT5]M8YK&DH$ M9#2SM_+\"3J3YTD>QZ;E66:$CT?D@,)9T3N&'H2A0<:;$SV(:WN$B0[ M_KD7(<=.:N;,F#21!'6PBZ39NY&]NWTPKKQJEGJ^](0A;1L&&F6>NJFR!1T8 M.SGU(X,\2==BL&0K[)Q%EG!'7AYW6:,H[*%K<'F?JD/1NVDT!6#C +H[_PU_ M3>(=!(K&Q[X+(?:;=J@)LX>P;DGDS$?''YCYDS&26XZ([XP-EIZ_S1*=G?,R)&AM=TSD M8=4MLW+-1^%/42H5X- [4&B8B*PJR1*9?= [&RJ-Z318W\-3RL>&^.V5#V90 M$V5?.LJA]EE(77X'FCC#4<0?9QNW&MAG+D MR$D18U8SDLR+I(HAR%@$-35\/DQ49CF[F8C#5X^+G&&?D:!R)R^\:.&POU(G M//?=,RZ[M7.SB-,AB!*@"@9!Y74TX MM"2"ZER@Q%380?Z\64O"0JYB!TPH.Y-.C4J9-"? 0$&%9\N[D,/8D2=9RECM M=)H"<"3^RO+;;NN[ ,8.LB&(I1*E<6*\L@R3!I20)$S>2-(6\K HIB2[;H85,FRT3:Q3;(E=##53"B&\"4\$!; M0['/$,TB792EG5E+7POF@*@?2L'7''.FM7U54)_K M&H-BO(44T:]#?H=[&X>U\K@6U>KD._S/K1/R=FQ'-FH8S 9V&!.A$!KF9 VP M)U->#OD)7!57+\.P !Q'J4;\-VJHWMDV0E@^.?$V1 ..&>2BIW+I@\W@@E,[ ME/]4H,Z,R/'X J Q BB_"'93QB.QUTM5J2XYZSKDY\.[#S_VZB@M5N>-*^UD MES211S Z?G)"5T/;HD$/ZW=$F7+I\'XM^#]A55OZ6W$2I,"FXR13!2R/R&BG M5]&!^?)U3A+UDBF3)U5EW9%5UJF<-=8&_CH7W[0]$?$$IYYF8XKD9$?,=FJ: M!.=)##1F8ZHD5]I>S9;6WJ=+3D;+S Y.4K*!N83;-M M65+B,IL*3?[?__[3A_?O_]U,F+926J);'O.I6YVK%2QE\;LI+D"2 MN[4?^Q2R*:?)N!(>D.@14BW*'[=04J3CK]:PC3=@SI*)_';Q0-TMA.9*G!*- M F=4I>2:I/AC)Z\IQ&)#D*Z CC(]V3J-""P@.EI+COU"5D*]3'(T^$H50DP" MP&>,.(.UT!@R=RB1692V+GV7+LN_@_-G68I,PZ JVT(B@K5S3&GD@7^ MF!G&L!>X$MHQJ$8NNS$@JTC5A%/C Y958K1*)M&KZJ7RJ"[]1ZZ*4]H-K%$ +A$_(QA/PL,6T:?(4T&Q3RRZ;F M(BP1TLLL8Y&-<2"\6:^5: (+F/EEND=A7N]7L,:F@"87>IY=Z+E8Z-RJY5;T MN&Z5K4AW$&8HMG,%6(:?'-^1#GYX-Z((?N0SQ02J=F&A"3W^=:Z<$)\B+ J] M2,8GWGKC\&4]H]$B]#96(@!Z70'M],6D CT*N'W5./^&F0)J;>#CDV/U+L]N M[R-9#Z=5B2.#CK7J1D:YT:4$)+E]H#2^\:+?#>.>(29?=5%>%G.0X(!*J2J; M\F&CW.H 2Z T;BTMSO@+LSR2HQ[AL 3'G9E&7V-HJRNCA+(@'5+=$?Q D(L/ MMXU!T U?A4 $YACO"_HDY$06=; M^][26^ '(HW/HEA0.YQF"*CTTM2AW@[2G3ZGZD7%@69&(1L<"VJ?ISE75OT; M2RN K^$_MWS(\T>4(MH!'B?DB*!GL?X)?C'@:PGI R3+/M(D-^4SY;(X/VF% M1>VO'0@)[0*:6GRT"W,.YH<+BD[L//=> FJ@E4@]/:GAT[E): ^&M>#3F!$Y M$6+.!&#:Q5PLGA] D_-$M2HN02?B;\K_VG)MC#%0&DN-8K=LD BZTD9B9693 M=1"S]L!.!%)M)>:*J!H054MQ9O)V0!MRF*V%R%K*O\8UR$:/CG$MJC-JJP,2 M,1YQ+D(0?P'(H>C2%Y'BOX2'YWB:;O_2>,][&>^9#0^ &8'@(>'LQ*SXJR0C MV.$W@07M??C%3/GLM@B[R]^@],+8 #C$>: !XIQY:XG;T,H0;](D!E%[YOA. MN+0$R$(.H7/>GSL:+95$JU6A66,QWP- GL[:'M-MUD42V7]V7 M"#&^/KS[\-/+6 EE@J^*\I@ER47FR!8S"_=;B\_T.;Y[HNR1?N):^T,[]^)A MI^.'E[4B[4_)W.\W_@>MM-V*1[?\08H%5GSBOF PCJY(V%OACRYYTI9MF+GI M5>Q9@.V2AXS\<)7:!93&187,N'?AX8;&7HB*,*"[WO$NASFYTTD1BB9"QA*@ M.A4^6#D+UKSV$-7FQT&XXZ)12[NO)B5LW_:,VE@;Y2%@+C\7$*\3[[KPL4W;(A-TD2)9(J7@8SK5.0TQ[YVM,TCA'M=GTD..187 ,'\7^P:V3ZK+?V MB/2[!.JK5G6JYWX!\/W^J/>%%6JP;C44YI.(]QLY!EITJ"V0_XXY39]PHS0W M<'KF19L@\E1943640/BW5]>@'Y;-B*W#^+8555P (_7)>?;6V_6) K\Z=3;\ M+_&N7?%2LQ0)%HJ$@$0 !.6?-M M0D64 -7I\).N[5G)E*6+YEQB_5[3$#6HMIJ+)(4EE4BB'^ M&@@KP**5I*.BA2+6YH3=&.<[ 3-MCD M.<@H!)(31Q'MW1(),(L9]#2E9]^TK,KQ6Q;2SU,*?"BS_H)"X-&)L:QM%@"8 MF4/4TT:+FQZ+>$1A_'=AV/I$XX? 50FZGYUU.X.L("3K/W!BUHRQ,@2HO55< M$NH_XJW-A%EZKM9664'.81'M5C>P!J]#4M:BM2HZ;E_M9!OJCU4",38VABF ->QMH4VK.& M.!)P\6,8%(QRNZ"^$WK!\;/7,FQ?T!G]I%EZOEP=XD3&&RA^U4E.A8%W5Q\< M?I\/#I]&4/W!:\7,96H10V]UF118%%;K$X;2ZS"X@/QD(TVY$_@J$[GIB^]L MN;9!,:F?X'"$7Z .UV4=9B9(3YQ_>28T)))-FGHV7[T^>#_'*.S65 M,[H((2H)2DZ?J;)AD-IQ%T#Y/0!X"!C#Q'/1X<\B-**=Y)(FG:CIKC&#%[<2 MZ<.168(D?%G-0T#\I68"82,E_8B<3?_Q5X\!>P1G3=J5T]HFJ DK_\U5X-A+ MPNF4+5;"D:)J#\0L8T/G4H>W:.=AY 0F,>M2%\:,3(>)%,)6&2>6?$LZPO W M?FG2L^"IE9'L>"TPTQ?X94!YBX#$#Y0XC 5/Z+2&B/3@/N(=8[#CRL''SZ5A MQT1"!"D=N9S4@ #[=S-:4R!1:64OXH\4UZ_WWOQI8..63%S*5HVM)" MC/KJ;0%2BFJVVP1)28?Z1/,E/.-M0=LAI-E*L$-GLY>[D0E+$BC.7 ]&LE8P MN;O;C_)HJP*VK#U* /NB37NM@^@11$:3&S0VVTQ&FB]AQ2-8\#TNND+-*Y48 MQK<,\>\7\=8)P0+#+" U],%JDV#N+.<6?00W%*+LW&LGC(47@*\XW,LG._,O M+0S2D@Q!.C.9Q6+%-LV_&=16E=9ZZ3>I-].RN(R0'64MT)?!87(%">7_C1H. MD/E(TQI#+V,M,E61VRR(M7=H/ZS[?BK8>'H6F. [=:;S)6WXW>E2WP&TNZ1> MS;V 77T9W";U:PQ>J8Q7>AF,ZIONH"(-4^<^?;?I)6![U:GH]4X3D8;!>N/X M.X42^EL0_BX"] %OXW!5&VAJZ%$BJ2H8C^DPE VA'(BQQ"HB8+A_\^*'TVT4 M\H< MKU6A 6\S6<*/XQTFWA;4&_F?B<-XX'1=^(LUJ% M:/9#-YJC0J5#:2821'K+](!PRQNX:%K#"7I1["WX\?W$%?^M_'YMA:I_IC%4 M(;H.@T=^)[HGNR\1Z ,:72X!EVNC X!K VMV;>0X$"/X9AMA\;YO#00GQQJ6 M77^,LX1G+/!T;?+\1?%L$[_/I=[?S^1'>JTT\+.6:4B*H$1 )IPD.>LQ&:BY%UU$7BOQIAA> 7_#PXBH(-%S#2_(DW%\LI>_'A?_+/Q MLYZ.'+ZA+ETCQ+NX+.^>@O:QD+G X624&;E["(/MZH'\9]6QU=;H,:TGKG5;W21BY(,E)I M^4 +[Q@J?.?/=+&%0'QTSGL& FW; B2:,HDU:87'VY\"UC53X6S7TE_$9"RF\)22X&D"5><02PHB_4&$0$VDR/39;ET"!.YKYV/4=2 M69H>AYDSV7@O)WAF'VEX'V0M/0:?5NHP2_B!Z"Y0N; F[OJ!YU,1KIQ:29,5^HL@XT>KV*18(.'XIV4RY8)OP@07ME<+O@@DV=@7B[ MW6P8_NPP;)#.JFNO@/^9.@PB70'T&2LC62V':YUU]91A$0PY^HRDAQ:PWL;H MN#"6*IOF,Z\XVS0,^7?$/Y<5.F%%R5WTI;23<15ILA"TD?, UT:D'$V2U9), M.XVW<^D3S;@JY6G55 #5NGS @*IH1*,(Z//I\>;/,X)8:R2"^Q)VA <#M0)DI\> M@_DTP*:\SLB)SA(\L9,\UQ?[25Y@<^;/1=J@)<[-)[MK8432MBN(=,T0&X 7 MD?I&0[!@8D(IV$,Z*&(O21*=I&I)"NJ(%5; !9J*IL5&-@U1LA,C.[@K_5K& M/],G:;GF]\PME%7@>AJ$!/Z5QL=NL %@BX!YBUW;L"$^$$E&(GHHB XD?# B M1R-B.'N!0_VO0&:/826<9"4BO1(^7XD=8+G(E=C@L%/?_X)PV/0!B -R3]7V MVW(K7 3A#=WPA@]<:(9,O_T?]T*U2S[?$5 BH1YA0FR5A&V_"*:R_BW(K$I( MBTQ*>W)V%KWVT."KDN+$)9Z[L7-E1F*9A9S_C0A&F_)I"3:F+;MYU:@=T];5 MI6X6(%&.VK%O5V%J?=9-@,3 /RKR2@]8_.23\X\@/&5.%'7CGJZK!X/C$1S0 MBN>Z9];985S;*Y<%7QJ67G+/MB$_-^_'=R_K^^ M7-[]=:KS/@ &; N1_#5^>ZO VZV1WV?[S-:>"VBIT0 M5(DD*YSHG#M.F0#I:3#$1L(+*@<(_4'/G-@1I03;U< 6+!F$ =O!D744>],8 MNF:)#TEO@A]XJ$48-(LH!92!> 1B M2;N0NND$<0S.HZ[\_(P_8-Q*2_.X(&I" 4)("HSW-:U-$SC 9'+$G)U*M%?S MRV70YH5S$1_&7Z-X2GHNP M_']X]^''%[(434Q-,\SS7V#@L#'T#&/^"0[;.])0JC);>X-BIBC;%*;/"F=N MS>:GJV321^IOJ3QW'=3V"07!R-K5C!6__+U6!>K.R^#-$8;,Y5Y M!3&?:^*#$-/MWP%AFF,60;@)!.8WECX[A3"K<->1'3!%?R:*JQ'P68I1K-G1 M.N0R:WL:CL'$WR9+UHEC!FL(=QCR222BML/,')OT7%[B,K#44YQ.*_FR M<4&*1YCYI&22N3IR>"NG']28JV#AL.L'+K\*I;U51!C0(DB,"&ICGCFS/>G< M90.P(]+G%]'PL6T)[OE]Q'\9+2@_XL1A+'BR4]:S-3=E-Z>F2!3)Z3"33Z&H MXFN %(FN64V2):H9M9L,T45A9$5CK'/-'S5%:8!RQEV5*4Y8L%NEN&7UX;&? M%5/E2I9X#+7,+X*0>BM?&"H6.XQA8GAY_.)X_E40M3(5&%6OEV(@LI C"8Q^ MUFOXUV!KH-_4NJ+8,R(')VIT8@Q/8'SR!F;0>Z7L&^TR@EIN'42F)@2Q(MXD MYL]R4P=BL[[C3W/6\OD2QKW@LF344B'6)-%C"E7ZD*H%G1C*P)UY(5UPF:1] MM@2D1&J;C"+;>^Y >Q[D-EB;L6$_%*">Q]OX 1-3VX=8)?"D1%.="A^LG 5[ M@,+ARO%EJ!W49@Z8YZHBR=>\KPHEGB^U#4=_OFWO 7-LK"^=C(YV$7-\N"H2 M*U(R!8N&M./%8KO>8GE;M(2"LR^D#V >?:1B$^%5_$SY5@!BC&"U\&(?G+*Q,?E+R,_1=1@LVT7$(1FH*;WL M/[ROQ929.=MK*[,U$("NG7 >XFOE(K*T*@/6%=S1S!ZN: ]XHOK2F>]7P"Z2F5MO&!4%C!XUS9T0Y>PG"\%UZ0Z+C B)[M4PU1@(/D; M3LAB,5/+2\@*KYJ>E235KKC( M8DTJ;ICF1MCI>BX@UA4[A;5W-2]]6@<^.<_>>KMN91R0-*Q8,UK-UUQF6Y,6 MYR25;=4!X&TVY6HJ3+")SS][[P@^EI)F;Y<-G/R4S0.E_PZ2#E-V%"0Z!198 MZ>SM 8X)%0VST?@1@,@OB81^%UP%$-_X2-W#"B.D0OK"8$-#_H6 C8O^<^MM M1.D/.5;_\>_]L9G6=45&KQQC1M0H ) (XTC_DYTXY%9VSHYC.KFXZ46B/KVR M!2PQFT--BZ]*D:WSI:]1EV9A,]328O3H[0/?4%4V]X[W:'49(K4C7?1W1H!B M[]]S+J40&X0Z'Y3)&!X22C,<<%C#SRW0/,6-2D( P(WK>1$T*KBTD'"='@FTL*_CU:CSL9/YRGVW.V\!XQVK,_)P?+Q;AUF%M MG9Z*(IY&1=.F%Q/%+0"H;F_64/%"";6QSYY-=>(I?V%N]CT[ O$KOI9E"*[Y M]7GH)ZQH$"0RWNEF;DR+TY8F+%,7N**B0N@-S*8+\]C"5#28I$XPNWQ2O&5, ME2G]21$F-Y-C*W/X&NQ:[\!]*!$)#%GI!D28;;/LP5V0=^D8SI;.ZKND).+0 MBU![!DR6%&1[5E@V$4=>WF+)#\$86!>*P:%S]2G./ #_?532:]9EICUAQIQ> MWJKECN GD\2^Q5->_7 N^&&#<:(+.W,%4@Y)#]8B+*G3/W, M6TO@UI.=1-W#\(9.S-DX\)&*;X.'%\<^2B+><,"^"UM;Y)X9C*M=QCK>.*S^ MC3$P1.@HN$,YW"J2S=W$V"572":KR M1N[NJ[C=KM=.N /12@UBX:GIBS/ED#!BK/0 "92SB)DB-OTMF8#=KCUU"OI: M?=)&S.X$64N[9PWWHV5OF; *+Y?!\P7CHP7A)\=UZ8'93%GK-I EDBX1A"W5 M<^F((67NGCPC*92_BT_D+[_V/G] SF% BTA==JB2YYB719.J'< R38S9C8G MFT.,: D%C>HDEPFLO8^M)IZ2>?649\2W <1]^+Q9>LH[*\CA? CPKUZ'P:/G M4O=D]R6")'>M'!U#)1U1LZ*# G3HREUB$C': @.M@SEZG#].GV6YDXCB"!RK MH4!V?@.C\4_I6P,B+QG14FYU/ABP+3KLX-&,+4!A"V,9K<#"0G$6'^)79;P6 M9A7>>BL?:_V 4"G_[J]P6@";KJP5=X'IR>@&Q-",>#S7$8\J()!?H6=T$]*% MEP1YI0JFH$TA7V3F*UC%M,0NJNXD4P(U3"2,BL.%=Y^V.L5!VB5F7SLS4?FA M5"N@]LR7$/NI0N2Z@^17]&%-,+HT-L+F;!>4Z(99UHA/'1XX/093JG80AL$3 MO%K\7#.]@:X%QI26CS6K(J^SO&9M/3 (6\WT[9(Q-A*>?J/>ZH%?9\?" 2YP M&F7.833?QA$@;/)C!$'6BWV93!<$1Q+D20YXY$B7>R0<@T$RUJ1YSD:F+R;- MC3RF:@PB!R%)'1+IUS4&FI'I\VT^C(]IV-^2K8DK47HT#8]NK7T"2*H-5[7YLO?@O"WR]]%$;: 0$"(0BW MWPA2TV @;\Q1;$B"4.#' CI0B;%#YN+T;=]9JF%&8-_ID.5F]AT]H%W[3@X0 ML#W.A<8!M 51T6KJS/*LP3-P)IU;%UX$$.>8GW+!?[?WO9&6;!59(NBJQ!>D M/ EVV'!\H(OL+X'GQ[_RD2%[=A52/!"MW'U(D4B21-.TX_'KD)V,.U:P]2C9 MS4^P;'[CVV$)LY#0S>1GL0I$ BF"$?>1)22ST%,R?OO>Z\2TMGNI63:/=CMF\$SNJ1A"&BJ$18K M1$-\>QPR198L'IQP)1$I!-J\8R6^ID.^6(8E)(D,":^%G8 AF0\::8 L?X43 M:17E(FD:2%?\!")96SZ[CKABM0Q-A9/"KRCQ22PI_YC SS=Z?@IO^B$Y M-( MHG$?C!A4?I-#/!'QN&C;OY[0$2_Z:KN/#6-$2KA([!(3X0&W= %]1[APX 0D$[0 M.I NO](584PB2RIU(^/_XP^S'W[Z@!\J__'[/[R;$K_I>(,&'$^).9;AZL;@ MRED"P,&QXDL@.XLC#/6[K-7M[/3PYE(VG9(-M5B$J(.*"T;=(6O^V-81AT!\*/Q0C"#C-)/DVA91]F+5F:>N%Y@_&OM[$3Q@=Q?D)7G@\F M$W+B,!!?)[P*Y[Y[T!J<"YW:T@*@_'9#-Q)AVCW;*8]V.^T):?@LX- M]3#2H!A[ O1T.DS6H0,G+$Z.)V7+0CX,PD10EK'M,SLW%X[GGMP M(%5"AESWZ-+L9-*Y4"F;DU=52W_SX@?E.$ _0;ZF#[B=+_WS9\A G"]//(R3 MF?M?(#UWPR@4!Y+$VKYG*JZ#1K&W1EP3JKP\GD\HS@ NE7LQAPC@)+;)-,A" MSJ/?_*!AERX'0R2*S\)DM =(>'R26D=J0OPW&(P!_Q63@C+45X8<:XPN:[Y9 76L-R=0;TI4N;?I7+(@]-J_#\ M\IA\-4W^$TQTED96^RH7W+3W#++JE@Q'.ES^PO.]Z$$DEK1RP2A"9 64IC%_ M+;]I MF#UOIO%:[\%LSP]W'E[GK]0)#P+7287G9!!V@*AMG*"#&6%#\6! YKK;1?R; M P4"N> @RCV?,B>*N/)!W6Z"2;'TVY,<8Z(L,6U .I$D5<5LGL/FS0+E2O= M;]?*'035RCDQK4GVMC.=3)U-V/ CY[I@CVBS.EK,")*?"&QH[G.ROZ MOM4W+4+\P3X,X'^<(3^(9:@M_X70C$(U% !8/GH1)@JAG=FF@Z,+UK-^"L.R MFA"=##=EGH(D4CK9NO&2&[ ! K\(-RQ#(?*@9UC$P)L&9G$ MO;X>JHZ-PY*$?+CVN6+(_P$U6#P72S*!FX1A/9C *)\0%52(:ARX]/X-2[A M9!^&-KP/*A)4%PL3(<-?P'[!-1H(P7BDQ[Y;+/]"C 4770'?@R\$!AU+.;!E MB))138VN-RS842J%?AV5ON%CBR"F9QHN/!&G+MI(3):O:@%9>NUFJ2IT8DZS M8ND^40!F1$]%RO/D7"YN_T!98UK,HAJ&52MZ?\B*VC(-9(K4M_3VYBO3]^_Y M!7^3!!3:G3_SSY^O[F=GW=+'*^@119 Q;%SP(:8O(Z\"=80TK\X!=-WN&L? MA'Q!7?3('F_CAT"B15G#2>B"&>V]%+3 ^*>9V=FL'^#%%$&B+KE8[Z^\)*[3 MJ-$KG=R]1-^(*1 !5)5,(HG;[%N<'6(MY.Z+(8]*>3?+)"M$:/N%?C_3)QD7 M#UF"8??A^ MZFS+,\"'(0;7Z8%F1 Q"_B;_:[6^LX0*-9(-+Q%;LV5M1PE &HE$0UEPU0YJ M9W<\L2P[Z;S)RXFQDQ9;JWBR5TLTQYI\'__5SPET-/5I\59S$H][9TLXV9WH MX<^4N9 P[+E4R35W?$H>!+RWAFAYX,01%Y%3)U_@W01.G1A4*8V?R';P2'RF MX%SB;(#J)9O^%[]%%_9 MN(KBG;S)T53-M6?J%A$9?)>7"-.)[?YFO2N8$&]9E* M_IL>:ZP)5^1O@O@0U0:/G[U#[ );A787O?-:\Y_%E9N0,(.!Y:YOEKKFH M+/2:' B2Z070EO=6/LJAO$V]=61*#%0(;#63B+9RO/Y=1 ENTOF:ABM( M%PJ#I_@!?#^.WRX%0* F*;I$$":2\D088D/RTCI ,G-L=20DBEU-)MXW3]$6(:9?XP*I3[Y]<*@._]33-"- ]2SM0.,52'!\)N ^YL_7 M?/EK $;:2UDA3F-?M+-XZY'@8;!3=,X.FY72:S(>L"U&)'I(C=?1YT5ZS(^A MBYF(S&F%#J@)$: TVBDSF[/-6Q-D,J,!OM)Y'KS*ES0!7NP[S/ICN<2'JM@^ M[SG%O!2Q3>?XY5';)$Y; MP&,&Y)_:A6RKY" 4P!KRVJ4 1'@Q=H;\64R;@8 M*%#/HQ@L4$$#IO "$4%PGE3@>L&+UP@9<):DI!:C RHLP-PYQ1=?3JUW>_8G MS\?H$O7(SI]\_C$]>)OD*3[973MM<]:A7I?G>@Z '.DAC.>>/_V.C1HY/;++ MQL7I'5T\^ $+5CL4L+.F^@X@'_4 ]C >^^")9=F1&DF!W\$2FR(S[A.-'P(7 MP,%$;>N"H]K*XYT2M645[S6.R:\D-2C<3O\(N&I+ */,0KG1WGA75@W!J!B M)",4?ZR]0R'\7_;>M3ERW%@0_2L*WQNQ=D2/[1D_CKV[YX.>;1VK6[62>B;. MW@\35!6JQ!D66>9#W>5??Y$@08(D ()/)(L5<1X]*@#,3 ")?"?P^$M_<^.^ MNQLJ@!>=,_O96/,VF'3MBWSQHBGF!-;4T5"45(!@J()PM\E1/5!4F0U]W!2V M+,F"IWP,D:VRFB);I2?!@TJM+@E+'H/]+/L8HF M5,WMY6+F"UW 2I-YE._]#=FJ@TQ66<96$1][N?DER8YYY_O#/ZD*.J%B.\\4 M$P)SA2^?$E5JE=U]9T\^E))+Q_=EW;E>YH,>P",'BV6.9LR0L)NW&CM!5'26SCEWV 26UW+*KXSE93*#3B"1;8H''X9 M98W5A[(2B69HH3[Y9<0[N,\0UZHYT1J._!PS^4> HD_\7BI+"8M-%,/7%P=/ M 3Y:N*5I["GX7KTX_]AH/ 3^[H6$>RBC_#GPUT-T14];:6_HBA\N/##Y9JM> ML.37P)\'3MG!@L6^@]58I6EPU?/4Y*QRY\4G)\[>L7D@)MYZAEULAMU$#&$@ M)"NMN*<]B>P1HC*E'ZV)OWD.O 2^UDW'JKRP^:H7?-G1-:XAL>%VZ'EC45$= MID:E] :E F6O*"_V^*3K( ;9FQ6T==F*J]C3]#G)]0OP Q?1:5E5'M9OD!FH M7X7(N;X&NH9**1-&-_-N9EEB1]=ZY,(>YOW1\A27;-&)-G08C+P&9.:!A21M M/@(;]Q0Y/.5..EV20*JBB9 $@A]X3PKW1,DK1719K4R%O^$&E^'"S'(3SA\N M._D M4^#';UW/=%73R[Y[_) VUGCT1]_\2;$NI9F7NY$56>5%L=4QZXX41N7+S2:$ MX.ST_SVX/OEA +MXMMP'_H\+6/CBY6LP"X0\N[C(^GAMZ36\@,'P%["4=&@WBY8D?OC*):"9+_]_=__)YRF:QD M_?^Z^/Z/'_[XQS_6*Y-\N/ #>M!M%,OIDR54JTV290/:J)+3;?-TY7%*R%@I MC],)IP/+L'J.G3 VQ.R*[%P?(K NKAP/REG.!LM;?V.(XRW+11X;P>)I?-X[ MGL3S><(&Q_#-B(.(T[L+Q\/04* J?$-"=.[85'S;' M>LVQC@6LG?Q;HT6KZ\PSO1I<:FTT(QH0!T7(Q-XT@3&4^R3I82FU.2BB_?N% M7'TF\<4:BBWF_4=_>W#\NMD%8ZADU(T0KM@=NNP6,?EMJ$/([,6MB?@B6 MC!*&6(YLGF O+A5&IH*&%S ME96PN9"4L!$Z$5X(D->;%P+PWP'T>9T3EFVQZ,W@5M_S)EC[")$)M412=O\FL/GJU(/+ !>$+H28M#U^KF#RZ"WP"[+VE(E[5 M1' 10%,L4M'M%*PB]S'9]ZOJ)BD7J6Z(^_\Q2PS[Z"D0HOJHE4IFHB""IB?$ MQS#HY\.&@/RYP<]MV TE!=C:<\--?.&-$)RJ,2DX^/Z5@(,/:E6]T#F]BE\4 MZUVP!2]@Q(4HW), 8\\SA(;1^H1Q+ <+%^LT)QZM69P/G;+<%'&7)&* ,5BKW M_+9(U.;?'OTPK,)@Z\8//04=<+NY4(=X@A#*KO 6MD8H#4Q!O?@M+/,[L3'Y M*LT@O[B,X]!]36*FW)$MUVXHMN?BMQ[@C!?P4O>Q MR4[5319$^^)\RRH&97](3TKG?+HL-)"H=2XSDZ_)O,VI02Z3L-)U9X54.3%#Q&R=XN2- MBA,S,WVB+WWXC\ #IAH]K'HYA]A:%WRQBX>+U32NH4%PJ%C$4ES>LD7'K>\Z M"/SB8:INQ.]7OY\L7+29E[E79")?%>2U0[8N5ZCF MBF#^%)52NS]PC)VF67@O[;(RQ\P-^("E*_EZE8GSECIM0> MQT#.J^,%DD2V.$/Q-YP5=( MGV-2E" 9YA56)BR"H[&)7ZZIL)&P4D!#<5)AR4DYS/A8&OHY;!% V^-4&G[7 MRT?/PA!9U2CHXEN$*T(SG_$SFL='UA/PC/+D6-[$55_ABK,!JIQMB3M%)Y$) M-E]X;75$>34GRE2^LB*"0A &*9)NF4/!CX MW .9235B:&_1?8-IC.R MKUP(GYE07@=5Q8G>F"5V0S97QR^L_5N:PP2]+N BI7&M'7$O!09 [MN6JBMI MKE36#@WHX>3?^9_S1UGPY3&,^:>@-?=OX6L4<9XGQIJ=Y%^<<.CCQFI;->*D!U8#.2- M=#G,H,O+JY?AGZJ4>A\T!%;Q1-X#[QU.SKH<331UM%N?$.MJH-M$(<3U/KW M:_PX"'LWC1 6F@<6U:HI69O@W_)5?P>-..>*E7COFU&;B ,4#13ZEXDOUIJH M^GI?X,5')%50IX'[B1448)IVY_#<,OOEZ\T!>)4+Q';B)Z% M*K'#8UR4BS7 =YJ*L:U;VHBU1*)!7#NBVT_\](FA[-6QE;;QF="=4WBU>*.7 MST%,HH? \<$HG&4'^SM!8&8Z,7Q"I"4N/?[-#Q?LJQ\N MV'>9=3S_\H4HWD_NXWLBL1NRLPAE\4%5Z5M.MUB15=IG69#SP,)3(S!R55T( M&KO)@I;A<[W",+-U1B5\7X"]"6&%HLN/7WU*HC?WT.-+'N\/OWBL&1*/DR,!AC,G=J(X# YO[IK9NWL9Z. M?;>(_$CU>E8#D&R@3BA+J(2;P1^\,S9 MY42O)(J#Z+LPH\G:<]S]W(F2\U?^E5+43?JAB^Q+:61 FN;&/H8G'J!OMB@K M_9ND_G]I[,-\4?4*+%N&/$PA>?V?A!XD$GK')P)=N >1&O,U+])%9X!'59B< M"H6ZCDG/2=9EC/'\X0)BP6(1^(R]LLPQ/^)OZ^W^X 5'0BYX>[/;B1[8D;"6 M:-%P^SAV[ L3ZLF@/ @&>AX#= VLG80'8.2?G?T GDEQQ8O/([9''14C3X', M9 (N+^%QZ=<\=(4%<-B6MG +:^':\\;3,T%1:*$XJ1U3\=KG!K6!!9O?)OR9 M/PB/_S8WWUD7G/]NMI6@7G_B096C/ M$47/&+O1.7/14.7.]4AX3=6_71 .T2N/K7?!%T0.OV]H7>$P!G+T7(G54NR_(UK^ M]/)&0I+F.\X>Z1;\F'UE0B-]7C"]C[3$(G OO&(QS'"7O IS@-B;#-BT/0?X MJE?.$7A]5FJA5UP>6P_LPV,Z_ >#O-I3A &?K9E7GG"CB_B-0+-U5FWOQLU3)V"8>)'?W2]H2M%0G2[M,EYXD<7P,_!1Y\2>"778< M&\*;)T22!>E!K3A*]MM_)6X'5UGM7;R^O7Y, U.SA?_'!6%+XT>&JRUL\H=: MB=:5$TZ0P]P?C7H,JKCF_[A(5U6@9R$:=2B,BQC45OA.&XWZG'?:CGIHI\(J M$^FFK" 7V3S2%\B'=G=%,"'5CY^#;9C_ D6GOSU_=0[P2R\-(OOF1;ZT&$@( M:OEOGQ_OGGXG_,Z^?0$?S_3VB32+2:E3"CA%3R)PP4#OE%'2-2:ZZ$-V<;T>JI %MXFW67)BO/F'1/T7IYC33?O+"W3S%_P2P]@2$ MBV+5O(+!7$IX#WH.U#6\RV3!5\3[)P+63LI#WTGH[,CG!.36Q^V-ZR7TK_UK MLHB]1-(U+[YFG_S.2;]IH3S+V%B+X4SIFC/'*+OS_"L7V6$\*]T0F,A:R7?:T^* M,N=%A\,+NN[HC\=XZ'E5S)H*N%NM8#_(A@IO06NT)WH."W=/&URQ'6B)IW;10S4B]^F[[(XW>1YXQZX&3&@C-/4BIZ,!R\*OBVDA*'-&?U M-Y^F88>I4?["R;ZU !*(R3[+),&X1LQQ/1(LQOV9^&X09C%+$.'QY=?/2@*%V[O_3/=X!Q M^.ZN^^48/9$H#EU6G9L5GKY(?)?>-I=]8YY82OU()XBGK,!VNMI%^I5,',S[ M-V8_;ME-33\VZKWDW3'N_5L>GI/W+7O;MM[67@ V$%Y41V?1+Z/C1EF[=(.G] M'RYBOAY$78M-0]8>U0BHV+L>M>:X/7KD'(U_^T)U+O+O7^15?DI/VD4.P^E1 MJ<83KX_HALWJ#%LW] MX-,7=L^M;%G+E_[.4L'(EJ\Y#RSJ5L)\N8E138=$)@Z[T MQ5(>_?%+I=!O("D-TQG;%M5PPB#9O5&U\A"S+T'#L[],ESN3,UAN6A2*?$=7 M1^&_AND:(K)8B4[&4DX,[9:G0!O)RY/;>,6O?8"2?6+]]>E?'HBN"\D;U*CE MD06?2?RXI7R7_ENKNG/EOJGLI.<;K\Z+TW1D M.[VG MA)*RT>V4>.4A@%GY^*Q7B2 ]#9(\+.1& ':\^T<6*30_[++CR-?-VYD(*T^6 M[CO\UHE!FR883IQ )[S4?6T9,MEY)FAX:@PF,F9 B7#X7W@QWQT/7M?"]PL_ M4!Y9_H,P,IR/K-#[Q@=^Q7 M=3Q?9IH8L[Y@5[2@"<'71#;W-/(K ILGL_%KXA:NCI^<7X+P&CSJ?<6QAAB& MU^,%^]8%^]B,V!4+%^Q,]!/X.LE]X*<3H,5R%P2YTY!?+;"8*)%EC M:L'&"[NB?IK5HU$@4P1D/*=5&E,NS8[7-@CWC %<';,?F:@DP[+#,BC0YS'^ M-X3G$ZQ"18*Y-J$IC:+069KH$ <)%(G M=NB3'AS>W/7M.Y0E5IQ-U5@4B/ 7*FO5QY+<#(QFDN$HT)&]+ER1.&KP,IF' M D&NP*;FV$R$^DRD2*G&6D4$^OJ\N#'<]WO*U-[=3>)X0'869P17_LT]O 1I M(^NT=[B(6X?I*/:-E?3_5T*/$;O_41ZI+V6)JL$H4)'45>(.0ZGY3STX&B?@ R3#2ST"!E+92<:U@A?0,MEK!OO#+-^713_4K\@ 6A9*^ ME3/TFBC<9C**_VD+:9CP1A,8_UB^^D!C^2!MHEJC/=,,G^\_+)\=Z=\-;?T>T@(7L/]B[= M!H5M13\K>IE=) A6^U% HRI'='I_** U" S+TCF54U_W^\^N+W"DZB MGX0"-;%.I;^IMZF6VLH:YE@/_TB5TMJP[RS[ZZ_+EVGIK$H=HB? MHZ)T!KL?"A.$>C0*9#2>JE4F268<#9P3FU^2*&9Z0DNOEW8M%(20-Z\1XJRN MCL603%NZ_.J$FT=6/R+Z2 ="E'TJ<%NU>W"\>U\3D=!E'10$ MR.)AI'$P&IG58)IU)P"$2P:>NX'T7R;UT!V1V_O5(U'L4=DRH;&$2P>B0*', MU91ZGF08"O!K/1B-7]8RGHT 7]LJ0G2N&HD"C$GJA?GNE S&B MH V;E ]%@09E=RR>PO$@E^K>OW8.;NQX&FE(-P$%2KGYYLGY^@G";EW'4R1& M2 :B0*%>!DJG\:A'HT"FI!#K\) .Q(&"YP5?(6*%"D@W0?(:;Q.OGMFL/C9V=?8VRJ,2CV:A5FWA!F;*,BZ&/(/#QI&R%>45YASS&8 MB0))!A=(:8_;NBM.=\>,)J) L6P&R034(W@7FHTFXF@4R(BR=I,LC@)@91E7 MA0M2-QX%0KSW2&N/H]%$%"BRY,=D';.@O&O*JW;R*#[9./NQ/S]1J$CH7[KA M#84M4F>$J0:BV(.LNZ+JG@L_HP"7!3U ;*-$+E%<<^5X% A)C)B=F[%X3WPG= MX(L?'2 ?B0 $LEDEX9')\%E^@C-Q7 M#D9BG;\FD!KH <_[]D]28A+*02AV@87?LD!_Z_ ]>,?Z2])6=DVGH1B=XN8:ZX&Z%,*U<-1H%.W M%)K9$Y$P">B^D\E0:>_/>FI_XV 4^U $J/!B':Z?4&FG*#%\1;9!2 0OU.TW MROJ"<$/%H_#(BKF99_6,^#G[#(B^!@D4_7$\JIRL(9Z;5]E0Z(]-$["1]> MR.Y@^<; (+995A$(7=RX&H%(',E_JJL"8ZR/@F"5V/?T=7G^<-=/_H3/89O01*1RUU(TIR1O"2R]#AKQMOGVA^)3V^9]Y2\TDNF+M8J M'X9B/]362$2&PG)5A"=@<(_;+U%JRY3!KIV B49NWK0E6C63D"!DC(N89?'H-BGK(W>"J)2U+)H?102X.%8$-::$AY'(?$ *E2L7>G9:IZ% M CFF:Y,-LT"D\36>XZM\C)*1*)!X3@X'CXDPC@>MI.Z\X*M01EKKYS&;:E\@ M*@(\2XZWFD2D&(=BGZIW0E4V#ZE,V6HBBG-0*U(AEM(RK&M1GF+=+/#)]=U]LJ_?R]J/ M*'8@JT:CB E+?[-.4QXV *EH:T?6B0"$/K^$A1EFCCTB9K*.;@ *E2G7HO.Y 3:M6'#BSR2A0K1?F8R6D MX4E/RY9G'.C5",@P%^$(L]$L (8]4&/%(J1;#2P!Z#XL@ MW=!M.7Z)@/'E)I_+=>R^I]8@78[0"-]!04 >,")+P4Z3KC]2G@KXRDP4-@AU6U8=& M/Q[%_JC+3W#N]<6GE\13;5B;^2@0SK( &G-B4? ]=HQXL5VRR3I7*HZ;8AP. MJ@OMT2#JOCFM0S\#!5)0L!&>#+61L#P"!= EIJ0Q;]:'X0"_>""4!3>K8U M+A9Y:4I-58U%@4AS9.N*A%FCOK>A6]E7H/2:,I5(,1O"A) M&-P0/]A#XA?5U\0 2=7CTC@%Q0Z5')D.1'PILZ0;_:#ZZ2C0K=N0F@V?R%(- MGLZA^=NMOJK4H M=.-0G IY\6^I%5PZ$@42N2&O>+:E+UY]& KP:S[-["'.S-1&;M#R%!1HM4 ' M,QJ'E&'?9CX.A-N6 M+[\+DKZ%-8N%[ OB75I#1*PW1!Z'PM[OM%%$)8F%-]0"NM3D^* 7OG8W3$T,RY8C^Y1#[6/QAV!>#_O+O$WD=SJI!F&XK;7'>%UE<0P<[_C M4CC(X%%0'&[8J-U!C4G!;"8*)#5-@Q219_H9*) J\LBR")7GV6Q81FGO(^8M1W$BYD-I[6?M!JAREFC&(=B?V^W M6_I\/VXIQ=] '(!GY)&)T?"_@HF 5;5SX:7/S ?E/S28+T;X# KR@=Z;E]): M'S\YOI,I'7"0HXA5-/(W624$N33;9@442+."V[N&A/3:(!2@"R'=VRO'@Y+! MSV^$Q$]N]*L@1 A\^4&7 ^T- HR@?_; M30,V665#_I"4="(=,5HM8%_FJI< XS'651E2RKB[KH%BKX=M+OHQ5)CV1_@, M"O*QC+1,)KGUW'WF1E/'Q6@GH$!)D5R@,9KK9R"XWW&:9IG%&F8AH?*:5483 M4.P33X:$GBX*DTAE" JP-68:,60O$_YT-OMN*\V0")_)M_CE*_'>R2?ZE+ZU M;;)ML*+].\ID83V[T8U#L:M/)'9#]II!M ^41-/5LY"/18%(WF6),@U]S<+Z M.!0(M&VP@KRK2C4ICO/UZT">9:^?8?^RFPO+M<)S7>:CV$6>SO#H2P(#M4&% M9C-1(/D@"2#XY'R#I/J\@-RU0Z17(JR^J$L1DHU#L ,315((Z M^!/TI&D'IIEBO )0VD%3.I MW'H'+DO!!4)E MTPW+QH:.87)OC7(P"E32<(9<&FMH92,;B@*-NFFT7"@"-B&"79#?H!;34: K MELT6:JM$5T?Q%U5A/?/9*)"5EJUO#/-7G. .*R$A0KLH:#GZ[=9 8"^CNI+C M'WG8W$]!^&O1.*MN-].-1K&++#V=WK:?W/B-EU)AQ!>2K]-&.UH5JL,R*-"7 M/.S7\N;"8D[F-0L#OP>6G$!S7L64''%IF;>)/HV"S"4+ X3%V5Q[CEO/;50/M6XR>X)C)J^O+/R$XG!1P=6PJ*?L;)G/ MMEYGXB98,V--&INH*#(A'83C.,FLKOD/*(Z243QQPT/89@442'.)D_67AO<: MM,&BEO"#SHAL.A<%HF63YQ/9D#0K/+TJ+U\#M87,<"H*-(N@E2>R@V8_07C, M O1*!74,TSX-%['_\-Y^(^L$[-9,@W2U^?.:L2CVL&K&S"K,F5@\LZ'V]^/' M(!8,Y U=WW6#[:.25^R0AT>4?[8/;MJXB$J60D7X1Y_K:%'*M&I8&,U"<3MX MF8^7@/MMV,E_4_MW]#-0(%5^8N0!'TUC42!"16?H7PAQ\#+8A9_MWQ2AN8I4 MSE$.0D'ISBY\@](X/P80Q $F!%4T]]=_=,/!3R0ONW"YD5>T"+XT& M5#8X,9EFW9^0]F2BL@@]:4SF=+S_ZQZN@XVBI[ML)!(D&#]T6-3JC1,[DJ3> MIK'V#QLS15)YEQ7U%R,CMH2QO[QT3]W^9#H3!>N0.+Z[5X-/-T_X@2D(AO[V MH3^+@KSMJQ6\O(5$JN%W7 H%&ABN5W$TFHD"QLS&,-Z?/.[,S3O+RYOC2BD2#&N):?AO-6[\. MPD.0!CJQX-]K4&3#HUIRT4[!<7YX$'.E779S+VK9!!0HJ6-;"P>3G)]P(6S929S8^TS"9KFNA($2>HV,6O:@9C@*=DBV0 MOK@^_>>:Y"%,+. TRB\A&\,Z5'@-(21#K&O]R7D(UHZW>J.L]7-2U?5EOZ/8 MT?S$@9]UX4!6G*== U%1ZE U&@ MD,M;5.V@H-UYP5=]?6+->.OAN#?TI5W3*R\/\"[_BH+Z>0@&+Y&IT>A58U$@ M\ACN'#^SFT#&1N"Y&Y[7L*(:/)B,TPR_.]=WZ'/H>/E)TIZW019&02(J$"3[ MA*7]F12[EOK7VRV! FU->Y4';1T/@WDH$&3%E*D0 MW98-BUOBH;92>V+S-!3H"7U]FLQ'D7,9TY?7:5.-P,(6L7CRX#RB)P5*11:J]!-"Y MDND@]>B]#M-1H-M+9C*T= W]#12$>Z9R=QU(53MSEG%1;$WF9I 3"I<#,I!/:?(\BM>DSB/&"]'NE3&8#B MG&2E0R)>.\3QM)JC9C@*=++6FG2@VFY4'6/_Z*RR.-,5O0OU)UJ\#=-0'%P&*M)@_ RK8P%59;;8M65#T$W4;KM>JV*@CC* M-CJ4#33<-:.9*)#,?:F99"H)V&P8:O]NWH-:F0%%*,J.W_-98I,Y^) M&+8,U0X#*;9/]14P N^W7D4H"#\Y&PV M1.**T ZT[AB^AH!H*L'*@H[$WU <);%_CM8%C"5BT+PJCTZR;;^*=;6T;AZ2 M56;CP*A"I9ZVD(4.;T MB!Z3.(+,2GH$E>6J6RV N552 Z.NV'5$.1'L?@=!<#< :<._HWTJG3CO0OK(AUI)JZG2E&6L?D6?BNT&H*415'8#BS.=^+2'1Q%"7 M-9R* LW\XFH?F/HH%,!W3(X4NF+6DR05NN9(G[)_._,W-PN?SI+PLFP&B25. M-QS%J4A3BXIR39M?DBA6=0]5#D:!2EY)*(AB31TB@^$HT%GEJ9"YQ,- 5?CW MI&-1(%*N9"=UM#8,18'&)>5:&RB\Z;Z39[).0L:=TOX%9 -J.82_)3S4H];4 ME%5SESI;AE@8!8G$BK+,M\"L%;??8A+ZCL>;!J1%A$NA0@91AEU6Q$&4Y#4B M_TK ^_+>*#HHQJ) Y('$E.QY3K9@NE"?[:8Y*!"KYYZ"ZJGUCBK'HT!("%!6 M>T-K@U" 7GX!M)=%,=2^E B- E\=" X_RCK.EW]&0?4LKJL2S7497SMA>*27 M5?E@&TU$@2([Z$5MN%(E+B5ZC9.L&V_2X@?"7:[9E:M6G.89]F\07&O'\YA, M"^4S)9I5>8!]D*]5[9'JT9 @FM_[5,"C*O+C]LIE748?_2^0M'3P"(159HO5 M\![E*RCN)ZO!67]9U>^7=@(*E#J:0:3FCU48'$@8'Z'H*D3U +<]J/3T23Z, M@L2YA07J6$5OJ0U)[RXIC42!1%F0^>(G]*6Y"L(P^)IVDG/6$&RBE+%;3$>! M;G,,%\9(K5P194D.+<+0ZN.M"PW7P3M]-B2NM]J/.&A/V-OUD?@D=, Z?+G9 MPR6.(<0GMZI*=\%HIO7]*#O6H,B>@?\M'X9BC^@SL4FH7.) $#1E-VF6 2]- MF9=35$2VF$RU+^)EF2!Y]F=-.JL.L \R%_$*^2AO ?-]#7S=8!2'3.C2 4*_ M,M*Q.@H%\%.5\*O$&[$?H4&@UO".!CC[5T9LW,"]*M?R%JQ9Y^J70(A>BQJ: M4H[UC?D33A+8,SCA)-] P1SDT9VI9>:+3U&B3 W4MG?H%BZ_K*P=1YYJ*9:5 M5SRZXWT0!4FK21+:2DZ*L=8EP\P?>.29L] ?H2H6RL:@V($;^@Q'L;O."K%J M6F_*!J) H5UY[&:UL,]Z* BBJ?B8=I/1M*7IN@8*Q%=A%B\BV,S3GAYR]JH: MC1:9K)3:O\T1*F;8%S[ _4/XFW C4%% ,Y17BC,+EC]ZLI.PP04^U18D32, MPR!XHFDV"F19@^FL4H&4;0B_HP!8DKN2F=(UQ5(:)Z% 31*5JZI2KAB* @W3 MW!N=;-AV#12(*UI.,16[;]\J]2+6Q>74MWV[)^$.S+YA\#5^ Y7%\4L/0,-0 M'#O8U2)3V93<]/(2I)VJZ$9&[GIX2U"+[Z(@L(014X!!Z:6W_'%;[E:>^T@- M6;K!2M8ORR7=N@WS)WA.+4JD]".*_2JDF7IUDC;^N*;9"&1929!'[E.H!WID MH1U%K =$?A1QPD8Q)-V71W$VJCTS\])NQ3V\.JXJQ704Z+Z0]9L?>,'N MR+APK9VF.F;&9"(*%%._PB="-2:2C9&A:3S9_EWGU^C2W]RXD.?J M;XK(?HE4:CP)!VI!$G-#O10+X7<4QZXX+=&EYS%?EOBGAA8PS3.M%Q^!# -W MXSJA*VN*+1^!8F=^I QE[03:[3K^B@4P#>T^."E @NK:)%:UZ5EB'8]ZW)G MJGG=N9ZBWT[U=Q0[*.2F5JEMUB*JU0+VF?=UI=0Y909%".EEE&5C*65+_304 M.\I8=$/_MNH8%("+-7_T91SE(^T?+M;#B(I@>;ML1:T#Q3@4N]"078PMF[C@ M,:# %8:=+$J"90LS^?%5L.MH!9Y^*Z(@"L\>R)P*!BE_Y9$HD"B'?ZNL]/51 M*( 7JW56W.%^7@^B7=%/PV50H"\RZ$].G*5^BVV0LX:)8$']3$%_^4J\=_*) MOK)OTFWNM2 2R?!RLPG!FIK^OP?7)S_(143)0!2[*L;^4RF=;+*"'RQ@JF"; M)HY;@P50H%P.#U Z%R3#D!RZY[WC>=R0+S]NI2%8P'XCGJ?U<(DCK%L?7MPX M9=(;,%LECB>K?"H=A.*4,_MP!#4:JM6T-3;7QDDH4*M6%=$^M\K!]E4+=;?4 MP@2BT#;,IR*Y_/7W[WO3AQ)'/@=7"BCE2_'(A=U4^H@TSK)_##M[T8OB6I!^ MF[K4*Q$H3V[TZUU("/=6@:VS=IBG!L ^R3\34+FIA$2/@[ZYG'(DBDLQ9/)V M51O*DW-T';EM$\I50$$', M"$GK"(#N#W9(JD?OW60OM50V34*!VCW51]V016743':%<].#^Y860H083=Z2W-_@[U7"2('D*R3OO+/)R.9+-\ZS;*GAZZO<_O#++7M5$ M4?T=Q8XHZZP5E3YUOM$6TU&@JTM+7:^3?<);KU M*CB0-\X1-'3 &B^# OVT"S4%-B\: \:L&78"4 [&@4H>]WC-*B) %,!M& ;A=4!Y[YK9-'7LN\U\% @K6B6E)O&^ M#9%&L36_ODXU#@4"[DBA/! #?0 9V40:QK3!JN"P*\E1*D%/FO N= M?0HO\.2\!D#04Q3.N!"GG-BAFD1P>'/73,95 MRR_JT2B0D01-0'C,+JSQ7L.0"\5L%,@^4"5PQT K;!FIF,!"B-*F9I!T4M$IC,L\Y+BVSV\)J^XKM*+4K%$!3[(A934"DMH8"-Z4KA5,:@ %Q_HEEDFJ:*LNED%*@V9-YC2;I/ \:%RJ.9^[[>/4,V M" 6EU990^BQL$^_!W4K=#R;S4"#(['MO@;>AVGE:^DEI^BR-P@%\GAD6J7AL M90@.L"%JAVP>WTGH0W)(84.C#\%SL WS7R#\\MOS5^< OZBY5Z\%K M>.X&]'3VG(.35&)"4HU#L:>?61O)8$]48:BE 2A YBE(FAY@E2$HP'X&'\3K ML=(=6W,Y-.-1(&00\";WSS1.0X%>:MB EUW@Q>KMT@Q'@;IQZKI/[Z*!3 RX-!T)""P30B'0)9+LWC)[X;A)D5 A*&(3I(D3*G&8OB%.AR4=(_ MWP'XX;N[ELN7K1:POW<\O/C>OXUB=P_&%:$80U9GO+:+1K-0[*K&HT!([W1\]#O[*_.I*- L+LY5O>I- M='44_LOP IJO@X( 8#L(R1OQHUQYHW+]XY;>LKP%] K2*@+_,HY#]S5A]L^7 M .(VPE!E69K/ MMO^*BTDU %DJ/F5.%TDC=^UP%'MWNS]XP9&0+/Q64%TT'HW&22A0DS ?U6.J M&(H"#0AR@_^%:_#N>'!5GNC-#]TUA$O3'^C)*O]!&)GS%/JT'H+(\3Z&07)@ M(E"T3LTT9*.W9DWY??LWO&@>IFK74!F XHQ(3#;Z-D[*X2C0T:AT5\=/SB]! M>.TYD3*4I,5T^P-M8 M>.>]OPW"?=F% ^5N_O,W52A^4Z(LE0()564WOY'L1%#>!/K?3ASD]_(M)-L4 MC8CBP;8@(NO?[X+W/VR("UC\"?[Q'?SC]]^BS?\#L:C7P3L)JQ>$$3"-52W_ M+CL>(P E2Q\38"K]/!%(TN:I DSEWR>F4ZI!W=*G1"@-+"%8>=S$0!9YUG?T M+Y$&S.I(*X"FM#(#51P[$; 0SDQEB>?C_C7P) "6?Y\(J)3S/9&="_S"CR'< M6@*;=-BD(%X3B$/R6&3A/\E1"6-UW$1 9JI#<0_45ULY=%)Z2M,=:M0LCYIV MPU,RI8%:<"_H\RN]V-KAD].TW#!12M!LR*2@@84F\_JMF1C3 *=J_*1 :[HG MU "6C;4,[ \M@/W!"K#7])^/X4OPU6\"51AI U 6+O88LG0YJI$T05L=;@/D M51#%CO=_W<-UL&D$N#QXJC<+OA\21P%@Z>>)0'H(0#9["WPU'ZT-F?95,BAO M4W^;=),F!9]9WAT6WD5%#J=B):T!KA@^*S5H1.#JBAP((&T.G+:4RKI\E8_I.*@ MBGMP@%U_MWYSO4W9>*NT(\I*/OWF(@@W)/S/W_SY[[__XV\N#J'+ M(C;^\S=4P$TB"DC @@(<#W[+4A4>4FHH063P0:8482.QDZ-B2\SH\9<_+I4> M"C,FI\OW2Z=+S7+**?/#F3(U4RVGS9^&I0T%YC68"74JMF%.D3\OER)RPS0G MS%^6>HT4QG!.E[\NE2YJ^SLGS7\LE312>S^GRM^63165DX&39[$";]VAD9'D MKXN5>1L<*9P^BY5]-3X;3IO%2K\:%Q&GS<#2[TQI(WJD.&4&EH)G2IF:"XR3 M9^&RL-S=QHFS7(&XY-SCY%BL$%QW+'*2+%T"UCHT.9$6+@>KW*89>?YCX3)Q MQ47+J;)P25CA%^;46:PLK'9"<](L5A16.KTY918N"I>][)PHBQ6 Z[Y]3I+% MBKWRF ).EL6*OT9Q#)Q*DTC$6>)7-;-JW/ROO.K@=>!O((UY(U;[O7(\AVK6 ME,F0./KB.\G&I7_-23EY*MC6B5X9+;/4P#1&A7AQQ/]2!*M(BK(KFJ!G<2H& M$P:)L>F$1.#OH&83E)^0ARCJ1EH#.TW2-".[?*PUT+-,Z$K^\V5\[83ADH3>MCE8RU>=$6MF\]$A8%V MBKWGKS"":E^ZZC!K +.VBP+'*?J>*T#73+!Y;<-$5[6G?G,5XZUSGJ(M<;V; M@H+_2*?8.U!I%1M_]P#U-I^@8O?C]DN4%AY1G2GM''M[LMFXJ::Z)SK63" M3;.ZH@,&M>^X&8W!V=AG+X-,/K5702QVCV'J@B1C%3?GS2I MC%]$12C*@HBDY^JZ:)=%$*D=0Z]'U2R"2'W>0%U87CDZ:6,>,WBA)>$,GTCV3;T.-%$*X=/Y-%)XU"IB!V/$QD&BA" M8'G4,@GZ4AOP_WK29&K+Y[.@\5%H@XTO-3-T78#Z(DC4C@O50^$70:0^C%L; MC+\(ZIF[&*4RYW\L@'V;L"AI;L$H-,)V@/J*E]V2&!9Q_/IP-H-(D],^EZ9Q MXSDY_G8^2QUCF*8DX6S*LZ[8EKR1V%T[>9;S/&JUGFX]/L\+OL)>W07A39"\ MQMO$JX=.-20UMEH#2:U+>A@?0[8W&Q;QNB(A:ZJAP-%P,A+DTO8@ETG\1CG/ MOXO"R%JD:I-0(7,?14DK1+()& H5MCQK)C,QH&5XRG0S\*"A/5^JT7C +[4" M,L-!G&(-D9>0.%$2'AE<&8@,.@46ZO$XA,K.B6'MWN%%Y(UUI:7I0[^(]()A MB%AG]8N(U!V2>/R!642P6U?"&0E-BX@>&8""RDM[ZM[]@2A7N;&G[?48C&JR MII2G;5?M2CJ-[#N*]7 NS9WR7Z/';>KHGFF')YXUP)^N!DNA^"QH?^S41?E[;*2 M-;1_(I"#2C:7[R1T=ED#Z,=M[65IV,[6RZ!'6'?SVJV!AIG A4I:Y_$CX[JY)]!QX:J.A<@*VXY81U]24V'85>]T1PB"*5F&P5789 M$$?8JV-)6"S'1^)3>GKTL%QN]J[O F^"/N99J+O*OV@V>>#F I=[B$WY=RIF M^RP_,DCB[&-5XZW)#&O$O\J:H5,!_)5*[P >!-7LTM:K3X2E!K%@)L4&M%A@ MX$VX_4;6"6QRT9];MP.ZX79[JB7K. GI(;ZFK&.GM/U+APY]KJ-7^I4@>J#D MV3E-%-6,MM_;H$A>4]!3-M)NF[3/5$'OKJ*,NZ$NP_ MUQ)4ZTI:E5<>EQ$ MZ([I0=,:/A<1KM-*:9!96!<1F6/,N#16W^E"<7 32FM?SHCT][/X8&;-YK+H M:2N/+0A6LYAS"@TCKO\]I9!/=O"DSI9&(YKI.;W/&D"3-9]3:O$RO\QQP(DS MK(P_XV/4P6'!:3B,K'\2K*_B ^$4.NU2:2WHHS;3>.RKR MNSL_S0U?'YE)C *:VF#9?WDI*][\DD1QU@6Q"=V61!P'!IOE%:H8\'X.S^E$V!$_A MOR?Z?WXVUQB86E4JC3A_A:&Y5*1:3=#,M9=^Q,%[@9/=A$,ZR%X6(2,:W-K MI]#765EMC:LFN&'RVAVG/ M=W-K.OU9-YYOE[^E=99N6'S2BE"A.2WXQ7Y[9!)S=/N-A&LW4E8+:+^.O70> M*1?5;J1V"K:]2UG4 )NG6P@;TNR@I7^^"T(>T=_AL-;7P(:J6!NM,ZZJ1; A MFS*0+".-,",/99],1^W"B>0+84,ZNW@#8*U=Z>Q(.7U'2K4!UPU90]$[EL%X M ]D4 "JP=I5V\8]4/5%0<;#E+9LS[APW9!RBV%:M24,VWBX7>2*')%R_P26O ML3T=S]#.0XF2MCRYP<2S+4&]^,_?_WF&.OC/W_\%B9^DE9&ZW!NK; )>A!M/ M:TI6U+CE>MHB"&1D_2V%(RJ%2SPH_8$W%0DA[2QSQV MPA@388V968/5?!'Q!"WNJG!.ET4:_06=IKS"W.^:RD>RK.8IVI,DB?4[;;*8 M,VIS]\\BJE"T$!W:>90603WC8Z?W3RVBA$>ODZ;U?XU!OG<2O@8G1$"5+VW0 M"BAXLR('.'QJX@V:,'F2!T_E]EI$O90A&)^>?J==1L6,?G92,@:MS3+;JS^< M0W+8$BYS?X\T?LQA*[G,^^H;^$J'+<0R]W-EXHE=1D&6*2WGX(<=IY1+:M&[ M]>=X%&5^WX&+M312:0XY7]=.]';G!5^CF:9ZT1O#9 (N&]S[>W\;A/N4I32DZAG.MMY:!IQW M5/Q7;E%YE,4<'2X(4HF:'@_ZW+@>*95S>@F T*LP>'?IK;\Z?J&L1;@QEU0# M>G=CET0-6S?*IZP1[H90+KEVV:FC__9(I@>*-985A#"::C\/3W@HS/-GZU-L M]F49YN!V6.B<.-5A9[+FW/UW1K?0P/WHKH(P#+Z"[_C1?R+O@?=._PUB*KT* M5)JL=98X?0Z5\ M^M>#)NJ[Q0(#GS]9FR'H+A37A4 H5'_OWWY;DX@J 5!(U"2IU09: UIM@/[HN#[P]"\^W0//_;&2DX:[NY*%![=CS*\ELSFQ8K(%)?@?/[]$.N,CE#/P=3 ^*T MMOKK M*"X$."VIY$:/]$/@[UY(N+\AKR;W0#'1ND1!V6T)3";]L%\:) G-1$1W>A52 M!NMN;C+;:5:)G7(@YD)EXH'Y93=:;.AVTD*P-7\H%'3B7AI4YM(H@/* MA*5F=HW)6FC65 MTO+E3DM8VR:NK#SZ$@FX28 VG&RO#ET?!I>ZWNL;F3F915::LE<%D28&8N"[ MD#^SF2V0/ <'QSVV N^\HN0JOYB 0R[NBC\(.7#YP*ZW68D V'MHWV9;28 M/<^5X"UYW,*K<>-&#& J2.[=9*]R0S7.F^?%SV\71><01([W,0R2 YW!T&.] MJ,BF:$4UQK5O"X)U]>QQFU_GK(VG5BFK#<=U\RM7D[_5N8#8D0>T6=9N<0CC M:DC("AXM[-[__->AG_M<2A4U:3#7WP6AJ$?+GGKCN1-X;G*9HGX1,S=*X5=) MF]3SS%53ETV/+]BT$+[370A\NB,W0?(:;Q./RR9JVZ!Z"C(;DL1;/88-2?89 M?.]7R=UV;!ODIEAA<$4[]4H<*4,D8=YL/F] *=.KM3.0V=[30-HO/CU.E)@4 M;"0VP6B,\)!.LHX,?>>*+ S6")!7Q&IV-*DF8C/"-C^4'1; D>'0/J2] MT@K9(%9\T&)+B/.6VL67RYJP VD,TT\'G)I#0(F"Z=P!81R MYQ[N)1&,&10]:00\OX7L) M4/6HZD5499Q*AFH7 ;Z4 SN,-*5EV8LXQ<-(4^/-^MJ82&R1)8%E$?>"!I0\O3%T'(8:2--HQH MR63M(4.HLK*63,Z.]AU=/MA"7KVA)0>S'+1!:XCC)>[8(L5X27,+V:"VTL,H MR7:+**@_C'C1)FMO%+(&E"'.@*PMQ0MUGN!"^, P8D6;;,5%G,X>3J/6Z9.# M]HK >U*GLE*8IG0NA.QM!86IDT9':32#C9T,$"?1+A-U(8=[K'!'?=KKH UJ ML(J]4[%K@_3;1=![4C[=.M=OC"U VO1Q(+NG,C-X(>VM1F#-K?*2QVB$A8YI M3,6D&YH]G3:1,7/FG_\ZSB:@;-\Q@!1MGN ]*%5/C4V/DGB^B,Y[4W%L?:[[ M(DC=EF\;QRLO@GH#,-M1"AH,2OQ3X\N=RB(LHF/G) [MIH(.BZ#TF'%#@U64 M6,1.#,U#FK7M07O/HJ/G5+*;IC;&H'3&^_H-:X-3%>@X$[,#,74%0I;2*GD8 MBK:I3C).;V6IF]1>YU$P<7E!E+"WW*7* CUHX!SR=_30B4U(,Q(Y7M&--"?P M+#J//H8[Q\^<7@5B:1F+E0!Z[CT046UHF#7,VO8*0_4!OSA!+W2/KSQUV:+! M/X.#,PUZL$HRR>#;,EU5!PP<[3/YFA,FL\-!J^Z0SDBH)C-#'E9@D69X@3_N M-@R!4]/]8KGDC9U!NXA2RD=88PD/@^-'G(*8G+W0V>8J0 *.Y'-)M M+1Q77K-]XLWN2*X3O\H%SMR/FL:#4_)(2KS.XSY+]K'A7NMFV.L!L'XCFP1B MQY_(+O'@"T?9YC3=[?;KX+C7!MM8\INV)]>)W^W*,RWI6#J/^YS[LP210W^? M=3,LEM2N =5T=;53<-Q2@\TINW-T1%C6A?P8!)NOKN=1_G1/O^'O7 CV+W6S MF\<%U2!B?&7;K6&O4Y\)F$W7NN4B."YZITTN9<2U)-V),X.2_@Q!,9EW-?K3 MO"Y_%L 3\2PEQVO2HG4S[/7?,\BY,K_A75?#<=4-MK24.]65="=^PRO/_3/Q M*9)B^^!Y7'">#&?TC"L&6[O697B:KJUJ-(YKJ=^(8IAUN[>U6(FFZ?>CR.^]>T(:5"1VKUG< M9D7IDT8#W>X/7G D/.N!1>'/B^N(V\UR=6,W9)$(QL)XFQ7LM?S+MXSY8U?T M1('1G8BZ+3P@):/-B"CG@+7QAZADVV\M6@6KV MA6FFX+B\!ILC;2]TOI DCTJ]]RG!DAD&H@K%KR\]C[%?\4_-#FN#R=;NJVQ[ MS*^NZ6PLM[C-1I;:69E2:5EW&Y*SW#B/H>6I]VN71 ]DYWB?G#@66E7/X[IK MD&HCG[=8P]KE-P*SB0>T7 0'*^BTR:4B3"U)=^*,0?1Y%P4V_C:OFR_I/]3T MO&NG6+O7$JC,[[/A9!SWV&3+&EI,+?&Z5M-A,ZH\DQUP-*$HT;PN< 9_GM;; M<'F5P^U%AE<@,K^U)C-Q7-FF32J%?IO0X\3OJN!Q2UXC\J^$+GW[/C\UN@I] MT^54#;=W.2L0-5Y)Y7@D%[%A0\JUZY2XG_CUZY!GO0H\=SV[9(QSOG6V<\?T M__;(K98OTQ5A.*??\=/),&'%X$K??XX=?^.$&\B#_&\27V[HS2,;/2)=5\'! MO4;,!U><@ND8W0S)VOE(3M>%&L/S4<^H?V$!V?-Z*F::5U\DDO)M8%GC+']< M[',C;(YQ!F[[%7'<=\,<^UZD.W$)T2S3?H[W_,7D#KPT'NNIG!GU25%^\.#EXUTD(%\#H#AM/QW%Q M6R;;FQ-G65=7DXD\QZN\H/1[\427H:2 8)N&M"'0LA24HE3('._O MK N&%(TW6HX;G";XB.=Z7;BU[M5L8 YWOB%E PHSO=GPK/:626,EGQ /QO' MO>]9$,"85"=^]>691W.\XY=A"!%7/*?L,]V8XB\O]%^1D\9??2+[5Q(J+D'; M50:.2OROP/7C'^FG8$-V(6&?E0+<.-P:%WJA:U/5M2#;Y3PZHAJ)\ MQMK,Q+0%JS"X@Z1)(7?2--'6=)6!M^>30^7"?P0>-"^/'E;JW9 /'!B:CU2" M#1WO*7FEBS]X:S4XBI$#P_-/LE\'S\<(F-QUH 5(-71@B$!?<*+H)WH3POPF MW/L:P!IF#'Z>O'#;HP9)-71@B&ZB'[ZGAUA'G.H0'.IT1^TISUW1*BZ+ MB)'0JCVEM@!M2;T(\K4M15'5K"FE-!1EI/K3F52!F3V*4^S/9XH%9A8R3K&_G+E7 MB6QJ4U]&L+^>CUC08%?DI/J/\]DJT:MF(,WH]+<3C:\Q+A4ZQY";^1<,S2U! M5=B$G;DZ9C^:.\+;K68-_2=ZA/VUZ[D,LL"I1DI$MS"BFA MT_^\]:CXXV>G\(F\$S_1)PBR)VQ4\W)'9<;U[2JVDI/C@/>5D^ M"H\F-K77DC;%0 $6;12D="@"02+CG=0.CQW 5!KO04:)G.-E>=D?H;"1O@S:I1C_'^D$L M(/H8!E&4E8)K.'Z*2?:0\;S@*V50Y"X(;X+D-=XF7AW6!MQ:K8%HWSZ3N.VN M"5-P2+%#B",5[4ORJB]#2>TG%Y2"-7OMRB*H/5X-[ 5%=K85BN0W72]O+(*0 M.F6F%%6FEV,60:NQ^*3V_"["@-?G.C>)I6<"-A&PG2@\J(WT[RD]?;(#N_7) M4%0K<8]B%PUBQYN)7?1RLW%3+ 4/T1PMHG8,2LJ$S52$*3[U!"3UG1WY7N:G MU(X?&+9\98$.CWXN=*T(O0<;&9!F$T]9LYZH5&H8O+M0Q(H^ $T9CQL_ MT'>4J"QO^CDXF'B#KF5P<18AV)J0R? .+T+:,E3AC<2 07W-[R1\#69)JP8. M=.*^9+.F7KE#63X/4_*UW2V(7&>B7*U^[DSYS^F:]$P0QX\4^= ML#T5_2E*%F(BUP2\SZ:=!#?SZT/[1=!PX--I*MPN(B-S(-JV$L$G*1B%(0#I MWJ<84P5&=* )?YMCX!$'_T@?T@857CK4FDJ;0_/D?/T$A;FH8*2RI\C'V@?] MIR#\]1X*1JY)U A[>;!]X*'[=?1&6'OV1N#+@^T##RR27CO#=V5DDF:" M?23H/32XJD@>)AVC$5]SQ;U>A&;=FD85!K((Z;$UD2J,:A%B8&LB21CBH&(= MWNC\UJ1B;'>,DI]X(^\%(?=D0N[S_33N1*N;85\:^(D>0G(3?%4%)4@&(KN M9OUC90B?>*O8RFWDU:;20DJ.OW,A%88%[>2%J"#'TG?VLRP/I,'/^*ZV6\/: M[>5@-F!A'\!5$J[?G(CG8$&MK\TO210S+T0#]/JYUE&["T+B[OS4:+@^,L>, MQ^[&1\?U(6R\ 3^#!:PCV8#"SW^R^8)MR);*Z#%Y<-])[;K>?EM["?2%:$"E M]3)8$>YRU7HM.7@=U'8;<9- @?@TZR?WBLH".X99V-ZV[P^.&P+)P6I5&O_EHQAS#Q5 MEME/>%]$WZ/.-!Y2?1BC8=+I4'H8G601G9;&YA@MQ(4)6C6=,*%EV@^G[-^G M$2N0>P]J1S,CYG:6;H0[]5'XY/P2A->>$T6?P4>BR^5MNXJ]\N!D_>8'7K [ M7E'YHPZLMDRXT5P$W08TNV'68*!Q 9LIHBK(KH[%4=.GC1JO8-TAL0#GGF8_ M'IH2S4VF8D2,%4QMCU0ZS5[B;Y[4$C5P2ME(C/M ]<]DGW@0;'6YA^9,_V;/ M=/N=42UDMPT&/+@-3UIUV,!>+K787BC\4@#;SL8AG'<4IDH9CV8"RB(B?=M+ M-)7\6G-181'T[*T[MMF015"TC?!B>#8SV6#IY%-)\X94E+/;I1/5]!&22GJ+ M\&^.]N0\+"U]>7C.J)36ETY08]FRIA0LPL/>@W*ME9@3KYML;B77W6/A\MY^ M.Q _FJ7E_&RC S#5Z;4-D^R5>1..7]V?JT"F8=+ 9I/<0P\MYT6'W98P9L4: MU$LL52TG8SQ/7>*Z.R^'D0"= WO[K8F1%%UYR\]_02)Y]#:X-!'G',9K3LLF MOC^H%H$WD[M?W%F+EVD1NL68-]PL2G("5>-$Z=LBIFR8H-\39 K&#_(H0;VS MC2'#4A]"H7\45E !!]8ERC1$H_,R9[5PB&V1A7EU6@*C6G!*@5[S"K]45:$G M(?0J;(@YT0X]1]K9#82JFV2?"!P5^F:#*RQ:.]Y_$T<51C3$RC,ARV?ZY+Y\ M)=X[^13X\5L'YF.RZ$R( 1OW\C48A 9\K3FA3K^L"J;NNMJ,T+\+DF$80K[8 M;"H+Y 6D"_ZNH,00*R,\$U\BLDT\,/NT/@'"5+O*;U]5IX-Q<5!#+:+FPWW4 MDW/,YIC!"TK9?!'4ZV?L;GV@%T'3<] FTC=H$/WNI&/I^CY3W7?K3-91#G%= M&S]IKZ,]0N>:_DE['2W3-S4GC%(T_4SAPF)QTN6%AB3P(%:1,4H,S5?S[7B@ M17/+&/6$5 2UXD87-+.T:5UV@XMV8I6_SS%Z?.4<0;J$QJ8,&\>+&KQ,NADV M>V9#;%*4 X+H9UM"XW1^\X$BH4L32B^I=$A7(-,^SAM(J##;).O[) M"4/'CX_9D>%!>F2C1\QT]LC]S!7]Y/5C!X;I@3B4,S:=".U0:X> O4'*UI^* MO6^89)/7M,*C%0H6#&D&3T"E@ZN:U9ZTD:PCP0R8^DF;93J2S?CA.&E32TOB M-;Q>)VTUZ4(JY:-ZTM:/CC>RZ14_:8-&]]>R@5S#%CU&VY7PF?@4R1OR&N?J M,_S'''7FY[<@C%](N <$7NB'--&_\K'VBG-6P='&\ZI&6P,?X+CWZ6U+(/E( M5T14-A()V)K3(AEH%6CCT&/%8"04;PQ<5PX?.J$^NTOJP/3*"'M%-NF+X\9W MSIH)D%KB28<.G7+"7H]GLJ:G:P,T>@@<7TU%W7!K) 6;^^,VI9:V&J9D()*+ M]-!0"5(32-X1?') DU\6E#17L1 MX0-M&%%)F1^%.E(_&QKJ*.^9C%\M(GZBA40DD19/FS8M;I;>\K- :JF>?+5^ MPHGT^_/#KSM[BPA5:G'S#$R5@Y(,;Y'(CH+ .*%=)T/-,6"I?!2>R(;LV>ZM6-U2XW@4Z40DOILJ;"W"/113D2 VFR"G M67JP9QWD=([1.8>[Z,"_"\F_$B@I_KA-.9N[7CG'O=JO:CP="8)5SOWH$VWL MB>EL%.%*_+)6:+\*77_M'AQ/@6.K)9#NX\O7H,<^%K.1H/?)B1,0GF^HBF"$ M46D"$B1J5(8J(7UV29B/46'22QC#_2&7.<[>?7684;.2M$#J#<74!#5L@53L[+)< MDON[A>11UH(72*O!KJ6H>4]'1UP..BR=Z^16EBB,!0L+_:_"ND+_X^?G-?$= MNEU?_.A UJR:C=1ZKQ\[K&'($&1H5KEV(GF:FF8@*I.JSJ>F'H_$SS,3SYJ, MCK77PH#V#_:]*F)X1/:*N21Z(H=4V(RH*LWES3;=RGHO>_::&G,OROY9M"+G M3I)+I!YG,;^:58Q;.6&R5@Y=^GIYCBJA6_(7%PH2D2D[Y_>8"UIHFI=" 2,66Z M<)3^1;%BQ]^\'A](#)J/48D6[91)[]CC5Y]"\.8>E!I$=<3 Q_5VNPV^W7E4 MD0K"3\Z&"BGJ$ZL<:VWO?Z2O/$CW3_1IT1Y9R<"!"7E']?S0\>X2?Q/!5]1D M5(RT<^X4_+W\.XK]U0A*M6%S4#;N?<,NP/W6G%::<;[II9G2[T.SLB0,;H@? M[%T?),TKQ__U8^) ^6%%J(OIK('A+'U"T^5<.L[>,YOZZQ_?2>B[N[?XCM*+ M'CI_!Y?N.=B&^2_0\.7;\U?GH&2#PZPYCTNN[V[=::F!S^-G I6!/2H21=H: M8 V#K6W'E1.1QJ-6&81$:YE),='VIU33T[SC8O-!7M/1O-M:2 [K/7V'0A+% M<(VH*D#6L?M.5B1<@W]F9Q8;V[2&O5TNZX*/21R!DDC?HLN]II1_?% M3R(JW/!L[VOG0)EW?-3BUF8%)&A2+N]&SX>0.)M'7]0*OC?"43/=*H(_$9"! MR.:2BD/TEHB72(.7;M; (D0FUU\'?A1X[H8ETY+TLT_@NI5)$HUS;(NZFF*B MX@AK8'YR?18RP#PR;6\K"A25-IC&50&PM@UH99 M=//FC2V43MUBA,U*Q<1/E##F/Z-REV?\K?9BMO">*Y= @:@!(I8CN8RB=2!T M2Q>M"(KA!ZD2F'+2AT<:[<()4:+1J1X&TZ":HDNE/,SEI(^) M2:A,J2RN-C+EI$FEB6W)CY Z].2D2=,GSI15 M43 BKY&=IE.GRSF->0BMOB+\G'K1]C%U>%E(UTGGWC;I$.5PL),F16L)VB1< M[=0OHU&]&'F\W"(.DUY&'"@T;Q&4;&7@K@M<8R1J8[J(X[Z*>0SD(NH&&#$U M3=#EJ9\U,Z96C>H\=:J<&U,,S\=KXQS"-M1Z#CO,\A1+CZ1AM0&9]R%I&M8]!O_D>+D400D:DORZ.2'IVUIA4 ML%BZ*=_/!B)G!/N/Q1&L!4MK2/8XD["9A+I$DHQ^?SO3KTH_;9Y*1K:_G\F6 M&X&:TV:X;79Y2KWVL)4R=#B-EF? UM*H57H0I^%I6V9;T["2>\2IM#QSAP&5 M)*TGOS];-J295IP\R],IM30JTKPX@9:G%S4B*=?=(GVQ MBD-#\5OE<&OYEY\)55+I9I.'(%*EPY;'X "U@=#RL=9 K^BQRBMRXWI)G/9P M3R\78SH-N ZT.'KB@ EEW9,&Z1K64*5G,F3&;L>[#O;[P$\!O(SCT'U-8K ) MO03L;Q"ML,G:UUR&(81$,H>5 O\!%L:V_]EQK6UANQ.@7 6'L-'T?HAR1H55 M+R+@O#-]BH&+B$9L0Z>A'J-%Q-Z-0=CL(1LCU$6E*,R$@D.\CXN(W1C@6*K? MUU$"% *ZI[/07[&TDE(5)<[ O?0I9WYW-_0;3=JG^3Q[A:[\V-W @73?"?/% M,,/F[;>UEU 2WM&S3_G!(8D5I@-MV<%AUK;8CB!8__I$#DFX?J-,;Q4&N]#9 MI]5=(/ CB=_H'?TWV11C4I!5)0I[+(B%")L;NHO^+FV EW(P,V1E$U$B]:/C M):I:C,WS[#Y2K?E4R?VH%X'[\).3UJ6&I*J408VA,"$2^$>C7\8+ MI]27, BFA9X#'(_X4;J)2,13^>O7T,[C!2![W-Y318.>C<3Q?G+C-Y;& !D- M;^[A);BE_%_1+JK+"I-V*[EQ0[*&XC.J=B65 ?8D#_G1*O3HJV-=R_[JA)N' MAI:= RQL3P?QV+J92EQ#XO8;_%,EDQE.MK?CZS>R2>#J-&Y1I-HC79_BDG+;V#"C: MCLG'S8_OWOXK89&7/)P\>H1L[YKX64?]T#OMA+I*>=CFA8??*DMMN$15*D>Q41^?@(JJA(F-\'5R,$]9? MQ9##LJ+4!%KZF]O]P0N.A%P1GVS=F"EO0.[ )VD?!M7(S-,5H EI$/$:3Y%3RX#0**8L@60?11AYH920R+(*DG<2H MLB-&+IPL@GIZR4Q/ID4%GPWX5.C$QT'#F?Z>TM(G.]8-"!$UVSP=0XFEBX@4 MZ\T-#<_Y(H@YX)W7* N#Q@7AO?(#$E.EDHP2#H2V>*G>OHZ[5M39&MBL>%\' M?EKZV&4=O[--5ME7S.?;-E27X-(;I\M#L>Q-(8H(C;C$CF4F&]2T" ZFW5-? M;7&H%Z%$]"2G_ *-(8IYIT.TMI=WNC!M#$)$VC7CQ?E&D$L,#47!Q+:WMY : M1W=564A2,WC22F;/R6OD;EPGI-]7UHV4#!JXC(%P!FJ"N%AQ0#K.GK>*,@4* MRW\31^ER$D;8;/N4$BTKKJRH;]HXW)[P0^&)8G=]#76@PZ/6R2CY/%4\C'6",E%TV.=T'XQ5^3D#["P,I6 M0<2>Z&9MH\T*0U?%H8(!I,#0+Q-WY_/3J7KCS.;8U/V8G) M=I;]2VJ$!CKP'T@4!2%]V$,J?/J[!^)$5(3=D+WO;MTU$TBS(-TGLB;NN[*4 M8(>%K"%]N]V2-?3$R+<#XHE!"W3]A *?8:&VIK18 !F2E/B43U%&QL"C?WPF M<9SZ>J*,5[3"V60]BU%RO&6Y%*/\9_M%3)JU+5ZU0:;BG+2IIU&C*KDV11WF MI,EBJ@Z5+#=RS>.DZ62BPO"[I;N%)TTD,W6ITEQ2<>R612B]R52A*9TTB;3: MH?X(+2!,K-5KUDIK740 B=ZSOTF$!X1UY:$DO,A\*5E!?9>-S*H*]ML^A2,IYKT;7T&A<0 M-?4;48U& GYCSS3E\('=C]?TIKJ4/FNFBJI=CM)Q0[M"\VR,AM.H]$FW7 ') M8=!$+4@&6@,Z)ZF0&-,0LJ"=8J]BAA.]7?H;^']0/?C=\1ASCZ^=,#Q2:4K' M5\SF#GU)Z=?^0;S-8Q)'[H9P2_\+?6==NL91>F&;YB"00=H^6&7=7?$$O4!VP!UNLV?+XPQ;:D\TE3L#=3,WR93M^"V_WZMMR# MTR=EE_-H*'6 M)R<&X+'84GIK$^"F=6*';GUP>'/7M^]ZC4XYW)HZ)(-(:YO03+!9!5%UZMID M/K=8PUY4;Q!%)>!T)0\5@^U6S1,(K3)*-H^WF&X0NSO&C0K/P>4>HNY8J6.R M@;XK:1D6)XRKRGG75:RA>QF]TG<_B%CW$VT^DVSDP):0K%8T%+!8D3"EW.;: MLQI5[6,K'FU$^9^4W4G,=3 MKZ!B=!4;I=&3-BQVXUH&DN\B+(I]J-8H6B^BR62*')%R_.1&YW(6$W=DJ M4,J:2^9SIRW!E+OETK;;GTC\%FSN_7_BP[1;(1UJL_A'X+V# M^M NQ/>4AKYA(20 NSN*?$VNC.NG6&=[PC: MAY))9B4^S/68QI4&WI87LG[S R_8:7*_:F,&AN&?9+\.GH\1/"?7P8.W5H.B M&CITPDVP/SC^D:>B_Q2$OX+4O%+4M =<,=)B M]!>\9GD,^>7FER2US2ECP%3CQ[BB4?03E<3#7!*_]S6D;9AAKY8G,Q6:DU@] M?F 2_P0&PM"_=,.;9!U'#['FL5:.'1@FD'E?G?6O*^>HR &NC!CX^S?1#]_3 MAT='BNH0BX'=,8DH&33FQ=*0@4GU7X'KQS_2)^[%4)---WSP\N81?98] MYCI<.6Y5)Y2/&3J2-??!E00]:1BK8NC0!A(G]!\3964%^1B;49C@$..'E\HT MS+-1=_:JHS(-YULOIBZV](&DK"LJIFPN0RHX99$ N7:@#T3MOIXU$D#K1XB M>/2?'8]$C]N'@(J+GXD*1?7XX3LDA&D-J]LH=O=@#Q02[>":!$D5R!831[C: M=-FLPI:T $QUR#C,1:41R\=@4O&A;-3.=_]--O<;2B!WZSJYL8>; \$+5S . M^ENR!\O0!GIJJ0Q%YJ:!T2! :('[$I%MXCVX6Y7@8C35.N?.?+;Y_^,;^'T# MAU;/L]@*([5]9S!EM0[5G%@]?FC-7C#3IZH1: #WOBA/2A5^DWD#PUIV(S3# MJ!UO66&M!NL\?O5)&+VYAX*P6@769/[<'H"/0;#YZGJ>E VK[\I87[-L-6I( MBRJ-L9K]G,*@?8]KPZQWNU*K-BB4EQ[M6:9ZT* )B@+$%$EJZ5Z1;9!J>?G M[;&3>;S@6T%\V\#R!42N?Q/&^B*$/ASHNEQ](I2T/% MTG*Z-H6GGFI>DWEH;IZSHPR5/54:M8FS%=,F^H:SGCH].T:XELI]R:)&3YKQ MF02>5JI/Z^(\3_V,#1-2+A)4&6UZZJ0TCE/-7PK3@-$%4LXTO+3AY!F%:YXT M/^R4)Y:?4$6XZ$E3K#GDM/3"2M^9!=Y8%8$,V.*I4ZM#'+!(P=9RX"*NYP#2 M<3UP>1$U%8:7^5H=\$70N+TPV!2^OE2R]9$$6P70+X+ /;BF(II_C((JF![O MX;BEVH:]B*(T[5FB,FWCU,]<3S9HDF%RZB3LR^@:4V 6409I>%%1IE6/04I, M9[$]YU.F-RV05*TY7R43Z]1)-JR TL]I/$:Y,TRT;G^358EY"Z14%TU.DQUX MTLV;)_7/-6_,2;=\[GZYFU)$QR#;"5YR37[J BG8<.;4.;-CM!1'3JO6LF$U MN_>DV[!W/V2U).3I6K/CHE,7=E;.BAZ#HKY M&*1#?M):4TV9%)\1[^]GXJF)5\_?YSZSDPW=&$J--:\EP$EZVG[(@>C:HX ! MI_/BG&Y=Z*RIDL#I>++VU6$>:Z-B#IR6IVW3&NHI*M6;X*1;G(FJZRLNB7Q9 MG!8\4&S1>)4[^,Z<]6Z#G3$K]L%)>M8P6\A7FC(CG)Z#:DZG2D]-C1,>D'/: M4=N#^/>-ZK%P>I[UJ"9ZZFO&<#J>]21C3Y91X1I.U],.(+,K=#57R^&[<-:X MC(,QJA:4'\XJEY%3J%H%B)/OK'49D$]F(OWAK!494*XHD\3)=M9\C"3U$8LW M\9V80&="U!16""VM&4&CQZV!O01-!]DVE>H$+P1%BAX)I_@+B_-VUHP\VN8Y M;5B.'X2%A%='87_,NN7:;B,]1*3F/K^G5LOVVN]W.+HO-"U*4>0T^ZOP$CYD'3'FJ:;Y\;I&7DSC1.?_< $21/[NXM?MQ^B5+J M*K9(/^=TNBNBND=5]ST+\7MYI-+?YJ T[B7,@O-C-))C@PW,C*OX61!:\CAV]/*UR M(D\[,K"K>\9:[7DT%#SWQNEVXK1.CE+<4]O+O0CRF3A:Y.U>3"_XHLBH<_., ME7]R+8U(6QR]$;?I0$.^4-/N2ETNQ-A5R75!M<>\)J+&MQ&:<]VT4LJ7RR7@X6 MHVG.M7];U?Y=')TFD]4J!W+8M.8@=CSDA!ZF,^+BLL&G=A/5(Z<&K3C\]Y3R M/MF!=V7.M*^'5PU:7?AT"#5%6->P)8H73WOCDCI3%# ^J>(&*[;%;R1VUXYW MKG1PKG1PKG1PKG1PKG0P\M$Y5SHX5SJP'5$O5[J3(&W54F;G&M$&:.IIY,6CSTO$%N-!GQYP]BS[3&F MIX^:Q'S.*9NAT?R<4W;.*3OGE,V(?.>6(2+9 M.;%LLC?%S%JS5-+US#PY)X:=$\,&.FJ&T77G7*=SKM.DN:]+RJ_I&=Z_I$21 M89*WEI00T3<-:="X_WG32I4:,4'H.W%.0)IZI@?WI4:^/2ZTIO;5^$2^O@$-+/(1QGGSHJ M,AH7K5#+/TNEU]D=?G;NSN^IJ%OR%^>MU#(ZM8B^5'*=BWX.GJVUEQ CS1__-SX0G@!'TF.Y#4!$,_Y?E,U+WTL])_ M0,&<;E?'RLPYECAXII"QD)(*+I'&5JZ?8Z](0+8+.D-F>HS30 M26>EE ^U3;PG<@A"**LLW((F:[W15&N(/9%WXB>$\SYX;G]RX[?K)(KIA0YO MOZV]!&)M(1"<_@]4VU'@V64E>_O)[ZC6F5<>A.;P-9APE<,'OL_W_H;N;>@Z MWBH,UL#GFMT/C7/L=]TN! (%?64CK8%]'81TF^DYI8\P*T.FK;6C&HU#=#-Z M;$N6R_*3M@RCA^P9%TQJBC=V2;0Q>J7%<]3I$5P&1:7O9.D.ZB_M,JC4\$!+ MZ36B+P63$4C/KYIEB$78%+LR+JG0L@R*-3,F(YHN@UBJ.]@H14Z2#(+;RL6; MG(G]S2XWF]3)=$,H5&LWW4Q_<[F'L_9O_I_U3.JS#>QL SO;P)#9P#+HF">3 MWFN(?L_N]TOP$$""W'M1LU^'G]$*9YO7V>:%Q.8EOE[TWQZ1/&,*@AM-/3VK MV$2%M76\1LU&SB:[F8G?9Y-=9\VWU9N]#$J>375G4]W95(>589G)6LL@X=EV M=S*V._N4:7T3*U+!H/1Y)^%K,+M /M[C:9;6R3P)0',>KH[9CV:Y^^8KV3?F MG(VR9Z/L*1IEBQ[04N#SG]%0?F$62JOY7JU9_5D-/MOMSG8[!,)WP=8722:S M//P6[&T95!R(\9^M"O,S]>'6G.\A6CC[,TN#@S*4_)BQH.)YAOR,QK7W&"I%&[)U?;>B$E74CWZ*$@L9S@V% MUP%=TH_(IK!YD$W^:T0U4V@E\A9XE$01E!6,CWEO;?N%_AJEP/I ^V&P(X=%\3YC]X"3X'_AH<[H'G,>-;VG1. MN6V#+&ZOXEMN3%LY[N;>OW8.;NQXVINFGV-OG^%EBQZ3.(H='S9 M66U<1:# M(6-Z12$&L1@UP)RK_4!') M?2=I\7+]63>>;Y>_W4=10C8W20B,AU"Q=_.CXR6$_?;(9-[H]AL)UVY4")PR M5M9J'6LHR[FH=B.U4[#M7GLX@V M78E>UD_BL>0'D3B M[OSK) R)OSZ^A X%=NH=XX; M,@Y1;*M63Y6-M\M%GL@A"==O<,EK;$_',[3S4**4\K0..&43)4@5AE:IG;JP M"0-"F_A_0G )V?SG;^*0$3?[(SW=Y%M\ZS%+S'_^)@M?4IFY3JZ94"*S]HU(BMRBB)HD;W3E<)V\ MDN]RXC00I3D*7$XVS%0PX ZF+'$8(^X8Q*H_*O99:8-==^9D,#PS=8/P&'C_ M@'#[58;EF>-OMN^B87H,A/^$<,-;V+EG3I(6[T4[H_@8=/DSPJ.B-Y[/G J] M3H?6[#X&8?XR$\*H3/-CT.2O,Z&)TH8_!E'^8R9$T=KZQR#,WV9"&+T_8 S* M_!T;929V&8RBXJ#3BX=S#HQ"+W0ZH<97, H!T"E'!IZ&40B!4T-H\$^842(+ M!2^'>D\?"%YDS KI)Q&S*D;GT.Z3#>V^#.D3N4O#^^F#2;F\4_Q%>$SUP85M M5QFX\.)_!?2>_T@_!:=W%Q+V677-1=UP:QL!*3J/6X&0FFAO^=AEG2'[D>&\ MJH[ +S5[IAIMCTWEY28DH$571^&_7N@;%J#D"JLPN(-*(T+!D:8;U7:5@4_> M)X>*W:#;@??G8:4^:/*! T/SD?@D=+RGY)4N_N"MU> H1@X,SS_)?AUDQ4BO M RU JJ$#0P1V$2>*?G*@CPN_Y/>^!K"&&8.?)^_="7DE5Q?ZW.\A9U1WL+0S M!H;O)T)W*/0OW? F6RJG;32F9/&6!T2BN*;J8:H"6/$=!NL+$TWIT+&F=!#QVB'),BXS'4H M]]V S%7Q2F'&?C#6VMHR,7.JM.>J_W][S]KC.&[D7PGR/3CLYG*;!'<']'/2 M=SUCH[MG!_%U'3G>0RC/29&)D.O8F)X<<1N8$R0%DE.GG" H_>R77OE&Z8;OHP0E 67+[:;- M^KW;K>:R,I71-J\/G2VK.P2[W16EEF3[@K.F MU2!9952UW&9(RF ,)[L+Q\JH+CCFZLH()O4+Q7#6Q6:P ZMT\XMSVUSA1O?;&VLHS8GV I)GAB M*598SJ<0$?I9X:('RQ,\J2SJ2R#JW-R8ITG?@]SS$[ /&9LF$1>[,.(50= *@Y_Z-DU!C)TYZ[@"9EHBZTJA79KW6HE?SRRM" M,(]&>HS0:Q337\?J1I&N=((F]72UV5RCF%'N\P[C_"DB7TD+E[CGIU!E.&7% M2XJ=H2DA(1N<,?HJZSQ0N6:UJ40<1EZ$ZE,\'HZ]<$3\E=) -.E/N%1XJ5[9 MO8.ZXOKBX0Z;S93LY$N4[VX*DJ=[G''6HE7<368Z TM *PHSLFSTY?Z9_81[ MPZZ(&.M;=K"GX]%40 RFVE(9AQSH;&LFDR?/["D1VOE9*H&EVR3Z'8=7]-_O M.!G5=[:9Z:U5< )1Z(Q3.>9@>@-U0/)6>XZXBH(ZE?G=$>[\B'V'P;'&TI_G-L.)<68J6'IN/YP(:U:"K5>6 MQ4' X('':.,Z<+#>R#L>[5EK2C29 M"B!@4+%/LQA![0(N336RG7U$OZ7938P(^83VZG@SVU7>%G4 MT6:5T5I&Y/6A/06U(E/6SE-(@ S7<# =@,&TF1:.Z=:"3$ MT^KT1+C:LU+!OZO:+QZQD-O85D8\&@8Y'#:Q:5-4N7E8JUE>:<9BMK\F3@M9 M3!STJ!=U0!L0#%22X]AMSZA@)D1 1M01<7NF0O# @&H$& M-&),K9VVLJDABL1WUA.,:8R<"Z+L?&R;I[-WH61ZOF@YECE)Q5W?+;T3" @C M>=EW.^[Q.+&6W,_4?JN(#CW6="M1DUJ1K;,=W@W'U#Y[]#(3*WSF6Q"988]: MPEVH48>'KC;#SL>:O&QJ,<"O$ NE?C[CMK M?H:?,,,??3N9,DL"%/\?1C);UA0K>X*63_0M?/F&XW?\,4WRW1$WTF113Y#! M#N[E6SH)#NJU? *=_K+,G7GL:AZ!?Y\6TS"$9C%GP#\DE?0KWO/=]ZJ=?2T6 M-:$:K30KP<04*P.DB<\$;XJ8!5184T!GJG>N@U-5AD;'LQ;601OIY#KQ% @S M%?HAHTCK0CA%A;LX$8XSM$B%>=!X^6%\" M8?*=D3Y.H5YZ:@]WA<:R/>6H] M=H?"1HOSM.RR8\R52J"G%9K=XJ[4(#VMY3PEZB;1/STM!+T,"7855I^=9L\X MH9N_Q:]Y4QV9_>$XK8%MH4T!&QW1P#8@&^W,SM'?D"I+03327<[%CG)55IB, M[4I3?E@\%L[6E4X?V6B_M^\^K+Q/S0KJ$0P$LFFMPU Z?.J&HM7Y*OJ(]D>X M2R;(W[;OTX*?BL8"&33UNS"/=:?\'L:OU/MJ;\]Y3U5SW%W M9:M*M(S$95>V.V065JU^Y49CG"'K"\KP+J7Z7=,L^3K-LO0;:S\G09YR"A#^ M]SE!I34%ATPM9&5#C1BA:!X(0E;7/!.-!+%M;4DSR6#OG-Z&2G[7#B-4J/WW MJBD5[EZ*H$P_] 0'JER;4Y%P9K7Z%;8C^8TX"_>[3BQO&_8-5&//X58)Q&V MCTJK]1P!&NM7E^Q%BK'GT%L\@WT-&S3<1N^?W%XH9W5GEFEZ&@K\>/O,B$%N MS.CEAPJ9I2?0JPCA>/#]2!^>6@"2B(V043"!+&!H@_(<"S9/8L^"!3G<;>H+ M(&(8D.&?5A*>6_Y?$&H+:E>;(#V-5#S9'B2T8'H:?'@B"YRUXN\"\8,G@F]? MO=>KJ*PU8J#M4%DX!O46XF MW/0F %BA&66'W7**77F7T(G8-O+C5U'*D%8C@R90.8)=LS=2E.BQP^7DZ_& MUDO8 4@;D[E\>U8X46NLYIRC(Q^#QH^7?FJH#EJ3)P@R/N8+W=%K6&>%EZFX M2$<[^W$\?BJ-[JRP,!F5=/7#\_ !S5"]>A:+T8B0#4Q$C^Y=0:)MJ1Q"\O'3 M@D"RO+-]^E>[=?K'/Y\#G"!*WY\3\H:#:!-AL4=!/=;)EEE%^@ 1<=:78B 0 MEX$G?HZN8[QZ.'C;UK=2W"!4>ZDE#IOBS"*7!^ZWRCND,4"((!4>A % WW<]$QDI;D13RC9BFW] MPV\7W=9'*@CNB[UT8_WOE\>8A,6UW\$\1/>L"V@IF%*H:$(^%2TBA .!2$W+ M!5J<7HXI1TGX>GC$>8XS8E2(13EET?NV^I;0'>RB-ZGP,!PQ,;G>;3;I]_N8 M:L5I]A&%5/R34ZQTK+.S_Y6*54R9>Z(OH))D!0.G;KF+*3Y0?%\D(6&_HFBO M*QX)A)&Z+ 1F>EDD;V;_>]CWV/W[V;T2BD,?#0.Q85PM%WM13>^W[J-Z[(TEN$X=_)7&6^P>L=9$FUW^3W%%R6Z9,NNWW.ZR9IO6*'C[\_?T)OT?9QF33\N MN;I_UE%+34R/GS"KP1Q369DHZZ9I!CL[#M9S7DMJ@T$>T8ZB =F1B_D#O*+] MV'%K 9&^'RA+SS#)&452=0L'>?2.US@+Z'=H:Q88K%O#W2GW]>U5D1.FB%.V M?K575++33@-R=I^3@E YH<[QO4%OE _F!R5L-BL 9,RS(@\OV48A:ND*VK_ M9 2C8KI3 +]@)D[@\(I*%O26="^1 B[5K(E?XTI$ODD3DL91R&321US^[!,+ M,A ]RMHYKJ5&12W3[@AGV_P8)3PFI3[81HMO^>GUHJK;\Y&N8P8@6],G&8"B'2&)5VA,M"R3@II'MLO@85^5/QM]&+:1$, M)%T"!* &@/B;&"4ZCD?;N%P?DJ3DX95&H20,!:J(+,BP&P>J*\YV3 AGF.%C M?QE.CA@#C3%E>H *CC &: .D]U9H&N[5M MS<7A9YZ#;UII51T+YBD2%/$ES;'+P[@\!5H?]-' +HN\ @WYI>2Z]A43AGO5 M3'YT(3R!5?::V0#KR:MF1.*R*+0N@8MX@">0JT3TXT _I\/_X:LS&!F]!L(N M9, =V[E$D9.>HDNGKO;C*3T%TEJ[,8GD]!P71I6>Q)&BGD.N%O4G"C>%7(9C M'E_)6,R C /G+T@3ENLYEHSXB"+"UW/PS9C),$(8;C#4JTI%VQ-L@!_ M*$.O(7R]R9 M!7K(:K1+.B!+')V)WA>MGM'GS=F! YOTOT;U6)YM6Z( M);PE.\TRYB/FDO^A'5+U*+CZAK)P=)+#--O3%W:71!SL<%C$E!BU4! 9&*KB MX=.MOVBQI93QFA47!NXTR M'+ X5UDQJ<$ =ZG*_/SI#RC*J_7'N+M)1]-W"T 2KF.4: NQSO)3%\0=]U/N M"^-=Q7Q='(K!N_O._BECT(:3'2;5DSR+ K;!/ V^?J;"#7EZ_JPL2*6>X_8A MD13>%(\[[S?/_ZK19K"49 M[+!R.=W# R$%#F^++$JV);KYF1'^974<=]]Q%D0$2Z^B_4+^7:H!" UUOJ0Y M4]3IFYF0*)CEOMC\M+>([=_Y#UE*)C<9*'[I3-"V."M?F&%+:M,=O?UF1U>4 M>Y6= &O"T)-IV9N^?GG\Y.##KI4IU.=J2*7(?G#9SWJ'ZSQ,SM20>N[(.\'@W@]_4)IN(6/1.#1[-.LWS1K8WCS/;)WG?&0^%,\3.&D!XVNIPV-E^"^6(5$:-[4SF M LCZ&&^4M#LE9ID=)FLX;$PXW%S]U-RD1-Y34CG)83!T'F6W]=:I*%[+K)DQ4FG MS,]< M5%MM/E!:)8]4U9:V:+19 1"8GW!>JK=14'UJ];9)IGL; 64EN(F#G(S$(M"^ M1Y.2T4>B22=2>8X7W:O8,_QKY1G(R#C""6BA+_1#0<1B$F3LF+;.4PF :AR< M01##=&@XF["%"?FJ2HKU'$LV7'8JJ=?SV(()"4LA&'ONX)\023*QVF?S[$-" MQ^(7]!V3&6KT2/)R.C\J,YS*QTV<(]3Y#9%U4SQFT3S\;GE)'M<782)-N5<, M7G33S\4KB<((95';3&6T6<$@=Y:4-YS0$R[;>(O-(9T1SK;9D.)5D>\XUU&: MZ*3#W5DKZ'Y('@4WK+9P=E :H,1CG5\^25O[]*0OK+ M.-HF-7)E3Y+9')=V7DS1%#;$4OG%*UE4;MY5SG)_18S +?]1TQ(FE&9(*-R MC,4"P("DR*=\BC(ROCWZX3/.\]+&0"I>806SR7H.'<%UH6*)X[?Z MVCN7D%;]; +LQGHA:*NL.D]=+Q0V'6,$>ING@!N=M5#]\Q1@4^&S9^42JV.@ M,:!-+=4I;36QJZZ%)QB0)9*>C@)/:@,8.>74NF3W/LCOCB=84#GE3D>#'T2A M]6,K+;]J/'C=,=[J2;12_3U%B,V3:6A2@(R)TR^&^FWQU*%J=2VT9AA/':96 M2%@4^ 4RG.T8XQ&F'T\3EJWP8F,=\C2+> )\&!F2/$W]M4*/;3FRZC61U M!8MEHX%L7]M,13I\8OH9-)&3>O*$XX @4^'*%@QTMND;1'94V6'_896#WE', MV5M^@[+L0%]T%3F;S9V:-NBO_0/'(6OQ'86XMFZ^4(D]HFLR%HL9]7RX_>E&K&9!>@X M$4V.'?^-IJIDOKQ[D*T4D)Z.%>5+Y$,=K9YYEQ!.:)7*'W;1<'= MNUIKD X'!8!2?U1,. <@(,3RYM&6\Y;6Y'BU9X$?O# 5#EFYTC*W#F7Y4%+&%LC;,2<^%-C")A[R#%:"#<]+"F MSR7])]\4^50HL&LP$0I0'U&"JMK5+*V6$$[<20$\PH8J)F@859Q(7 M928YZU#B02D/O17,CE/82E:>(T8L MX#,*J^ MG2'PF)4 %#ZNHY'82WU'3S^CQW-3T&=KSPRT2?B8)MM'%LM7UELR MJX1\U*(+EPLH6*V^-R:6,!^6M+:!8-BB&WW";T46[!#!5]L,?,GDY[$ELI%":J"U+^HJ.8@&^KLP;EG$@?F//\AR5&RC2C++[G_1_1;FE%Y MF!!MJ)WM*NX"R*K'[C$BN?B85"/=;;L7V:(\"N%0EXG[:?S.]"I]D*39'&>@ M".1(A?]3-AK4]MD_Z6.MI"?]O(FYZ1W78I*R6"8KW+S->,OK-"ZXMB)GKH8S M(1W!&F5S+ST8\ M$ A#5=QCP4"(;_7UH7UG%=#8K. ,S)>,T@H3%M0/]&C8Y*0=OZ/LCN(HP9BU M 7V,]A1YH8K&E3.<\YV;=/\:)4AI :E2K#5,QV:EB8_E!0>[)(W3K2+38C1F MXCW\+]X'Z?.!,%O13?H8!_*MR(9.G6>0[M]0FXE<4<\5C+1T[\9Z8S/N* M@J]K=)!DCPY&3/S[M^3GG^C#HT+%<(C#Z-8<$XH&A2^C-V1B5/U/&B7YKY0N MF7^LMF++T:8:/GE1>$*?Y9@[*MH"<,%Y4,G=I2@+)D M54CSF,5C7$8[,H=(3;Q4IN'&X+%K61[]:#C?>47@;@=BEE##>PYW6A&31CM0 M!WP>OYXS%+!6)2R28I4\HQB3U>8QI>+B)RP#43Y^^KX265D8YH[DT9X9QCI) M4NR:I,5PDQ839[C:=-FZ4;CL9G>'S,-<9!JQ> PD%9_5==DFT>\X? @I@J)- MA!IC3VT.9"[_EG'P!N#,,E0%HH@-1>:F@=EV - "]YG@31$_1AN9X&(TU3GG MK@)$FO_4!_B3AD/+YSFLYU[:OJL]587!Y)Q8/GYJS;YCIB]5(Z8!/"1=>5*H M\)O,FWBO?3>"?H_*\8X5UF&0QNI;@C.RB]Y:Q"H56)/YOCT '](T_!;%L9 - MR^_*7+_FV&JD23_JC7&: EKN0?D>CX8Y;]DB5VU *"\G]!A8ZD%C=>R8LL#" M-T5E#*_Q)NVUT+O[GF]3=D[(3)9 MW,O[N$A?T!D[!A7QY6&^=5E?BW!43Y A+XX_(3;\2/W3D\@4(;LU\G2!I)Y@ M2D8_RZ'*$^)2=Y\Q"RMN$N:DX;V>HN#$T-]>)2E1.*WG:%'%V@[*!:M"6R%C MP3CO>IITI"[6I%&TD/%E0#7&X;4-6S&-.#0; M,DX_\$'(,Q2A2 M_SSMH'H\Q!:,^6/QG"!] M>18,^F.\,FS8,4_K6+1]/=9 M<.Z/G&Z7"S\+LOR1WRWRZV?Q.OLCS!ND[<^"(7\$>XOB ;-@RA^!WJ!TP2P8 M\D]@MZB,, O&_!'@9R^T, M^_9'Z)9489L&*/V*_O.C#+(CQ3_*?W8[ULW^2 M>5O)8A:$^"=]SUHYXPP: ':"BD9V*;+:&"C-\+H%C@A"WS^CG0*@_Y]@?^3Z MT/G+K..?X3+N"B]US.J4LN@E0^TG/%02!7S3REX0MJN<7^'@LVQO=.D5Z:Y7 MI 7IO-"UZ2O1WC@%X8C'.J?Z*0S'-P95V>;[/>Y*@4JVC\RM_11M=_EJ\YF4V)4.QT[D_CR=4B;O=$3]P7Z,IN>ABZL4\QW;6735/5>4Z7_"; MLYP2.?IEMTQ%7S)\-.PLZ*#S8NM1L, /^X94^.T,O*UQ/O*GB(N9F[HM0%>? MTSLFCW1;N,L#]M"CDH'0B\XR/;:@<;-4?$/2CX\HSOC M_##Y8]=GOE08-J836#5V'59'M7_)ERTWZ#:6?S'.K'"*G1]6 15XFBH!8E$9 M6B);0<;/#-=/XZ@\/VQ JGWJ-BUF,;9LX&,]/^P"K*KF-J=(26Y:/^[YX0-4 M$36WZ5!*TIB728 NO;AH15RWN5]J(:7K3S\_V"\%\Q831>8D(M!5%UUT%G&; M(+BT/7@2J7G)5+[FJEUS52Z[J#YNKBLBN\AR^H[BLL*F\/#/]J'-D7K)6+UFK M_&#KVKRWN*[16Q?0+IO@*208HZGGD]@(/;,#6I8MO,POZ/F2$!,,9TU#NV0% M7+("+ED!EZR 2U; )2L C&W96'$\/W1>4@,NJ0%&='))#;BD!IS*GLTL#^>' M%$@ARI?0?H^#V5T$_8".NOYQNIY#BBP%'6/K(A ?=+CILH'GH(,FCXR\]21F MZ'."BI ]!^LLO4^S/;JG.G 21$QSV["_V?@R)HA<@H(N04%G$(MBL7U%QU8A M /+QH$[@XLI?V'E>=UEC:6S=GGT2A[ED^+FX?$]&*.OTRNQG:RJM[1!]VEY) MGJ% AE#I<)?A%)J6.W2OUXA$ =^P/++":A78X-Y&]+K26WLJP+UU+MYD+[W) M%X^IBQS;9=O37WQ89WSDAD^S.#Q& K*IN[>U*BI"+IN=G9]=<#4L1 M]_S,[Z?CIR\3>V5X?*+_]\_6^EBCY[D4E#O&194P.$A82K#8W^0^\T.B(,HC(OJ.>Y MJ26J]J933EC&0&AL@V*ASI#8M5^NF;Z3#;X$N6[ MFX+DE/=E=]^#N&#!82S:D/Z/I?Y+4'W,2A,?Q$,2TE_+(A2OLS1@=TIOK=7. M<=^OK7V;):@7C72V[9LTHR\*96[T!>7E-Y0)UK+1WEK*;%[DGL5L\.#YK\H; MO8H]%/09NB<8J-Z4&5#0O%>P4:%71H0O=<>X)7D^SP-J:TYPU),,&5?FYG.A MT"_DDN(+Y;F92WU/]-+->8!O?6&$@I+GACXI*6C%K/,TR]1E]+L5]*_"L'2L MW>*W# <1'T@'7.T9_?Q>_SE.FKH8;2Y&FXO1YIBMGJ$%I$(,]Y91?L)"4RN^ M\I(^IBP_X5W3R-5FA8O%0]DYN^7C]-\Q%C!TR1D833T_F\A"M?14U"\G[(O! M!HH&=C'87*P4$RM=5L\F9!Q=K!,7Z\2<%\5,J+F8*[P&W)HJ[#BC;]::NM+Y MQ= R=^*>8I_7A^I+L]P]\Y4N)IN+R<:I/MJVWQ+BK?G:4V/+F>O-Q_"N\U @ MCN?:CK6,BQWB8H< *DC/VXKQ[-1KWS2)!Q8 4WW,0_)929R:5'BU$R MM&!K&[XD)(VCL"0YAG9IRQ?AP(M&Y)-&=/I6B]=*G";J[8[&N2WZ09K]W,71 MOJHNK&Z I9]WT4L]3Z:8B&-*&TU)A[K/K*@YG_(*R$;[AN^3TY^FY)NJ]VDP M"L)V[=B\>TR7 A83I#J;4U*Y:H:G=K0E7];1\VCPJLKF7$R"%Y.@F4E0I;M MQL_%#FAB$)(]/Z.2+VJYWG M&&QRI B([)*BX6XMJNV.E#YCT5 P&Z<_I;-@"T9#VK[>HBT<[S\([HWS:W3@ M#/,^S=89?H_2HENF4P*/9A*4\$BD5GI\+3%)P6Z1X7 M?\'KLR+%OE1D_D1_;2\^IC(Q\:;(LLY;VP1;LGL&XZVNYP_UUK:71S"6Y%>TD]IPF01NJ>8J]=EDP8?4:0@"Y;S_X*S_2U^ MS9MAGD#8KV_2>YRJLF-K>EWS;NTQWE7#$_"FHMCY&"6?)/M.TT%/(,M0[ M8QA&/*-I,U9&):X-SICWG WWBW5K7ZHGS*S9 7U8V6,U9$H_ 0?OF)>I1]:> MP"EGOHV__A$C@I\8#*O-9U(6@**AL'<5F)/63'Z!7WO"GO8GQ,SXS2M,W.-(@KS#7J+P*GG._<,R,>YK4$J22$DFW4%/'N7E/H M .K4S9Z@VSP? LD'.J!F_.B)Q5$D.*R[4U(*+O9LGSBDC#D*(G\ UO*CAX19 ML=/LT*77?P<.E3'CX6+>&AV8C#?D.M"!E'.=AZ1R'X@Y3Q-$/Y**H(.L4[OD M3PATR P%H9;1,KQC;JMWW'8/H5=UM>&9$9Y K^5"ZPR_4=&O:@E= MU^ <3*N _0MP8-7,B4>R?DIS/&!+/WD#GYPOC;26L23D!W!Z2J7 =6R8_^$% M5*HCNTE)3OKWSAOHK-20AC;';\@OP.&4GZ*845K"LV2OAL$Y"5LVU&/<=<4P MBR00@F VUQEHILZ; 53::0X+34WIQ1A5I)ID<0BGK;YX@H'N-BT*V!#O6C#2 MMUXT"T5V*\-%A%M63G$&R#BP0[CYT3 (5U!_]QQ6GE($E@AWK9@ Z"TPYNLN MKZ8@TD5R(\MF^7N1A@X\,7W M0C\1U.T8>>J-+\=PIDON)7/'RUB79+PS$'1>=R$F=JKG3EQ(6"QF[:W._DX.+*E[F543'!-)Y6;5440Y1#GV!8Z M4)7H%LUP+16*O*,JJ5 P?ISK/,AF=I#LW-91JO9=<1'RS-RNV6&U&7Q>5E+Z M&43"LTY>[SJ"[_9O<7K ^ GSMT 1, 4^>\X&['66A@75MU"6H20_\+E4BXP1 M(=$FHE?-LP0=(^#YTU.KFO[F=!B#VM-S?(PBMZ'H\E'01LY;!OY=+ R&(!CP M42$H^GDN?;]F/%+F!C::/;$$+F=O8RE<.G;B/4GYT'A+LJ%N_;NV]U,S";; M5YN2UCA[WJ$,?RI8S:+5AO]!5D5.DVB@OZZ0@RT?M"!?>,E_]IC.U\5C^.B7]V34DXK(I@7;';O^7SB#>2 MY 38DBPQFDMQ%07'2IG+<( CL3%@";:K.+0GGD[G$@OCR0M#HP$9.=M0@&0- MV&_$,TZB-&/Q$(T]@/T!B.-W8S9$#,KGZE8VL)U>;&/Y@!R#,!P8&_4HRG;B M@"> /*E38Y2TM?#O2![MF69YCZ*,AT&1U::T'?,)&67(25=(I]\5>^8]9:SL MSQ!8V775N8.^FJ]5XX(GBIMM$OV.PX>0G@Q5*%'CJE.")<^(F?)7*FH?9$5! M9ZO^X5D::NZ-W789G'M7[,8_4AP&#' 3R,L.)2/<0[_D[.B4__8EV'N)LS=XF&:G ?T>'/LW5+Q% M$FT#1@-4U^5OOJ5J7QE[ ZHX?QMI6#?XC9(B2K95K#(%Y!IOT@QWPH;NON<9 MHA(#)8;4*@V]_U1CT3[GT,XC/F6/B $SH\IM?Q*MQ'241R-OD= M5_%*(JC_!!+L#QD%E#XBFTAXHD>UA_;DQ$NH90?=7(GJ2*_IB6\BH147YLE^ MPKF:E+OP>W)D"_.S^KOAK?X)^MEKF!F/A;C:LU(9OY>[2GB*1UK4H K+P<.$ M5?<=!P43ZUXRE)2^GQ%__#-T\C!Z"\@K/>V4/%(8 MMT@(YU\\AU.A>#-JWV:5#L[C1'DJB*C>GM>@\WH?19 7&1UZLT/9MG.^OYP) MD#UQH(+M;Q MWPNP[7&(U&R_Z#Y=>TP6L@3MSDAW-9$,[0A"2 PGN[, CT7R MH1&X,\)A6OP1Q@TA.,>LY#+Q8*!-C',+Z@&.N:/ _*+@;./1SK8OU$<&F^Z/ M<8CI@9%#@N'^J(ES.'3&B-Z>3&8XK%(CMS<(,:N8 (-\3RC4:K^.6T^50JV5 M.Z_DDR:^)$IU='Q#5,.GOKX*_5%P=>6C(?F$I6JAJ4-7MH#;XI C!5 BT0B& M^NV?%=1@ >6L%>ROK@\S50=062V:>ZKU1=NDC,T)#IQA4!FV?%KY7Q4BPM^H M2%M5&^8[$VYHC;Q*>%@ \0)?&\@\B9E0,2X=.NFON!4:EKM/:>>Z/_]T^*Q0F1W'Z??"*@GBM7+I!NCJ'Z/*$JN#Y\)"S]K+&M7E+[>I>W" M/ PXX(6Q^SU#^E6SZ5WJ?] 9N<99E(8\,141?(O+_S8<[NY[L&/)IT_TU.\V M&QP(7PX;E'N"5 E(K%HC,:"B,G.7O*154*0^3<6'6!T11NZI(I$$4HQP9>HZ MS;+T&RN,L*):QGL:O[,2I%05H3PDPZ$X8LDG)!@REUM,'\ @XC]"_QWCZJ7K MVHF\"6< RW:$%.D)4D]D.UD:8!QRU]DS8KF?_J?''<=V1!AYPF\56UYM&/,A M(^[C*2X,N8]@UC%MTO"I&!^2R!94/".^M)X-$TT@\EN.[] M*V?WZP"!)Z_IV,\#(06=0YERO]"#WR1AR'L$ENJ>'"&ZRN## M+8^[RZ5?K--\Y= X+837LO(G53IP599$91/X=T_Q9OH8- AK)O1C.,\4?DXW M;0'S#H6P_CU42.C2AS^QO"<@HZ&$:C3F-3]9:$4SNWG3_(GP/4U"J'6052+0 M7,=J*_A0X!/(XU0>JS* ^(HW0RKJ6M*J@GP1X=UJUAG>1\6^0<1?SUI&Z:A@ M5%PI,BKC$#Z-T%^@='";%J_Y MIHCK[DVMUJ;9'AJXGO%&0, MJM[7#9O:]HO=SNXUHCRUFIA8#:3-3BYR]G25AR[%1-WFJ3@[#[7XN=,]6( M^+T;XZ:QPY3ATA*D_.QK-(HAS=0Y$0%=0E(:X$R?+2D[;@Q.8YJIF'#+EY8L@M2BP+FGJ/$KV<\_-Y/D<5OZV:.3]A@K,FRWE8 ME^OG7^Q0L%A"G27.,/!B7=XF "Q[":@D;TBUL6,[$4+N"-[ MBX!D\;4P7P#:22J,.V8G*5I@XN14@PCIWHX-)SGL<&T2Z2P\!*.I+M\/\Q!; MV0-CO ((,!5QLUH Y7.=@687!BN$T&H)YSQ?%8:IY/6*B2 (4Q91J:5*R41( MB?WS1$<*,;/4K[MKS#Q'J*,0E7/\DL-*#+(X1R'LTN%3U_&8(P)Q+%S-\3/. MGX)QZ*'R 1@-G_@HS8,"Q^=C/'?B/=O%[HWW;37?774\PV@\(?D83@;&%_1J MXFP_X^R8#<+EA">LG^>CV J+,"L MPK3,@;99=F(A:*9 J[$8-,\/P2(/@Q KRYN@7 P0\&815(; &RTV\3VP#GP: M4[CM$LZKP@J"F80G)!^_ #,Z)[9E1XQY%V:\H+IA'SZ#] MZRW.413_ J$^H,#= ;RQ?/WNT$LL"J@#'ZOK'\:K!N"=+SB;\:??&FB4URV? MA;_V"1]=$\>_SMR+=;1W+:,NP0YG1Z+DA\\"J5*.-SM69;_L&UKU7&U*5&I_ M#:)TR>M+=T7,H7WPF3UMV8&*E*.O2@D2@@ YWAN+&RVI6/1*MN-('1=1ZZUD MQ2*LMAG:^U,9V1;\\7C>6*V9X4GM36NPXSC]QKPU A=6N\80"[999PNYB0U@ M'WJ(55,&N-]H__:K=]P;ZW[K@ZNM MWGM_L/O-#RZN>O/]P>XW+[B6:@#&$SQXZI]Q$E&I!;_FS4O/PRS!//&BC( N M&WWTL;V+#BCV^4/"NDZRZ*W/"2KC8'%8A[\>[2%8YA(9I'' R(AZE*>^"HOOBIV+_BK Y/714YR5'"@DZI G;3[JZ-N*@G MPF%K7_BEQ>'5.\[0MH'H-HH+UOUN")B(24B6&,V]1B0*O&&-$R"&!V\PK[R(@YW^[ Z!HJG)K!BENZK02''4BH M4EW6O8F"ZE,67RB6(X=SZS[!Y0Q/WH1I4<".F"5 /^&\R)(5SUL9%FN$'G%T0 #V[Z\A6+U)@(!1W41#T!1+ )4 M<<$,X92O /%=GC>\%\*K##KP417_-'CIH#_]_N'9_U:X_N&D7E9= B*E%N65@9=.CH)39\IL=T=MSU?^\L4&A; MSW*9WSX+U!H\A[.C6+\'=T6GU%APOT%]]KLD(5RM %;?LO][1027'__GO]%? M_CMZ>XN23F@E,?!_OW'+S0M?*"RRJG11 M0D^2D>Q__3'/"KH4HBNQ4-K_^N,&Q3QWG4]^13&+X*0S\6OMYQ5#/4O]KQ)/ MLRP-!K-!QX4N1FT=YMP&S3XQA3]!6_Q3C2/UF(F!C1+F&,IGH*('!L4SWG(W M2Q)R"UWUYUT<[2ON>WV@UP4G!7[A'AK\/;^.>66Q$A+D(<"._X&F/^M .TCHMSW M'VG,',7D<=V'2/(E2$!:0VPGO8^+%$.IC3W2;+,-D1XUM4N]K/QPLG6,@"H, M@/E#6&@0SO.8ZE@QBO;-952,@,)TM'>Q#>[LT^KX'G M1Q!8F/]]1[_/@N*5D^E<0-0A:/2:W$:LW4<2-N%H5]4JW?=-/Q;>;9JC4O8T M$K%P:3"/J5YJL*XOUMP0NVD>H>0&9TS>?\GH@_N)0DL&DH7L:Y L;EW5_UUG M4=#PM\&'8,Y&+_OQP[M' 9?.!^.0Q;[2%GH+7U0Z=Z"%\HD(I;,TL"J'><1>I+Z7[P/ MTN<#83+_3?H8#U0^Z=<@>0 5NUB]:ZH"K#;,.Y ?F&[WD/Q/&B7YK_2;(FOY MM='8(9AOY:PEV(,"S@\XH1)2_%2\TK,8G9GL6Y!']I"$!9.'J:Q89D VAH4^ M4/IQ4,%C46'T)QZC][%_A;*3LO!ZK9??%DPU*,,9>>>P#2\3WN!@BL7 <"J55KDM1;1U;AZ'X.!2,]OS;O:E+":C_<("=R0F!Q*;P .608TZR*$WJ(< MQ3UKHWP0&'#U!AUAXX5.FL;U893$0:Z^H:P-M.3NV;(MPR II@ZE95F9C:5H MN1_LGD*-0M>.B+J$==F2$ ]U3>G7(!^0UI;2XP!C4\O@:W^4FCJ?N']*PT]! M'LXM^?DG*A7G87_OHX]!;KZ1",KVG:UHL<$W,2(DVD1!C]8L)OC#G+OB_M4V MP_SK_G$JAX \VK;:/5.),I=+;(I0CX%I@N"- M*3L!A -KJ_1K?TYNZ@8EJ-61CJK.6!PH2>N3_A;56R2=]U# M24BU+_(IS?\/YU=A^D85K'4:1\%A%#YVS,PA"P$3,\:*W* XYF?,C!JMI6OX M.9BS-?2G261)R9<@!:V[9!LEF+Y)8>4 Z(,B_1HD,.8A4+VH%>MI@(-:=#V* MZJNG'N7/1;Q&R=A#%;+XGT=<&A>?V.)M<*9N'$S1N);BJ- VRI@O13>JB0Z#?C2#_;EU=YM- M^OT^IA)&FGU$88BSP;,A_1XDL=ZG&8ZV2:F_4*&**=A5#FWX&Y7?QT^\S0R0 M(-\567J+DY2G(N"PQRH'9VDP$B2(5%QN.AY6JFF3JR+^SA^]]2.*WU%62V=< M0]K3;0QLU+I1((^-WR7*XFOB^H.\V?<\&5TOV+4A0 MAK%U$29M"NH5J3*99)%XLM'3O^Z3Z*R=Y[DR0J"X+=9*1LD7YN./T!UFOF\X MV"5IG&X/0^?<\'.09-GD&'::LZR2IBU+&1A3PV0X&*+#^POS8V?)593=%G2K M(W^D_'N0Q];JW)JK(]'4S68!5M2?<\KPF8VSE"2OBGR79IQ/#C*"M.- GF\G M$VC$+,7?@6.,QT38F ;8/$7DZWV&<>T/8J__*9$]I_TNT$>8Q>J^HN KA;'# M X:?^B.TW_'J?$E9[)>=P#9C&I4D&-9T-,CK7^8Q/N.@R,HHLL<4#01YY1"G M0)5U-@A]:_;HO_\?4$L#!!0 ( #&!_EC@V) F < #XH / 8V5C M;RUE>#,Q7S$N:'1M[5K;>H1 KY483VRQ$CZL-/WKZTJZJ3)#(9M@_Z&J MVKH@31C5LBB4F0[%=_5R]'546ZCYNE/;F@5;#_O=2V5&E3+9C-1T%MH7$[O, MO/H?ZYA85Y#+\ ::QO5:26E-8!$:#OIU&"5#DLI1;"MEI?1J^%95Y,5_:"'> MV$J:M>#$AF KR 9:ADQJ-35#367@,;C[>IC%3 7*?"US&M:.LH63]6AO['<. MA[$6J@BS8:E"ED.2# _RS9/!M_W1N,=]GX][-?[#0]%3'W.*CGV\/\?<:NN& M3_KQW^ACS?AJ.5,3%42"U6;>1\YX<';?L'=/.H#E35(JK)>5-4',2KTNTDGM_C_QI##RD._[;.-^ (42PXE?*HU/.^V?LF# C M\:MT$VG(9Z^7FE;B11ZXY:S?/_NTB#G$!)_&0:\ZXJTM"O&3)NFMZ8@\ F@% M]\@PO,L+T71E"N@89A?=?UY\_W3-P1G/97C1O3P_?[IOX(ZWOOT_Q$5X]?*UN#)SY:RI MH$MJ\=*ZNCMZ=/ -!Y]U3_XM/=P*!U8K<6WL0E,QI4[RLTO>+2R4&1L$=Y3* M"&E6HC'!-01S92!V,;M=B@I/3L'=I>2U[82M5"2#*'=+P%!.WDNW8I%*7E-D MB8U.CW<%C,&0FA/;FD9RY?*F@IA!=UB"^D' 1?E,^(9_;/LOR%&KA"=0*8]U MQU$5"Q5FF*"OP5(\.NNM89HM,,TYNA5BLMIUPR-V;F+G_!W8(5$J@^APH+?1 MZ X$$>SVVE7IL323?E3F5PW!70BXCNN[P MBI<[[/>,-<:@UELPM7'T>T/# MV$*QX@Y+-!H"0)!%F.-P/MJ32S\3I;8+OX:7HZGRP7$:D_PRV0TK.SLH\6MC M;EG[")2;0+GHGKR]X=5OGBS/^H/O1[[%0IL">57:5"U%A[\2TE$,+4*E)IHX M!(* IXE6?L;B+%:!D9B5^+E0/M?6-^C'XSNK4XQK9W,J\-J+9PAI0>X#$1*<">\L$=K0[^+H"\6;/#WY@3QL@.-C/K@?%1U.5;EL_/%= M.&=,"!%N1TI9R#8."L 0<^4C[T"*3-3#!=Z6L799SY&6$3)M&MJ&O=,R(C (J)J2TNEL-X*\)L2!BAOY4W,EWCY!<0W*R#\FC:>06,H\G MH*,!"E#/5<&XXRV)9*:5'ICE\HK!*%VQ!@:@JN1$:156G"T/#CQ<%T7LH2,(S:?J M:V*;<+<)Q]"VW$@3EY;E_66\F*R+UKB<*+D"]HQ8^2-\[H-/ 2I+@;D=8-X7 MME5.;#D,H_=@,$Z9-L\;QW'4^1R:_DCG!.+977U*0!+L MLB?>VHZ- <5=+6]X3;.Q[#39-9-^D\Z9ER*$J8B$'5W2DND*>]=KTNT6=T^^ M\^%>>B=NOU"07O[I+4<\;2K6 .]LV8+):Q=B6^)@C+Q'/K]5Y&UMDZCT@G5^ MDT/C"^BL*A4"T;O(>6*1IEF@4+ P:GD&)((+/7,M?G/!N5Y ]$>C,(&X5AH3 MSVG]Z>/>XIB]Q0N-$@96Q%-_C,][O%P1XMSFOTV-OR!YS0DME30QI<5B+)Z+ MK0\AW@L];3F>]L4'^$46Z.AI0R]W(ZVMX= ':$&IU4EIU2.G^J:"[^&F.)N6 MV@^>USRFS&.K_Q?(C*7#$UL7,)JJ2-[ ([/PUJ;?[";]7?7A@[OT2=$=@Q //\F/-Z];'Y_C= M/V[LVI';C^X\-'^#AZ7AC[M[2A] M_(=RM];,^\I$+L.U="L$J6(S\ZA[T(=J^*07BJ2F%]R^OO;:0(S#07\M8%HV M 1U>#^//C%\<&'+.*1]E7AL/!'.TN7J0PM6]K!$:/E]YB)L(1T#^KGCW?._& M5\4;UPX>R+>?EPSWQO.V;CU*[)J1*;[8^V;;6V>S#6_%8"1"DB7J MP:'4"[GRD9C&/;[]]_RK<2_>&_P_4$L#!!0 ( #&!_ECI$L3#,Q7S(N:'1M[5K;D2SP6XR#"IJ>7_T_.Q]TS\:]] B!7BLQGMAB)7Q8:?KOUY5T M4V6&0C;!_DM5M75!FC"J95$H,QV*_]3+T==1;:'FZTYM:Q9L/>QW+Y495NUDM*:P"(T'/3K,$J&))6CV%;*2NG5 M\%=5D1<_T4*\L94T:\&)#<%6D VT#)G4:FJ&FLK 8W#W]3"+F0J4^5KF-*P= M90LGZ]'>V.\<#F,M5!%FPU*%+(#;_NC<8_[/A_W:OR'AZ*G/N84 M'?MX?XZYU=8-G_3CO]''FO'5^>= X#R#W,K%^2 M"ZI4N0S*&F%+\7*FJ!0_*"--KJ06KTNTDGM_C_QE##RD.WYNG&_ $")8\9;R MZ)3S_AD[)LQ(O)5N(@WY[/52TTJ\R .WG/7[GQ@QAYC@TSCH54?\3 B/^-'. MI/'>FH[((X96\) ,P[L<$:U7IH":87;1_??%=T_7-)SQ=(87W!&O1)OB+.2 -!^L*X2@W[V2UR' M5R]?BRLS5\Z:"KJP%%]:5W='CPZ^X>"S[LG_I(=;X2_=BD4J>4V1*#8Z/=X5, 9#:LYM:R;)EV_ M($>M$IY I;Q&H8.HBH4*,TS0UR J'IWUUC#-%ICF'-T*,5GMNN$1.S>Q<_X. M[) H-SEP&XT.@ -Q-+N==F5*+-V40I7)=5- )R*^X_H.T*)XN<-^SUAC#&J] M!5,;1[\W-(PM%"ONL$2C(0 $680Y#N>C/;GT,U%JN_!K>#F:*A\<9S+)+Y/= ML+*S@Q*_-N:6M8] N0F4B^[)KS>\^LV3Y5E_\-W(MUAH4R"O2IL*INCP5T(Z MBJ%%J-1$$X= $/ TTUL3@5>>_$, M(2T(&$EQNUKF2,53BN7(FT9#8G NL\'E,SJ-70>717I*CXK+*Y.PQ?H%<\4. MY!($V):C!RIO#%1B()[G/A AP9GPSA*A#?TNCKY0O,G3D^_)PP8X/N:#^U'1 MX525R\8?WX5SQH00X7:DE(5LXZ ##%7/O(.I,A$/5S@;1EKE_4<:1DATZ:A M;=@[+2-RHP)[P19OM2IDB(9.O"J4=(HGH%*RC#QL6%/C.8'%%>9CMHLL93W! M(.S[8Z<:=93*&RV97#&M:,0V$:)'2JN[U0#^FA +(F;H3\6=?/<(R34D)_N0 M/)I&;B'S> (Z&J ]5P5C#N)+8EDII4>F.7RBL$H7;$&!J"JY$1I%5:<+0\- MR\LD8BC"8[,U/E00)$)?MA.J&U<#GCYF]SRWKH@&Q$)M2@9)6P.E:*&:X<\B M*$(3$K%,5 U.?<3BO5C,3T^NYE(WD4,X4%26O%F?P\7^0 VTS=9'D&)Z/%P7 M1>RA(PC-I^IK8IMPMPG'T+;<2!.7EN7]9;R8K(O6N)PHN0+VC%CY(WSN@T\! M*DN!N1U@WA>V54YL.0RC]V P3IDVSQO'<=S)3X?45M8'-/ !&)3Y')I^3^<$ MXME=?4I $NRR)][:CHT!Q5TM;WA-L['L--DUDWZ3SIF7(H2IB(0=7=*2Z0I[ MUVO2[19W3[[SX5YZ)VZ_4)!>_N4M1SQM*M8 [VS9@LEK%V);XF",O$<^OU7D M;6V3J/2"=7Z30^,+Z*PJ%0+1N\AY8I&F6:!0L#!J>08D@@L]Z,P@;A6&A./:OWIX][BF+W%"XT2!E;$@W^,SWN\7!'BW.:_38V_('G-"2V5 M-#&EQ6(LGHNM#R'>"SUM.9[VQ0?X11;HZ&E#+WDZ< M6HRKKF4MJFIM5X36Q&#N_1AT1V#$ \_R M8\WKUO?G^.D_;NS:D=OO[CPT?X:'I=R::;E"20YM2VSKD^:+?K?_=-3*(RQ: MUIZ&/NWM*'W_AW*WULS[RD0NP[5T*P2I8C/SJ'O0AVKXI!>*I*87W+Z^]N9 MC,-!?RU@6C8!'5X/X\^,7QP8&X\4H]'F D**6/>R1G3XB.4A[B,< M@?J[0M[SO?UOBS?N'SR<_@>H1Z*'QO4H>?]CCCKGUWLS9POC.5:>L\7QJ:4&5O0 M6@%,WKE/5FI:9FE/@XJ3U8;5,; M-Q#^W/R*;9AD8,9GW]F&A#N7&=>8EDX')]C,I!_ED\ZG1B==)!G;_?5=W8L) M+@[T!3PI8<#FI-6S+\_>2JM>:C-Q\@)Z*2,4OZ%GN17L9/C!Z[2;0:]5/J) MJY+H315=@;$KP7YXF1$]XS($,K?J>Y[E2ELB;9032KF0C(M5..$9,W#!%G"I,B)KP:FR5F4H:]G2>D3PF0P%2ZS3X9;7 M:A8IM\PS.8E9F&OF+33)HPW=7U2'NA:-/'6 FEPSV_^(D>R^/A,N53;J%,J[7?#_0X:-^G=KO3 M,1K ]&Z\'@PO)^=GYX/^Y'QT >^N+L=7_8L)3$9_/P3_F/1=^A^\A:OFN#EH MPG@X*&(0= []QC/QOC^&_NGHW61X^@RIKPD_]H]@= :3GX![[R%1NL#_5.(#DY11^&4N&73\!D:^W05B(.$"A]?6C%D\U]QR](A("L-E MG!(Y8Z@^R[@QSG+\=9*46 8ITPSMO656Z<;:J@:<-V"B*(6?!"-&R08,4LX2 MQ$9=EE\S&"4)C]%$1') E5\-P#'+$_PGGVLSQ],%6 4W9<5MI&^BLJHX5PA5 MN45G/I>N9%PB5NACHJ=$,N.-EH*MH!\7$7>)V' +G,B4F6(P6\%'J188((R M"\>4";01 &E#K]M\TSU^51^4;LEM3_FC MKS'C]X.#[R88SRJQD[G +(^17>'R:YUSFGV:<\U:0\)=J4+UQM'5<--$",!E3'.L4SB1(W^F4:Q*N"0R=N,(2'D![5XDE)J+ MDFV5,UWH-!OOOR.R&G&UIBQ(=57#15Q1 VSI3#&;=C:?<*/]]\3=NYUM(0YV M[.5C^?67#JEH3LE4L%ISU1DZU:Y11$O=K"?(2LTMHBWQY2^1NW[3?Q55\DB+ M(+EAH6$YP:QC98>*X+I&ON8&>Q7![2JLI2LAE*)KSPOLP$=HC$G+TA*F9?4F M7M7;%CS<&:\%FN9--2,?P^+3DN MVN4'I/PVOENF=>N$4#/_'\'#K5Y[1UQ]78SEO.MU\*)'Z["K;+ MS2I)_M>;U=.YSH9M=GTYOMH"[KE1_GQO71]5:BJ4>GI"?[5WK MS8UKNBY?!1EE72()'F9#(A9D98KZU&NYF^^3%[U6<6?^)U!+ P04 " Q M@?Y8+R88"+4$ %P #P &-E8V\M97@S,E\R+FAT;>U8;4\;.1#^?/T5 M<9CCWNIR^3A"^BEG,7X%WI..,D/AQ^\;J?9Z;7*CRC0JB1Z4QVO MP+J5Y+^]S)B9"14 FSO]J\AR;1Q3+LQ9' LU"^!MO@Q?%K"QN*P75;.>TWG@ M-_>$"C.AO)2+6>JJ@:E>>E;\0QA3;6)N/!Q!I%Y>@R1:.1+A0=O/75@:4D*& MQ5S",B%7P41DW,(I7\"YSIBJ!:?:.9VAK.-+YS$I9BJ0/'&D@Y;7:A:I<-RS M.8MXD!ON+0S+PPW=7U6'NA8B=FF0".=%*,D5*7G]JKWOA[T6K3WLM7+\P0@5 MD;I/%PW%>-/'2$MM@E=^\17>E\?#92JFPD&95FN_O]'C=N3D^&30GYR,3N'LXGQ\T3^=P&3TWT/PW:0_IO_MMW#1'#<'31@/!T4, MVMT]O_%$O.^/H7\T.IL,CYX@]37A!_X^C(YA\L<0QOWSW_NGP[$W^O#G\"_H M#R8TT_']!ZX(-U7ZAPG*B0+\H'CDA%:P$"X%EW)X/V<&B9(K..=TB().8# < MC&"H+H71*L/53,) F[P)V[3B]:MEQV]'X4!G.5.K\F,<[@#"'FN30=OWWD.B M38'_J<0'KF(>P[NYXM#U&QCYSBXP"XF0.+RV9LRCN1%.H$=,Q3!<1BE3,X[J MLTQ82Y;C-TG&S'%(N>%H[S6S2C?65C7@I %GG$QXIQ',6JT:,$@%3^!8**8B M@>Z-DD1$*()@A%6YU@ <"VU*WRCW(MV&WN=;M;90H*Y$"YP-MMOMD]V*KO2M?D;L_Z_9\QZ;?; M.[],,)Y5;B=SB8D>(;N24FR==H9_F@O#*=V#[FZ9"5F1\"&1]DS3G31U2IJ$PK*1L2+V-,N$PMTDRAU?<\@$ M52M4;XFN!DTS*0&7<4-[&2=RY,\VBE7)>H\C8"P*:-I(*#67)=LZYZ;0:3?V M/Q%9C5"Y*6M27=APD="Q!;XD4^RFGDFGI%M)1F/NX0;8F;OT3>]9O^5EC)(RV2Y98'EN<,LXZ7 M32J"FQKY4EAL5Z1PJZ"6KH10*EY[7F"W?83&F+1<7,*TG-G$J]K;@H<%6N%- M#67*B_I,(R8K/A ,L-UBUS2U=S+D1HM1?P8'?,WI/QM?+=L M:_.2<*U#?J3P_EQ!? [@#P9P\U9*Q\W84968K>HKZM>BBG^I"#V?-_\3+[_W M.G2$C ?8*^$UI^Z5-ORF-\U(,FOI37/&/:5C7@.@R9\]>2:2+[T8+[?%C99. ME'FFPEC8'(^J@&;7%\RK*G[3P^C?O9NFZUI6D%%6 M+I9@-0R87+"5+8I5KT7OUXJWBY?M?4$L#!!0 ( #&!_EB\CA>O6@< M . ' 1 :6UG-3@U.3$X-S1?,"YJ<&>=T7DXU L7!_#?F&%F&&IL(;(, M$2)C'=S&DGV9!HDLUYXAR\R4I:(7I1+)&$*+E"%BW.QT6^S[M3.-[%N,;"5$ MYN4^[_+/_>.^[_?\>4!FB(#HF)0>&,GI=)V37NRJK[D6*A7,+'Q$1%9,[+J]P M0E%#4TM;!Z-K?,;$U,SX9SC>2?G"]X^OGX7_0D!Y,M7PL(C(J_&W;P5 M?_O.W01**C4M_6%&9M;S%[FTO/R7!86E9>45E575-;7U#8U-S2VM;>U]_0.# M0\.,C\S)J>F9V;GYSPN+:^M?OVU\W]S:_G'@ @%@T+_SER[DOHL# @%#H =?NM5[AK*(3TPZ;GX2M) -]4U M<->M9RBH(#"B=W[E"_Z'7_67:*MLL5VSOJZCS_?4HHZ:71O@'RW=?]TX(%B#%2/E+B'B M^6 GH4#UWK=6OXC'N!J1@GJ^\23GGNN8_ A2YPC#N(K8T?KI33;9U::$@9U$ M9>^83XUZZ(:C$#>A6T/;'D>(4@B? M5&:-CME-=Q\GQA$_D*DL:]OQ8E.07Y">46S]:+OF].&9*PS=Y!:9\GKR8%IN M_S<^O]1+-877<:M[3_2,!3HB%D.MN;78P+A9R:2]_PUD^9ZM'P>P&TBI6)6\75=P:>%;* M(Y-,09,2QL> 3?I'1<6UH2G7%?OHQ44>)8)*L)^Y9Z+OZ!^ 4*/[=><>CXQ< MI)LK0'SKH("U?CRLM^;B6/UFZ$NY@M.=%^?"SD;O5%G_Y,+JLLIQM\6$L_.; M'Z83PB\[B,I2*>J?0(RS.3 3RRC#=ANF7#%/2^VQ][HCAGK&I/&P$\U]X\8] MPSAW[36!NO1:2&@ T]S?"PV):!!X71N;_W+!_>Y$L9<-N;XRG%RY\$&M?:PH M7W37]-"T)4UGO:#!L]EVMU2_=,I^@@TDV+F.HF"<#18/=)NW9ZY.8VG7= .8 M9,;/BI#BKLK1L9 ,K6F6\YCN6#7Y9&$WR"T-JE75W^F<>[RCD=7) MSG>:GA;#NV>SJA2OV)'"_*DTKB7Z5??4X@7F;$%U/YT24<I0:+-TW\V#4[;:P7% ?,C![/=A-%ALH<7.H#'5UJGC2&:BL_$A")+1! M*(^W_3%]LEV\RN9"B]+J3F/ZA>SXXI.(-=IHKI?\W4>06Q.G-D2:@K/Y_5E% M*M20R1UOE3/7WEM_ZZZZ,*F)BUMM"^TC7$V)@;ZJ5@QRI@JV)Q2.D4+/U M7=; 91R2P%Q^(C%:W.F3=G1:&8P*ASC\:$[RIB^L^-Z 48[/A"E&&2X%=BWO M\9D?/]YQ'H_\7':&!!TX=D/:B*IH:&K;Q4D3U:JHD6_ZE?\CSEOX'@%MHYTA MFY'3:J >D^T>6+AU+:\C+P+]!X9:1%G.*%@$'\-:.YZ.67V%ZP^V8^%KM/ND MVUO*+D5NBL^]A=)L+)H,C<");MNY'F;*;&"5:DVQD*>*7++K3J[6!;0VNNW/ ME6]OR-7\EA"6.95E%C6O#X@$A;0BW4R$&I;<5J)II QA-L \2G^>-CM".%IX M.I+ZU&%GPJOP4]O+S&)GVANV4X^BC$3Y_:+H.[)#3[[ M]'>/'%PZ/D\2?J\Y&G"J>_G[2R^SX12<^B"J^EM@^C82D(M8=R M5J?TO5G)M.!>&_Q7/ONL^XM[$HKF=)/Z;L@:9<8W"_WA:68WT0TA(->HI.Q# M#'-D4$L! A0#% @ ,8'^6.#8D "8!P /B@ \ M ( !MA8# &-E8V\M97@S,5\Q+FAT;5!+ 0(4 Q0 ( #&!_ECI$L3< MH@< %TH / " 7L> P!C96-O+65X,S%?,BYH=&U02P$" M% ,4 " Q@?Y8;\_J7+D$ Z%P #P @ %*)@, 8V5C M;RUE>#,R7S$N:'1M4$L! A0#% @ ,8'^6"\F& BU! !< \ M ( !,"L# &-E8V\M97@S,E\R+FAT;5!+ 0(4 Q0 ( #&!_EB\ MCA>O6@< . ' 1 " 1(P P!I;6 XML 85 ceco-20240630_htm.xml IDEA: XBRL DOCUMENT 0000003197 ceco:KemcoSystemsCoLlcMember 2024-01-01 2024-06-30 0000003197 us-gaap:CommonStockMember 2024-06-30 0000003197 us-gaap:AdditionalPaidInCapitalMember 2023-04-01 2023-06-30 0000003197 us-gaap:RetainedEarningsMember 2022-12-31 0000003197 us-gaap:OperatingSegmentsMember ceco:EngineeredSystemsMember 2023-04-01 2023-06-30 0000003197 srt:MinimumMember ceco:CreditAgreementMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2024-01-01 2024-06-30 0000003197 us-gaap:OperatingSegmentsMember 2024-01-01 2024-06-30 0000003197 us-gaap:PensionPlansDefinedBenefitMember 2024-04-01 2024-06-30 0000003197 us-gaap:StandbyLettersOfCreditMember 2024-06-30 0000003197 us-gaap:OperatingSegmentsMember us-gaap:IntersubsegmentEliminationsMember 2023-01-01 2023-06-30 0000003197 ceco:EffoxFlextorMadderMember ceco:CreditAgreementMember 2022-03-07 0000003197 us-gaap:NoncontrollingInterestMember 2023-06-30 0000003197 ceco:SeniorDebtMember 2023-12-31 0000003197 ceco:EngineeredSystemsMember 2024-04-01 2024-06-30 0000003197 ceco:TranscendSolutionMember us-gaap:CustomerListsMember 2024-06-30 0000003197 us-gaap:DomesticCountryMember 2024-01-01 2024-06-30 0000003197 us-gaap:CorporateAndOtherMember 2024-06-30 0000003197 us-gaap:NoncontrollingInterestMember 2024-06-30 0000003197 us-gaap:CommonStockMember 2024-03-31 0000003197 ceco:BankGuaranteesMember 2023-03-31 0000003197 us-gaap:IntersegmentEliminationMember ceco:IndustrialProcessSolutionsMember 2023-01-01 2023-06-30 0000003197 ceco:IndustrialProcessSolutionsMember 2023-04-01 2023-06-30 0000003197 ceco:SeniorDebtMember 2024-06-30 0000003197 ceco:GeneralRubberLlcMember 2024-01-01 2024-06-30 0000003197 us-gaap:TechnologyBasedIntangibleAssetsMember 2023-12-31 0000003197 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0000003197 us-gaap:RetainedEarningsMember 2023-06-30 0000003197 us-gaap:IntersegmentEliminationMember ceco:EngineeredSystemsMember 2024-04-01 2024-06-30 0000003197 us-gaap:RetainedEarningsMember 2023-04-01 2023-06-30 0000003197 ceco:NetherlandsFacilityMember ceco:EuroDenominatedBankGuaranteeMember 2024-06-30 0000003197 srt:MinimumMember 2024-06-30 0000003197 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-06-30 0000003197 2023-01-01 2023-12-31 0000003197 2024-04-01 2024-06-30 0000003197 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0000003197 ceco:TermDebtMember 2024-06-30 0000003197 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0000003197 2024-01-01 2024-06-30 0000003197 ceco:TranscendSolutionMember 2024-01-01 2024-06-30 0000003197 ceco:TranscendSolutionMember ceco:TechnologyMember 2024-06-30 0000003197 us-gaap:CorporateAndOtherMember 2023-04-01 2023-06-30 0000003197 us-gaap:AdditionalPaidInCapitalMember 2023-06-30 0000003197 srt:DirectorMember 2024-01-01 2024-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:IndustrialProcessSolutionsMember us-gaap:IntersubsegmentEliminationsMember 2024-04-01 2024-06-30 0000003197 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-01-01 2024-03-31 0000003197 us-gaap:IntersegmentEliminationMember ceco:IndustrialProcessSolutionsMember 2023-04-01 2023-06-30 0000003197 ceco:EngineeredSystemsMember 2023-01-01 2023-06-30 0000003197 us-gaap:NoncontrollingInterestMember 2022-12-31 0000003197 ceco:CreditAgreementMember 2023-12-31 0000003197 ceco:FederalFundsRateMember 2024-01-01 2024-06-30 0000003197 us-gaap:NoncontrollingInterestMember 2023-01-01 2023-03-31 0000003197 ceco:EffoxFlextorMadderMember 2024-01-01 2024-06-30 0000003197 us-gaap:TechnologyBasedIntangibleAssetsMember 2024-06-30 0000003197 ceco:GeneralRubberLlcMember 2023-01-01 2023-06-30 0000003197 us-gaap:OperatingSegmentsMember us-gaap:IntersubsegmentEliminationsMember 2023-04-01 2023-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:EngineeredSystemsMember 2024-01-01 2024-06-30 0000003197 ceco:EffoxFlextorMadderMember 2023-12-31 0000003197 us-gaap:RestrictedStockUnitsRSUMember 2024-01-01 2024-06-30 0000003197 2024-07-18 0000003197 ceco:TranscendSolutionMember 2023-03-31 2023-03-31 0000003197 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-03-31 0000003197 us-gaap:CustomerListsMember 2024-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:EngineeredSystemsMember us-gaap:IntersubsegmentEliminationsMember 2024-01-01 2024-06-30 0000003197 ceco:Ds21CoLtdMember ceco:CustomerListsAndTradeNameMember 2024-06-30 0000003197 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-12-31 0000003197 srt:MaximumMember us-gaap:BaseRateMember 2024-01-01 2024-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:EngineeredSystemsMember us-gaap:IntersubsegmentEliminationsMember 2024-04-01 2024-06-30 0000003197 ceco:SeniorSecuredTermLoanMember us-gaap:DebtInstrumentRedemptionPeriodThreeMember 2024-01-01 2024-06-30 0000003197 us-gaap:CommonStockMember 2024-04-01 2024-06-30 0000003197 us-gaap:RetainedEarningsMember 2024-03-31 0000003197 ceco:BankGuaranteesMember 2024-06-30 0000003197 2023-03-31 0000003197 us-gaap:RevolvingCreditFacilityMember 2024-06-30 0000003197 ceco:Ds21CoLtdMember us-gaap:TradeNamesMember 2024-06-30 0000003197 ceco:IndustrialProcessSolutionsMember 2023-01-01 2023-06-30 0000003197 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-03-31 0000003197 us-gaap:RetainedEarningsMember 2023-03-31 0000003197 ceco:EngineeredSystemsMember 2023-04-01 2023-06-30 0000003197 us-gaap:OperatingSegmentsMember 2023-01-01 2023-06-30 0000003197 us-gaap:CustomerListsMember 2023-12-31 0000003197 us-gaap:AccruedLiabilitiesMember 2024-06-30 0000003197 ceco:IndustrialProcessSolutionsMember 2024-06-30 0000003197 ceco:SeniorSecuredTermLoanMember 2023-12-31 0000003197 us-gaap:RetainedEarningsMember 2023-12-31 0000003197 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-04-01 2024-06-30 0000003197 ceco:EffoxFlextorMadderMember 2023-04-01 2023-06-30 0000003197 srt:MaximumMember ceco:CreditAgreementMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2024-01-01 2024-06-30 0000003197 ceco:KemcoSystemsCoLlcMember us-gaap:TradeNamesMember 2024-06-30 0000003197 ceco:CreditFacilityMember 2023-12-31 0000003197 us-gaap:RestrictedStockUnitsRSUMember 2023-04-01 2023-06-30 0000003197 ceco:SeniorSecuredTermLoanMember us-gaap:DebtInstrumentRedemptionPeriodTwoMember 2024-01-01 2024-06-30 0000003197 ceco:NetherlandsFacilityMember ceco:EuroDenominatedBankGuaranteeMember 2023-12-31 0000003197 2023-12-31 0000003197 us-gaap:CommonStockMember 2023-12-31 0000003197 us-gaap:RestrictedStockUnitsRSUMember 2024-04-01 2024-06-30 0000003197 ceco:KemcoSystemsCoLlcMember 2023-03-31 2023-03-31 0000003197 2023-01-01 2023-03-31 0000003197 ceco:StateAndForeignAuthoritiesMember 2024-01-01 2024-06-30 0000003197 us-gaap:AdditionalPaidInCapitalMember 2024-03-31 0000003197 us-gaap:AdditionalPaidInCapitalMember 2024-04-01 2024-06-30 0000003197 us-gaap:NoncontrollingInterestMember 2024-04-01 2024-06-30 0000003197 ceco:EffoxFlextorMadderMember 2023-01-01 2023-06-30 0000003197 us-gaap:TradeNamesMember 2023-12-31 0000003197 srt:MinimumMember us-gaap:BaseRateMember 2024-01-01 2024-06-30 0000003197 us-gaap:CommonStockMember 2023-01-01 2023-03-31 0000003197 us-gaap:AdditionalPaidInCapitalMember 2023-12-31 0000003197 ceco:KemcoSystemsCoLlcMember us-gaap:CustomerListsMember 2024-06-30 0000003197 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-03-31 0000003197 ceco:IndustrialProcessSolutionsMember 2024-04-01 2024-06-30 0000003197 srt:MaximumMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2024-06-30 0000003197 2024-01-01 2024-03-31 0000003197 ceco:EngineeredSystemsMember 2024-01-01 2024-06-30 0000003197 us-gaap:StandbyLettersOfCreditMember 2023-12-31 0000003197 us-gaap:IntersegmentEliminationMember ceco:IndustrialProcessSolutionsMember 2024-04-01 2024-06-30 0000003197 ceco:KemcoSystemsCoLlcMember 2023-08-23 2023-08-23 0000003197 us-gaap:OtherPensionPlansPostretirementOrSupplementalPlansDefinedBenefitMember 2024-01-01 2024-06-30 0000003197 us-gaap:OtherPensionPlansPostretirementOrSupplementalPlansDefinedBenefitMember 2023-04-01 2023-06-30 0000003197 us-gaap:NoncontrollingInterestMember 2023-03-31 0000003197 us-gaap:PensionPlansDefinedBenefitMember 2024-01-01 2024-06-30 0000003197 us-gaap:CommonStockMember 2023-06-30 0000003197 ceco:GeneralRubberLlcMember 2023-04-01 2023-06-30 0000003197 ceco:CreditFacilityMember 2024-06-30 0000003197 us-gaap:TradeNamesMember 2024-06-30 0000003197 us-gaap:PensionPlansDefinedBenefitMember 2023-04-01 2023-06-30 0000003197 us-gaap:LineOfCreditMember 2024-06-30 0000003197 us-gaap:CorporateAndOtherMember 2024-01-01 2024-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:EngineeredSystemsMember 2023-01-01 2023-06-30 0000003197 2022-12-31 0000003197 2022-05-10 0000003197 us-gaap:RestrictedStockUnitsRSUMember 2023-01-01 2023-06-30 0000003197 ceco:IndustrialProcessSolutionsMember 2024-01-01 2024-06-30 0000003197 srt:DirectorMember 2023-04-01 2023-06-30 0000003197 us-gaap:PensionPlansDefinedBenefitMember 2023-01-01 2023-06-30 0000003197 us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2024-01-01 2024-06-30 0000003197 2023-01-01 0000003197 ceco:EffoxFlextorMadderMember 2024-04-01 2024-06-30 0000003197 ceco:ForeignCurrencyTranslationAdjustmentMember 2023-12-31 0000003197 us-gaap:OperatingSegmentsMember ceco:EngineeredSystemsMember us-gaap:IntersubsegmentEliminationsMember 2023-01-01 2023-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:IndustrialProcessSolutionsMember us-gaap:IntersubsegmentEliminationsMember 2023-04-01 2023-06-30 0000003197 us-gaap:OperatingSegmentsMember us-gaap:IntersubsegmentEliminationsMember 2024-01-01 2024-06-30 0000003197 us-gaap:AdditionalPaidInCapitalMember 2024-06-30 0000003197 ceco:SeniorSecuredTermLoanMember us-gaap:DebtInstrumentRedemptionPeriodOneMember 2024-01-01 2024-06-30 0000003197 us-gaap:OperatingSegmentsMember us-gaap:IntersubsegmentEliminationsMember 2024-04-01 2024-06-30 0000003197 us-gaap:CorporateAndOtherMember 2024-04-01 2024-06-30 0000003197 ceco:SeniorSecuredTermLoanMember 2024-06-30 0000003197 us-gaap:RevolvingCreditFacilityMember 2023-12-31 0000003197 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-04-01 2023-06-30 0000003197 us-gaap:AsbestosIssueMember 2023-12-31 0000003197 srt:SubsidiariesMember 2024-01-01 2024-06-30 0000003197 us-gaap:RevolvingCreditFacilityMember 2023-03-31 0000003197 us-gaap:AccruedLiabilitiesMember 2023-12-31 0000003197 ceco:GeneralRubberLlcMember 2024-04-01 2024-06-30 0000003197 ceco:KemcoSystemsCoLlcMember 2024-06-30 0000003197 srt:MinimumMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2024-06-30 0000003197 us-gaap:OtherPensionPlansPostretirementOrSupplementalPlansDefinedBenefitMember 2024-04-01 2024-06-30 0000003197 us-gaap:NoncontrollingInterestMember 2024-03-31 0000003197 us-gaap:CommonStockMember 2023-04-01 2023-06-30 0000003197 us-gaap:NoncontrollingInterestMember 2023-04-01 2023-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:IndustrialProcessSolutionsMember 2024-01-01 2024-06-30 0000003197 us-gaap:OperatingSegmentsMember 2024-04-01 2024-06-30 0000003197 us-gaap:CommonStockMember 2023-03-31 0000003197 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-06-30 0000003197 ceco:KemcoSystemsCoLlcMember 2023-08-23 0000003197 ceco:IndustrialProcessSolutionsMember 2023-12-31 0000003197 us-gaap:AccruedLiabilitiesMember 2023-01-01 0000003197 ceco:EffoxFlextorMadderMember 2024-06-30 0000003197 us-gaap:AsbestosIssueMember 2024-06-30 0000003197 ceco:EffoxFlextorMadderMember us-gaap:StandbyLettersOfCreditMember 2024-06-30 0000003197 us-gaap:SubsequentEventMember 2024-07-29 2024-07-29 0000003197 ceco:EngineeredSystemsMember 2024-06-30 0000003197 us-gaap:AdditionalPaidInCapitalMember 2024-01-01 2024-03-31 0000003197 2023-06-30 0000003197 us-gaap:CorporateAndOtherMember 2023-12-31 0000003197 us-gaap:CommonStockMember 2022-12-31 0000003197 us-gaap:CommonStockMember 2024-01-01 2024-03-31 0000003197 us-gaap:LineOfCreditMember 2023-12-31 0000003197 us-gaap:OperatingSegmentsMember 2023-04-01 2023-06-30 0000003197 us-gaap:CorporateAndOtherMember 2023-01-01 2023-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:IndustrialProcessSolutionsMember us-gaap:IntersubsegmentEliminationsMember 2024-01-01 2024-06-30 0000003197 us-gaap:IntersegmentEliminationMember ceco:IndustrialProcessSolutionsMember 2024-01-01 2024-06-30 0000003197 ceco:MalvarEngineeringLimitedMember 2023-01-10 0000003197 ceco:MalvarEngineeringLimitedMember 2023-01-10 2023-01-10 0000003197 us-gaap:IntersegmentEliminationMember ceco:EngineeredSystemsMember 2024-01-01 2024-06-30 0000003197 ceco:BankGuaranteesMember ceco:EuroDenominatedBankGuaranteeMember 2024-06-30 0000003197 srt:SubsidiariesMember 2023-01-01 2023-12-31 0000003197 us-gaap:OperatingSegmentsMember ceco:IndustrialProcessSolutionsMember 2023-04-01 2023-06-30 0000003197 ceco:BankGuaranteesMember ceco:EuroDenominatedBankGuaranteeMember 2023-12-31 0000003197 us-gaap:OperatingSegmentsMember ceco:EngineeredSystemsMember us-gaap:IntersubsegmentEliminationsMember 2023-04-01 2023-06-30 0000003197 ceco:BankGuaranteesMember 2023-12-31 0000003197 ceco:EffoxFlextorMadderMember us-gaap:StandbyLettersOfCreditMember 2023-12-31 0000003197 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-03-31 0000003197 srt:MaximumMember 2024-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:IndustrialProcessSolutionsMember us-gaap:IntersubsegmentEliminationsMember 2023-01-01 2023-06-30 0000003197 us-gaap:NoncontrollingInterestMember 2024-01-01 2024-03-31 0000003197 ceco:EngineeredSystemsMember 2023-12-31 0000003197 us-gaap:RetainedEarningsMember 2024-04-01 2024-06-30 0000003197 2023-04-01 2023-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:EngineeredSystemsMember 2024-04-01 2024-06-30 0000003197 srt:DirectorMember 2023-01-01 2023-06-30 0000003197 us-gaap:RetainedEarningsMember 2023-01-01 2023-03-31 0000003197 ceco:KemcoSystemsCoLlcMember ceco:TechnologyMember 2024-06-30 0000003197 ceco:MalvarEngineeringLimitedMember us-gaap:CustomerListsMember 2024-06-30 0000003197 us-gaap:RetainedEarningsMember 2024-01-01 2024-03-31 0000003197 ceco:CreditAgreementMember 2024-06-30 0000003197 ceco:ForeignCurrencyTranslationAdjustmentMember 2024-06-30 0000003197 ceco:SeniorSecuredTermLoanMember 2024-01-01 2024-06-30 0000003197 ceco:TranscendSolutionMember 2023-03-31 0000003197 ceco:TermDebtMember 2023-12-31 0000003197 2023-01-01 2023-06-30 0000003197 us-gaap:IntersegmentEliminationMember ceco:EngineeredSystemsMember 2023-04-01 2023-06-30 0000003197 ceco:MalvarEngineeringLimitedMember 2024-01-01 2024-06-30 0000003197 ceco:TranscendSolutionMember us-gaap:TradeNamesMember 2024-06-30 0000003197 us-gaap:RetainedEarningsMember 2024-06-30 0000003197 srt:DirectorMember 2024-04-01 2024-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:IndustrialProcessSolutionsMember 2024-04-01 2024-06-30 0000003197 2024-03-31 0000003197 us-gaap:OtherPensionPlansPostretirementOrSupplementalPlansDefinedBenefitMember 2023-01-01 2023-06-30 0000003197 us-gaap:OperatingSegmentsMember ceco:IndustrialProcessSolutionsMember 2023-01-01 2023-06-30 0000003197 us-gaap:NoncontrollingInterestMember 2023-12-31 0000003197 2024-06-30 0000003197 us-gaap:IntersegmentEliminationMember ceco:EngineeredSystemsMember 2023-01-01 2023-06-30 iso4217:EUR pure shares ceco:Case iso4217:USD iso4217:USD shares --12-31 false Q2 0000003197 10-Q true 2024-06-30 2024 false 0-07099 CECO ENVIRONMENTAL CORP. DE 13-2566064 14651 North Dallas Parkway Suite 500 Dallas TX 75254 214 357-6181 Common Stock, par value $0.01 per share CECO NASDAQ Yes Yes Accelerated Filer false false false 34960522 36523000 54779000 391000 669000 6582000 6460000 126974000 112733000 55378000 66574000 38475000 34089000 20414000 11769000 3215000 824000 281370000 281437000 30290000 26237000 14137000 16256000 211144000 211326000 46086000 50461000 9522000 9570000 263000 304000 5321000 4700000 598133000 600291000 10580000 10488000 90944000 87691000 44736000 44301000 59851000 56899000 0 2500000 1212000 1227000 207323000 203106000 11196000 12644000 120246000 126795000 9949000 8838000 9607000 11417000 358321000 362800000 0.01 0.01 10000 10000 0 0 0 0 0.01 0.01 100000000 100000000 34923701 34923701 34835293 34835293 349000 348000 251560000 254956000 -394000 -6387000 -16476000 -16274000 235039000 232643000 4773000 4848000 239812000 237491000 598133000 600291000 137522000 129181000 263854000 241744000 88475000 89364000 169675000 167034000 49047000 39817000 94179000 74710000 36465000 28451000 71372000 55644000 2210000 2273000 4419000 4020000 476000 332000 666000 824000 0 158000 0 158000 414000 0 554000 0 225000 0 225000 0 9257000 8603000 16943000 14064000 -679000 121000 -2192000 -453000 3254000 3750000 6667000 6158000 5324000 4974000 8084000 7453000 394000 984000 1062000 993000 4930000 3990000 7022000 6460000 445000 266000 1029000 759000 4485000 3724000 5993000 5701000 0.13 0.11 0.17 0.17 0.12 0.11 0.17 0.16 34918412 34619216 34881625 34531050 36302664 35143782 36239331 35171727 4930000 3990000 7022000 6460000 -856000 139000 -202000 905000 4074000 4129000 6820000 7365000 34835 348000 254956000 -6387000 -16274000 4848000 237491000 1508000 585000 2093000 10 113000 113000 195 -2000 2204000 2202000 12 1808000 1808000 -144 1000 3000000 3001000 654000 654000 804000 804000 34908 349000 251673000 -4879000 -15620000 4629000 236152000 4485000 445000 4930000 10 161000 161000 92 -1000 466000 465000 2191000 2191000 -86 1000 1999000 2000000 -856000 -856000 301000 301000 34924 349000 251560000 -394000 -16476000 4773000 239812000 34382 344000 250174000 -19298000 -17996000 4924000 218148000 1978000 491000 2469000 52 1000 611000 612000 123 -1000 622000 621000 808000 808000 766000 766000 34557 346000 250971000 -17320000 -17230000 5415000 222182000 3724000 266000 3990000 25 317000 317000 132 1000 271000 270000 24 1389000 1389000 139000 139000 599000 599000 34738 347000 252406000 -13596000 -17091000 5082000 227148000 7022000 6460000 6973000 5650000 -691000 863000 0 296000 -126000 -78000 240000 182000 3847000 1967000 267000 -23000 669000 551000 -22000 -0 17295000 39181000 -10610000 -9596000 5151000 4081000 11164000 8319000 412000 306000 13719000 6594000 1566000 -2692000 3060000 26005000 68000 601000 -6967000 -3126000 7891000 -611000 7233000 3919000 -422000 24142000 -6811000 -28061000 21700000 65300000 -23200000 -33400000 5198000 1652000 458000 450000 2050000 857000 1672000 0 418000 1156000 1105000 599000 5000000 0 -16565000 29498000 -3049000 1141000 -18534000 1967000 55448000 46585000 36914000 48552000 6574000 5380000 3801000 7605000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">1. Basis of Reporting for Consolidated Financial Statements</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The accompanying unaudited condensed consolidated financial statements of CECO Environmental Corp. and its subsidiaries (the “Company,” “CECO,” “we,” “us,” or “our”) have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). Certain information and footnote disclosures normally included in financial statements prepared in accordance with accounting principles generally accepted in the United States of America (“GAAP”) have been condensed or omitted pursuant to those rules and regulations. In the opinion of management, the accompanying unaudited condensed consolidated financial statements of the Company contain all adjustments, consisting only of normal recurring adjustments, necessary to present fairly the financial position as of June 30, 2024 and the results of operations, cash flows and shareholders’ equity for the three and six months ended June 30, 2024 and 2023. The results of operations for the three and six months ended June 30, 2024 are not necessarily indicative of the results to be expected for the full year. The balance sheet as of December 31, 2023 has been derived from the audited consolidated financial statements included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2023 as filed with the SEC on March 5, 2024 (the “Form 10-K”).</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The preparation of financial statements in conformity with GAAP 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. Actual results could differ from those estimates.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">These financial statements and accompanying notes should be read in conjunction with the audited financial statements and the notes thereto included in the Form 10-K.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Unless otherwise indicated, all balances within tables are in thousands, except per share amounts.</span></p> <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2. New Financial Accounting Pronouncements</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounting Standards Adopted in Fiscal </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2024</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">None.</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounting Standards to be Adopted</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In December 2023, the Financial Accounting Standards Board (the "FASB") issued Accounting Standards Update ("ASU") 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which addresses income tax disclosure requirements, primarily around the disclosure of the rate reconciliation and income taxes paid. The ASU is effective for fiscal years beginning after December 15, 2024. The Company is currently evaluating the impact the adoption of the standard will have on the Company’s consolidated financial statements.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:6.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In November 2023, the FASB issued ASU 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, which addresses segment disclosure requirements, primarily the disclosure of significant segment expenses. The ASU is effective for fiscal years beginning after December 15, 2023, and interim periods beginning after December 15, 2024. The Company is currently evaluating the impact the adoption of the standard will have on the Company’s consolidated financial statements.</span></p></div> <p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounting Standards Adopted in Fiscal </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2024</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">None.</span></p> <p style="text-indent:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounting Standards to be Adopted</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In December 2023, the Financial Accounting Standards Board (the "FASB") issued Accounting Standards Update ("ASU") 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures, which addresses income tax disclosure requirements, primarily around the disclosure of the rate reconciliation and income taxes paid. The ASU is effective for fiscal years beginning after December 15, 2024. The Company is currently evaluating the impact the adoption of the standard will have on the Company’s consolidated financial statements.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="text-indent:6.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">In November 2023, the FASB issued ASU 2023-07, Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures, which addresses segment disclosure requirements, primarily the disclosure of significant segment expenses. The ASU is effective for fiscal years beginning after December 15, 2023, and interim periods beginning after December 15, 2024. The Company is currently evaluating the impact the adoption of the standard will have on the Company’s consolidated financial statements.</span></p> <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">3. </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Accounts Receivable </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accounts receivable</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">133,556</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">119,193</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Provision for credit losses</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,582</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,460</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total accounts receivable, net</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">126,974</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">112,733</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable, net as of the beginning of the prior year period, or January 1, 2023, were </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">83.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Balances billed but not paid by customers under retainage provisions in contracts within the Condensed Consolidated Balance Sheets amounted to approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">3.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million as of June 30, 2024 and December 31, 2023, respectively. Retainage receivables on contracts in progress are generally collected within a year or two subsequent to contract completion, and are recorded in either "Accounts receivable, net" or "Deferred charges and other assets" within the Condensed Consolidated Balance Sheets depending on timing of expected collection.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amounts charged to (recovered from) the provision for credit losses was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the three months ended June 30, 2024 and 2023, respectively, and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">zero</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> for the six months ended June 30, 2024 and 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively.</span></p> <p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accounts receivable as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accounts receivable</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">133,556</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">119,193</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Provision for credit losses</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,582</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,460</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total accounts receivable, net</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">126,974</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">112,733</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 133556000 119193000 6582000 6460000 126974000 112733000 83100000 3900000 3200000 700000 -100000 300000 0 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">4. </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> Contract Assets and Liabilities </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contract assets and liabilities as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:59.792%;"></td> <td style="width:1.68%;"></td> <td style="width:1%;"></td> <td style="width:16.423%;"></td> <td style="width:1%;"></td> <td style="width:1.68%;"></td> <td style="width:1%;"></td> <td style="width:16.423%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Costs and estimated earnings in excess of billings on uncompleted contracts</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">55,378</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">66,574</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Billings in excess of costs and estimated earnings on uncompleted contracts</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">59,851</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">56,899</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As of the beginning of the prior year period, or January 1, 2023, costs and estimated earnings in excess of billings on uncompleted contracts and billings in excess of costs and estimated earnings on uncompleted contracts were </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">71.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">32.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. The contract liabilities recorded in “Accrued expenses” on the Condensed Consolidated Balance Sheets were </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">9.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">7.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">4.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024, December 31, 2023 and January 1, 2023, respectively. Approximately </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">70</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> of the Company's contract liabilities as of December 31, 2023 were recognized as revenue in the six months ended June 30, 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p> <p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Contract assets and liabilities as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:59.792%;"></td> <td style="width:1.68%;"></td> <td style="width:1%;"></td> <td style="width:16.423%;"></td> <td style="width:1%;"></td> <td style="width:1.68%;"></td> <td style="width:1%;"></td> <td style="width:16.423%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Costs and estimated earnings in excess of billings on uncompleted contracts</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">55,378</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">66,574</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Billings in excess of costs and estimated earnings on uncompleted contracts</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">59,851</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">56,899</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 55378000 66574000 59851000 56899000 71000000 32700000 9200000 7900000 4500000 0.70 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">5. Inventories</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventories as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.553%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.683%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.683%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Raw materials</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">27,869</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">25,819</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Work in process</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,732</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,710</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Finished goods</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,905</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,368</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Obsolescence allowance</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,031</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,808</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total inventories</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">38,475</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,089</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amounts credited to the allowance for obsolete inventory and charged to cost of sales amounted to </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the three months ended June 30, 2024 and 2023, respectively, and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the six months ended June 30, 2024 and 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively.</span></p> <p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Inventories as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.553%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.683%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.683%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Raw materials</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">27,869</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">25,819</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Work in process</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,732</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,710</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Finished goods</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,905</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,368</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Obsolescence allowance</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,031</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,808</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total inventories</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">38,475</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,089</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 27869000 25819000 11732000 9710000 2905000 2368000 4031000 3808000 38475000 34089000 200000 400000 700000 600000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">6. Goodwill and Intangible Assets</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill activity for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">six months ended June 30, 2024 and the year ended December 31, 2023 was as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:44.009%;"></td> <td style="width:1%;"></td> <td style="width:1%;"></td> <td style="width:12.703%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:10.382%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:10.421999999999999%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:10.421999999999999%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year ended December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Goodwill / Tradename</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Goodwill</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Tradename</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Goodwill</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Tradename</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at beginning of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">211,326</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,570</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">183,197</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,508</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Acquisitions</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">110</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">27,152</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Foreign currency translation</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">292</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">48</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">977</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">62</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">211,144</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">211,326</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,570</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the first quarter of 2024, the Company recorded measurement period adjustments related to the acquisition of Kemco Systems Co., LLC ("Kemco"), as discussed in Note 15, resulting in an increase to goodwill.</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finite life intangible assets as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:44.009%;"></td> <td style="width:1%;"></td> <td style="width:1%;"></td> <td style="width:12.002%;"></td> <td style="width:1%;"></td> <td style="width:1%;"></td> <td style="width:1%;"></td> <td style="width:11.062%;"></td> <td style="width:1%;"></td> <td style="width:1.04%;"></td> <td style="width:1%;"></td> <td style="width:10.421999999999999%;"></td> <td style="width:1%;"></td> <td style="width:1.04%;"></td> <td style="width:1%;"></td> <td style="width:10.421999999999999%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Cost</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Accum. Amort.</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Cost</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Accum. Amort.</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Technology</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16,508</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,388</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16,517</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,061</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer lists</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">103,471</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">66,721</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">103,471</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">63,420</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Tradenames</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,094</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,688</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,094</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,001</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Foreign currency adjustments</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,397</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">207</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,083</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">56</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total intangible assets – finite life</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">132,676</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">86,590</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">132,999</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">82,538</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><div style="font-size:11pt;font-family:'Calibri',sans-serif;"><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finite life intangible asset activity for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">six months ended June 30, 2024 and 2023 was as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible assets – finite life, net at beginning of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">50,461</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">35,251</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Amortization expense</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,315</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,430</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Acquisitions</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,708</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Foreign currency adjustments</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">60</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">370</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible assets – finite life, net at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">46,086</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">42,899</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Amortization expense of finite life intangible assets was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">2.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">1.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the three months ended </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and 2023, respectively, and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">3.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">six months ended June 30, 2024 and 2023, respectively. Amortization over the next five years for finite life intangibles is expected to be </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the remainder of 2024, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">7.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in 2025, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in 2026, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in 2027, and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">5.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in 2028.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company completes its goodwill and indefinite life intangible asset impairment assessment annually in the fourth quarter, or more often if circumstances require. As a part of its impairment assessment, the Company first qualitatively assesses whether current events or changes in circumstances lead to a determination that it is more likely than not, defined as a likelihood of more than 50 percent, that the fair value of a reporting unit or indefinite life intangible asset is less than its carrying amount. If there is a qualitative determination that the fair value is more likely than not greater than the carrying value, the Company does not quantitatively test for impairment. If this qualitative assessment indicates a more likely than not potential that the asset may be impaired, the estimated fair value is calculated. If the estimated fair value is less than carrying value, an impairment charge is recorded.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As of June 30, 2024, the Company reviewed its previous forecasts and assumptions based on its current projections, which are subject to various risks and uncertainties, including projected revenue, projected operational profit, terminal growth rates, and the cost of capital. The Company did not identify any triggering events during the three or six months ended June 30, 2024 that would require an interim impairment assessment of goodwill or intangible assets.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company’s assumptions about future conditions important to its assessment of potential impairment of its goodwill and indefinite life intangible assets are subject to uncertainty, and the Company will continue to monitor these conditions in future periods as new information becomes available, and will update its analysis accordingly.</span></p> <p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill activity for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">six months ended June 30, 2024 and the year ended December 31, 2023 was as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:44.009%;"></td> <td style="width:1%;"></td> <td style="width:1%;"></td> <td style="width:12.703%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:10.382%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:10.421999999999999%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:10.421999999999999%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Year ended December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Goodwill / Tradename</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Goodwill</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Tradename</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Goodwill</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Tradename</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at beginning of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">211,326</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,570</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">183,197</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,508</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Acquisitions</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">110</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">27,152</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Foreign currency translation</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">292</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">48</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">977</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">62</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Balance at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">211,144</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">211,326</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,570</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 211326000 9570000 183197000 9508000 110000 0 27152000 0 -292000 -48000 977000 62000 211144000 9522000 211326000 9570000 <p style="margin-left:4.533%;text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finite life intangible assets as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:44.009%;"></td> <td style="width:1%;"></td> <td style="width:1%;"></td> <td style="width:12.002%;"></td> <td style="width:1%;"></td> <td style="width:1%;"></td> <td style="width:1%;"></td> <td style="width:11.062%;"></td> <td style="width:1%;"></td> <td style="width:1.04%;"></td> <td style="width:1%;"></td> <td style="width:10.421999999999999%;"></td> <td style="width:1%;"></td> <td style="width:1.04%;"></td> <td style="width:1%;"></td> <td style="width:10.421999999999999%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Cost</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Accum. Amort.</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Cost</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Accum. Amort.</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Technology</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16,508</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,388</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16,517</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,061</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Customer lists</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">103,471</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">66,721</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">103,471</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">63,420</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Tradenames</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,094</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,688</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,094</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,001</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Foreign currency adjustments</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,397</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">207</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,083</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">56</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:5pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total intangible assets – finite life</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">132,676</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">86,590</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">132,999</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">82,538</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 16508000 14388000 16517000 14061000 103471000 66721000 103471000 63420000 14094000 5688000 14094000 5001000 -1397000 -207000 -1083000 56000 132676000 86590000 132999000 82538000 <p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Finite life intangible asset activity for the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">six months ended June 30, 2024 and 2023 was as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible assets – finite life, net at beginning of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">50,461</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">35,251</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Amortization expense</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,315</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,430</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Acquisitions</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,708</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Foreign currency adjustments</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">60</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">370</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible assets – finite life, net at end of period</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">46,086</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">42,899</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 50461000 35251000 4315000 3430000 0 10708000 60000 -370000 46086000 42899000 2200000 1700000 4300000 3400000 4300000 7600000 6200000 6000000 5600000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7. Accrued Expenses</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accrued expenses as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Compensation and related benefits</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,854</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,278</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accrued warranty</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,478</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,105</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract liability</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,197</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,875</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term operating lease liability</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,950</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,278</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">17,257</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,765</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total accrued expenses</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">44,736</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">44,301</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div> <p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Accrued expenses as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Compensation and related benefits</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,854</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,278</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Accrued warranty</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,478</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,105</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Contract liability</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,197</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,875</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Short-term operating lease liability</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,950</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,278</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">17,257</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,765</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total accrued expenses</span></p></td> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">44,736</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">44,301</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 8854000 11278000 5478000 5105000 9197000 7875000 3950000 4278000 17257000 15765000 44736000 44301000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">8. Senior Debt</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Debt as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:68.754%;"></td> <td style="width:1.58%;"></td> <td style="width:1%;"></td> <td style="width:11.902000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.58%;"></td> <td style="width:1%;"></td> <td style="width:12.182%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Outstanding borrowings under Credit Facility (defined below)<br/>     Term loan payable in </span><span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">quarterly</span></span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> principal installments of $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">550</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> through September<br/>     2023, $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,232</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> through September 2025 and $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,977</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> thereafter with balance due upon<br/>     maturity in December 2026</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Term loan</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">107,959</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">112,424</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revolving credit facility</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,800</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">17,300</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total outstanding borrowings under the Credit Facility</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">123,759</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">129,724</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Outstanding borrowings under the joint venture term debt</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,123</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,855</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Unamortized debt discount</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,056</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,296</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total outstanding borrowings</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">130,826</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">137,283</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">   Less: current portion</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,580</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,488</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total debt, less current portion</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">120,246</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">126,795</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Scheduled principal payments under the Credit Facility and joint venture term debt are </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">5.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the remainder of 2024, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">11.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in 2025, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">111.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in 2026, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in 2027, and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">zero</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> in 2028.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Credit Facility</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As of June 30, 2024 and December 31, 2023, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">13.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">13.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of letters of credit were outstanding, respectively. Total unused credit availability, in consideration of borrowing limitations, under the Company’s senior secured term loan and senior secured revolver loan with sub-facilities for letters of credit, swing-line loans and senior secured multi-currency loans (the "Credit Facility") was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">111.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">109.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million at June 30, 2024 and December 31, 2023, respectively. Revolving loans may be borrowed, repaid and reborrowed until December 17, 2026, at which time all outstanding balances of the Credit Facility must be repaid.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At the Company’s option, revolving loans and the term loans accrue interest at a per annum rate based on (a) either the highest of (i) the federal funds rate plus </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%, or (ii) the prime lending rate of the Agent (as defined in the Credit Facility), (b) Daily Simple SOFR plus the Daily Simple SOFR Adjustment of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.11</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> plus 1.0%, (c) 1.0%, plus a margin ranging from </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.75</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% to </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.25</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% depending on the Company’s Consolidated Leverage Ratio, or (d) a one/three/six-month Term SOFR Rate (as defined in the Credit Facility) plus the Term SOFR Adjustment ranging from </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.11</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% to </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.43</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% p</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">lus </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.75</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% to 3</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">.25</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% depending on the Company’s Consolidated Leverage Ratio. Interest on swing line loans is the Base Rate.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Interest on Base Rate loans is payable quarterly in arrears on the last day of each calendar quarter and at maturity. Interest on Term SOFR rate loans is payable on the last date of each applicable Interest Period (as defined in the agreement), but in no event less than once every three months and at maturity. The weighted average stated interest rate on outstanding borrowings was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">7.88</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.29</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> at June 30, 2024 and December 31, 2023, respectively. The effective interest rate was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.12</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">7.70</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> at June 30, 2024 and December 31, 2023, respectively.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Under the terms of the Credit Facility, the Company is required to maintain certain financial covenants, including the maintenance of a Consolidated Net Leverage Ratio (as defined in the Credit Facility). In the third quarter of 2023, the Company entered into an Elevated Ratio Period resulting in a maximum Consolidated Net Leverage Ratio of </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.00</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> through June 30, 2024, after which time it decreased to </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.50</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> until the end of the term of the Credit Facility.<br/><br/>The Company has granted a security interest in substantially all of its assets to secure its obligations pursuant to the Credit Facility. The Company’s obligations under the Credit Facility are guaranteed by the Company’s domestic subsidiaries and such guaranty obligations are secured by a security interest on substantially all the assets of such subsidiaries, including certain real property. The Company’s obligations under the Credit Facility may also be guaranteed by the Company’s material foreign subsidiaries to the extent no adverse tax consequences would result to the Company.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As of June 30, 2024 and December 31, 2023, the Company was in compliance with all related financial and other restrictive covenants under the Credit Facility.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Joint Venture Debt</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On March 7, 2022, the Company's Effox-Flextor-Mader, Inc. joint venture ("EFM JV"), for which the Company holds </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">63</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the equity, entered into a loan agreement secured by the assets of the EFM JV in the aggregate principal amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">11.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the acquisition of General Rubber, LLC ("GRC"). As of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million was outstanding under the loan, respectively. Principal will be paid back to the lender monthly with the final installment due by February 27, 2027. Interest is accrued at the per annum rate based on EFM JV's choice of the 1/3/6 month Term SOFR rate plus 3.25%, with a floor rate of 3.75%. Interest is paid monthly on the last day of each month. The interest rate at June 30, 2024 and December 31, 2023 was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.52</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.70</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. As of June 30, 2024 and December 31, 2023, the EFM JV was in compliance with all related financial and other restrictive covenants under this loan agreement. This loan balance does not impact the Company’s borrowing capacity or the financial covenants under the Credit Facility. As of June 30, 2024, there were </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">16.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in current assets, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">26.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in long-lived assets, and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">30.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in total liabilities related to the EFM JV included in the Condensed Consolidated Balance Sheets. As of December 31, 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, there were $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">14.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in current assets, $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">26.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in long-lived assets, and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">12.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in total liabilities related to the EFM JV included in the Consolidated Balance Sheets. For the three months ended </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and 2023, the EFM JV accounted for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">13.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">9.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in revenue, respectively, included in the Company's results. For the six months ended June 30, 2024 and 2023, the EFM JV accounted for </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">23.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">19.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in revenue, respectively, included in the Company's results.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Foreign Debt</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company has a number of bank guarantee facilities and bilateral lines of credit in various foreign countries currently supported by cash, letters of credit or pledged assets and collateral under the Credit Facility. In March 2023, the Company amended the Credit Facility, allowing letters of credit and bank guarantee issuances of up to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">80.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from the bilateral lines of cred</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">it secured through pledged assets and collateral under the Credit Facility. As of June 30, 2024 and December 31, 2023, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">48.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">45.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in bank guarantees were outstanding, respectively, inclusive of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in outstanding bank guarantees as of June 30, 2024 and December 31, 2023, respectively, under a Euro-denominated bank guarantee agreement held by a subsidiary of the Company located in the Netherlands and secured by local assets, as well as </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in outstanding bank guarantees as of June 30, 2024 and December 31, 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, under Yuan-denominated bank guarantee agreements held by a subsidiary of the Company located in China and secured by local assets.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Debt as of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023 consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:68.754%;"></td> <td style="width:1.58%;"></td> <td style="width:1%;"></td> <td style="width:11.902000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.58%;"></td> <td style="width:1%;"></td> <td style="width:12.182%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Outstanding borrowings under Credit Facility (defined below)<br/>     Term loan payable in </span><span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">quarterly</span></span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> principal installments of $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">550</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> through September<br/>     2023, $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,232</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> through September 2025 and $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,977</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> thereafter with balance due upon<br/>     maturity in December 2026</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Term loan</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">107,959</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">112,424</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Revolving credit facility</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,800</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">17,300</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total outstanding borrowings under the Credit Facility</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">123,759</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">129,724</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Outstanding borrowings under the joint venture term debt</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,123</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,855</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Unamortized debt discount</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,056</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,296</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total outstanding borrowings</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">130,826</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">137,283</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">   Less: current portion</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,580</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,488</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total debt, less current portion</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">120,246</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">126,795</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> quarterly 550000 2232000 2977000 107959000 112424000 15800000 17300000 123759000 129724000 8123000 8855000 1056000 1296000 130826000 137283000 10580000 10488000 120246000 126795000 5300000 11300000 111400000 3900000 0 13200000 13300000 111000000 109400000 0.005 0.0011 0.0175 0.0325 0.0011 0.0043 0.0175 0.0025 0.0788 0.0829 0.0812 0.077 0.04 0.035 0.63 11000000 8100000 8900000 0.0852 0.087 16700000 26100000 30200000 14500000 26700000 12500000 13200000 9900000 23900000 19300000 80000000 48300000 45800000 1900000 1300000 2800000 2300000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">9. Earnings per Share</span></p><div style="font-size:11pt;font-family:'Calibri',sans-serif;"><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The computational components of basic and diluted earnings per share for the three months ended </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and 2023 are as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Numerator </span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(for basic and diluted earnings per share)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> Net income attributable to CECO Environmental Corp.</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,485</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,724</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Denominator</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic weighted-average shares outstanding</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,918</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,619</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Common stock equivalents arising from stock options and restricted stock awards</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,385</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">525</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Diluted weighted-average shares outstanding</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">36,303</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">35,144</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The computational components of basic and diluted earnings per share for the six months ended June 30, 2024 and 2023 are as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Numerator </span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(for basic and diluted earnings per share)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> Net income attributable to CECO Environmental Corp.</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,993</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,701</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Denominator</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic weighted-average shares outstanding</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,882</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,531</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Common stock equivalents arising from stock options and restricted stock awards</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,357</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">641</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Diluted weighted-average shares outstanding</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">36,239</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">35,172</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Options and restricted stock units included in the computation of diluted earnings per share are calculated using the treasury stock method. For the three months ended June 30, 2024 and 2023, </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">zero</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, and for the six months ended June 30, 2024 and 2023, </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">0.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, of outstanding options and restricted stock units were excluded from the computation of diluted earnings per share due to their having an anti-dilutive effect.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Once a restricted stock unit vests, it is included in the computation of weighted average shares outstanding for purposes of basic and diluted earnings per share.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Common Stock Repurchase</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On May 10, 2022, the Company's Board of Directors authorized a share repurchase program under which the Company may purchase up to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">20.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of its outstanding shares of common stock through April 30, 2025. The authorization permits the Company to repurchase shares in the open market, through accelerated share repurchases, block trades, Rule 10b5-1 trading plans or through privately negotiated transactions in accordance with applicable laws, rules and regulations. During the three and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">six months ended June 30, 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, the Company repurchased approximately </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">86,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">230,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares under the program, respectively, for a cost of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">5.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. There were </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> shares repurchased under the program during the three or six months ended June 30, 2023.</span></p> <p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The computational components of basic and diluted earnings per share for the three months ended </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and 2023 are as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Numerator </span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(for basic and diluted earnings per share)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> Net income attributable to CECO Environmental Corp.</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,485</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,724</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Denominator</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic weighted-average shares outstanding</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,918</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,619</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Common stock equivalents arising from stock options and restricted stock awards</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,385</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">525</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Diluted weighted-average shares outstanding</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">36,303</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">35,144</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The computational components of basic and diluted earnings per share for the six months ended June 30, 2024 and 2023 are as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Numerator </span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(for basic and diluted earnings per share)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> Net income attributable to CECO Environmental Corp.</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,993</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,701</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Denominator</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic weighted-average shares outstanding</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,882</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">34,531</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ccecff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:9.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Common stock equivalents arising from stock options and restricted stock awards</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,357</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">641</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Diluted weighted-average shares outstanding</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">36,239</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">35,172</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 4485000 3724000 34918000 34619000 1385000 525000 36303000 35144000 5993000 5701000 34882000 34531000 1357000 641000 36239000 35172000 0 1300000 100000 700000 20000000 86000 230000 2000000 5000000 0 0 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10. Share-Based Compensation</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company accounts for share-based compensation in accordance with Accounting Standards Codification (“ASC”) Topic 718, “Compensation – Stock Compensation,” which requires the Company to recognize compensation expense for share-based awards, measured at the fair value of the awards at the grant date. The Company recognized </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of share-based compensation related expense during the three months ended June 30, 2024 and 2023, respectively, and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">3.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of share-based compensation related expense during the six months ended June 30, 2024 and 2023, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company granted approximately </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">57,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">50,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> restricted stock units during the three months ended June 30, 2024 and 2023, respectively, and approximately </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">341,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">390,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> restricted stock units during the six months ended June 30, 2024 and 2023, respectively. In addition, the Company granted approximately </span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">25,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">zero</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> stock options during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">six months</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">ended June 30, 2024 and 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively. </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">No</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> stock options were granted during the three months ended </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and 2023.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">There were approximately </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">10,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">25,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> options exercised during the three months ended </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and 2023, respectively, for which the Company received </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">0.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in cash, respectively, from employees and directors. The intrinsic value of options exercised was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for each of the three months ended June 30, 2024 and 2023. There were approximately </span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">20,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">77,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> options exercised during the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">six months ended June 30, 2024 and 2023, respectively, for which the Company received </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">0.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">0.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in cash, respectively, from employees and directors. The intrinsic value of options exercised was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for each of the </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">six months ended June 30, 2024 and 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> 2200000 1200000 3800000 2000000 57000 50000 341000 390000 25000 0 0 0 10000 25000 200000 300000 100000 100000 20000 77000 300000 900000 200000 200000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">11. Pension and Employee Benefit Plans</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company sponsors a non-contributory defined benefit pension plan for certain union employees. The plan is funded in accordance with the funding requirements of the Employee Retirement Income Security Act of 1974.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company presents the components of net periodic benefit cost within “Other (expense) income, net” on the Condensed Consolidated Statements of Income.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Retirement plan expense is based on valuations performed by plan actuaries as of the beginning of each fiscal year. The components of the pension plan expense consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:46.4%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Interest cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">304</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">318</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">608</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">637</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Expected return on plan assets</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">304</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">285</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">608</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">571</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Amortization of net actuarial loss</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">57</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">74</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">113</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">148</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net periodic benefit cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">57</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">107</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">113</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">214</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company made contributions to its defined benefit plan of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million during the three and six months ended June 30, 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">No</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> contributions were made to the plan during the three and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">six months ended June 30, 2023. For the remainder of 2024, the Company expects to make contributions of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> to fund the pension plan. The unfunded liability of the plan of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million as of June 30, 2024 and December 31, 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, is included in “Other liabilities” on the Condensed Consolidated Balance Sheets.</span></p> <p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Retirement plan expense is based on valuations performed by plan actuaries as of the beginning of each fiscal year. The components of the pension plan expense consisted of the following:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:46.4%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Interest cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">304</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">318</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">608</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">637</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Expected return on plan assets</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">304</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">285</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">608</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">571</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Amortization of net actuarial loss</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">57</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">74</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">113</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">148</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net periodic benefit cost</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">57</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">107</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">113</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">214</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 304000 318000 608000 637000 304000 285000 608000 571000 -57000 -74000 -113000 -148000 57000 107000 113000 214000 200000 200000 0 0 900000 4000000 4100000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">12. Income Taxes</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company files income tax returns in various federal, state and local jurisdictions. Tax years from</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2018</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> forward remain open for examination by Federal authorities. Tax years from </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">2017</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> forward remain open for all significant s</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">tate and foreign authorities.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company accounts for uncertain tax positions pursuant to ASC Topic 740, “Income Taxes.” As of June 30, 2024 and December 31, 2023, the liability for uncertain tax positions totaled approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, which is included in “Other liabilities” on the Condensed Consolidated Balance Sheets. The Company recognizes accrued interest related to uncertain tax positions and penalties, if any, in income tax expense within the Condensed Consolidated Statements of Income.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Certain of the Company’s undistributed earnings of our foreign subsidiaries are not permanently reinvested. Since foreign earnings have already been subject to United States income tax in 2017 as a result of the 2017 Tax Cuts and Jobs Act, the Company intends to repatriate foreign-held cash as needed. The Company records deferred income tax attributable to foreign withholding taxes that would become payable should it decide to repatriate cash held in our foreign operations. As of June 30, 2024 and December 31, 2023, the Company recorded deferred income taxes of approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, on the undistributed earnings of its foreign subsidiaries.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Income tax expense was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the three months ended June 30, 2024 and 2023, respectively, and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million for the six months ended June 30, 2024 and 2023, respectively. The effective income tax rate for the three months ended June 30, 2024 was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">7.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> compared with </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">19.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> for the three months ended June 30, 2023, and the effective income tax rate for the six months ended June 30, 2024 was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">13.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> compared with </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">13.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">%</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> for the six months ended June 30, 2023. The effective income tax rates for the three and six months ended June 30, 2024 and 2023</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> differ </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">from the United States federal statutory rate. The Company's effective rate is affected by certain other permanent differences, including state income taxes, non-deductible incentive stock-based compensation and differences in tax rates among jurisdictions in which it</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">operates. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Additionally, the Company received a tax indemnification payment of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, related to a prior year acquisition, in the second quarter of 2024.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Organization for Economic Co-operation and Development/G20 Inclusive Framework on Base Erosion and Profit Shifting published the Pillar Two model rules designed to address the tax challenges arising from the digitalization of the global economy which introduces a </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">15</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% global minimum corporate tax for companies with revenues above €</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">750</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million calculated on a country-by-country basis. On February 1, 2023, the FASB indicated that it believes the minimum tax imposed under Pillar Two is an alternative minimum tax, and, accordingly, deferred tax assets and liabilities associated with the minimum tax would not be recognized or adjusted for the estimated future effects of the minimum tax but would be recognized in the period incurred. Aspects of Pillar Two legislation have been enacted in certain jurisdictions in which the Company operates effective for accounting periods commencing on or after January 1, 2024. However, based on the current revenue threshold, the Company is currently not subject to Pillar Two taxes.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> 2018 2017 200000 200000 800000 700000 400000 1000000 1100000 1000000 0.074 0.198 0.131 0.133 500000 0.15 750000000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">13. Financial Instruments</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company's financial instruments consist primarily of investments in cash and cash equivalents, receivables and certain other assets, notes payable, foreign debt and accounts payable, which approximate fair value at June 30, 2024 and December 31, 2023, due to their short-term nature or variable, market-driven interest rates.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The fair value of the debt issued under the Credit Facility and joint venture term loan was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">131.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">138.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million at </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024 and December 31, 2023, respectively. The fair value was determined considering market conditions, the Company's credit worthiness and the current terms of our debt, which is considered Level 2 on the fair value hierarchy.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">At June 30, 2024 and December 31, 2023, the Company had cash and cash equivalents of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">36.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;white-space:pre-wrap;min-width:fit-content;color:#000000;">54.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, of which </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">28.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">38.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively, was held outside of the United States, principally in the Netherlands, India, United Kingdom, and China.</span></p> 131900000 138600000 36500000 54800000 28600000 38500000 <p style="text-indent:-4.749%;padding-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">14. Commitments and Contingencies</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Asbestos cases</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company's subsidiary, Met-Pro Technologies LLC (“Met-Pro”), beginning in 2002, has been named in asbestos-related lawsuits filed against a large number of industrial companies including, in particular, those in the pump and fluid handling industries. In management’s opinion, the complaints typically have been vague, general and speculative, alleging that Met-Pro, along with the numerous other defendants, sold unidentified asbestos-containing products and engaged in other related actions which caused injuries (including death) and loss to the plaintiffs. Counsel has advised that more recent cases typically allege more serious claims of mesothelioma. The Company’s insurers have hired attorneys who, together with the Company, are vigorously defending these cases. Many cases have been dismissed after the plaintiff fails to produce evidence of exposure to Met-Pro’s products. In those cases, where evidence has been produced, the Company’s experience has been that the exposure levels are low and the Company’s position has been that its products were not a cause of death, injury or loss. The Company has been dismissed from or settled a large number of these cases. Cumulative settlement payments from 2002 through June 30, 2024 for cases involving asbestos-related claims were </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">6.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million which together with all legal fees other than corporate counsel expenses have substantially been paid by the Company’s insurers. The average cost per settled claim, excluding legal fees, was approximately </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">33,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. As of June 30, 2024 and December 31, 2023, the amount recorded within "Accrued expenses" on the Condensed Consolidated Balance Sheets was </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">zero</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, respectively, related to asbestos litigation.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Based upon the most recent information available to the Company regarding such claims, there were a total of 333 cases pending against the Company as of June 30, 2024 with Illinois, New York, Pennsylvania and West Virginia having the largest number of cases, as compared with </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">313</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> cases that were pending as of December 31, 2023. During the six months ended June 30, 2024, 94 new cases were filed against the Company, and the Company was dismissed from 50 cases and settled 24 cases. Most of the pending cases have not advanced beyond the early stages of discovery, although a number of cases are on schedules leading to or scheduled for trial. The Company believes that its insurance coverage is adequate for the cases currently pending against the Company and for the foreseeable future, assuming a continuation of the current volume, nature of cases and settlement amounts. However, the Company has no control over the number and nature of cases that are filed against it, nor as to the financial health of its insurers or their position as to coverage. The Company also presently believes that none of the pending cases will have a material adverse impact upon the Company’s results of operations, liquidity or financial condition.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Other</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company is also a party to routine contract and employment-related litigation matters, warranty claims and routine audits of state and local tax returns arising in the ordinary course of its business.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The final outcome and impact of open matters, and related claims and investigations that may be brought in the future, are subject to many variables, and cannot be predicted. The Company records accruals for estimated losses relating to claims and lawsuits when available information indicates that a loss is probable and the amount of the loss, or range of loss, can be reasonably estimated. The Company expenses legal costs as they are incurred.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company is</span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> not aware of any pending claims or assessments, other than as described above, which may have a material adverse impact on its liquidity, financial position, results of operations, or cash flows.</span></span></p> 6800000 33000 200000 0 313 not aware of any pending claims or assessments, other than as described above, which may have a material adverse impact on its liquidity, financial position, results of operations, or cash flows. <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">15. Acquisitions</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Kemco Systems Co., LLC</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On August 23, 2023, the Company acquired </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the equity interests of Kemco for $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">24.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in cash, which was financed with a draw on the Company’s revolving credit facility. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">During the three months ended March 31, 2024, the Company received $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million from the former owners of Kemco as a working capital adjustment, reducing the purchase price to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">23.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">As additional consideration, the former owners of Kemco are entitled to earnout payments up to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million based upon specified financial results through August 31, 2026, of which $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million was paid during the second quarter of 2024. Based on projections at the acquisition date, the Company estimated the fair value of the earnout to be $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, which was subsequently adjusted to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in the first quarter of 2024. This fair value measurement is based on inputs not observable in the market, which is considered Level 3 on the fair value hierarchy. As of </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">June 30, 2024, the earnout liability recorded in “Accrued expenses” on the Condensed Consolidated Balance Sheets is </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">$</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. Kemco designs and manufactures energy and water conservation systems and equipment for applications regarding wastewater reuse and recycle, heat recovery, water heating, and vapor energy. This acquisition advances the Company's position within the North American water and wastewater treatment market within the Engineered Systems segment. </span><span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.</span></span></p><div style="font-size:10pt;font-family:Times New Roman;"> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:80.236%;"></td> <td style="width:1.94%;"></td> <td style="width:1%;"></td> <td style="width:15.823%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current assets (including accounts receivable of $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,328</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,902</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property and equipment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">341</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Right-of-use assets from operating leases</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,602</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible - finite life</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,610</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Goodwill</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,115</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other assets</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">33,586</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current liabilities assumed</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,853</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other liabilities assumed</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">404</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">26,329</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company acquired technology, customer lists and tradename intangible assets valued at $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">8.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. These assets were determined to have useful lives of </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> and </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> years, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Transcend Solutions</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On March 31, 2023, the Company acquired </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the equity interests of Transcend Solutions, LLC ("Transcend") for</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">22.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, including $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">20.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in cash, which was financed with a draw on the Company’s revolving credit facility, $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of deferred cash consideration, consisting of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of holdback paid within one year and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of notes payable due in equal installments over two years, of which $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million was paid during the first quarter of 2024</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. Transcend is a process filtration solution design and manufacturing company with applications in hydrocarbon and chemical processing. This acquisition improves the Company's short-cycle and long-cycle mix and expands the Company's reach into midstream oil and gas, liquified natural gas, hydrocarbon processing, and chemical processing applications within the Engineered Systems segment. </span><span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.</span></span></p><div style="font-size:10pt;font-family:Times New Roman;"> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:80.236%;"></td> <td style="width:1.94%;"></td> <td style="width:1%;"></td> <td style="width:15.823%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current assets (including cash of $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">52</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> and accounts receivable of $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,493</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,614</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property and equipment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,153</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible - finite life</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,930</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Goodwill</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,839</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other assets</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">231</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">23,767</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current liabilities assumed</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,203</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred tax liability</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">168</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">22,396</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company acquired technology, customer lists and tradename intangible assets valued at $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">7.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.7</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. These assets were determined to have useful lives of </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">7</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10 </span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">and </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10 </span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">years, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Malvar Engineering Limited</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On January 10, 2023, the Company acquired </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">% of the equity interests of Malvar Engineering Limited, including its subsidiaries Arkanum Management Limited and Wakefield Acoustics Limited (collectively, "Wakefield"), for</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">4.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million in cash, which was financed with a draw on the Company’s revolving credit facility, and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.4</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million of deferred cash consideration</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">. As additional consideration, the former owners are entitled to earn-out payments based upon specified financial results through July 31, 2023. Based on projections at the acquisition date, the Company estimated the fair value of the earn-out to be $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million. A payment of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, representing the fully earned amount, was made in the fourth quarter of 2023. Wakefield is a </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">producer of industrial engineered noise control solutions, including custom acoustical gen-set packages, ambient air baffles, acoustical louvres, and skid enclosures, primarily serving server farms for data centers, standby and emergency power generation, oil and gas, petrochemical, commercial construction, infrastructure, and general manufacturing industries. This acquisition advances the Company's position within the industrial silencing and noise attenuation market by adding a range of solutions and access to new geographic markets within the Engineered Systems segment. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.</span></span></p><div style="font-size:10pt;font-family:Times New Roman;"> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:80.236%;"></td> <td style="width:1.94%;"></td> <td style="width:1%;"></td> <td style="width:15.823%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current assets (including accounts receivable of $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,467</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,240</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property and equipment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">635</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible - finite life</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,778</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Goodwill</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,296</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,949</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current liabilities assumed</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,860</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred income tax liability</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">961</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,128</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company acquired customer lists and tradename intangible assets valued at $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">1.5</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">0.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million, respectively. These assets were determined to have useful lives of </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">10 years</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company has finalized the valuation of assets acquired and liabilities assumed related to the acquisition of Wakefield and Transcend. The purchase accounting related to the Kemco acquisition is subject to final adjustment, primarily for the valuation of intangible assets pending final valuation results for such assets and tax balances for the further assessment of the acquiree’s tax positions. These preliminary estimates and assumptions could change significantly during the purchase price measurement period as the Company finalizes the valuation of assets acquired and liabilities assumed. These changes could result in material variances in the Company's future financial results, including variances in the estimated purchase price, fair values recorded and expenses associated with these items.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Goodwill recognized represents value the Company expects to be created by combining the various operations of the acquired businesses with the Company’s operations, including the expansion into markets within existing business segments, access to new customers and potential cost savings and synergies. Goodwill related to this acquisition is not deductible for tax purposes.<br/><br/>Acquisition and integration expenses on the Condensed Consolidated Statements of Income are related to acquisition activities, which include retention, legal, accounting, banking, and other expenses.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following unaudited pro forma financial information represents the Company’s results of operations as if these acquisitions had occurred at the beginning of the fiscal year prior to the acquisition:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:51.31%;"></td> <td style="width:1.24%;"></td> <td style="width:1%;"></td> <td style="width:11.582%;"></td> <td style="width:1%;"></td> <td style="width:1.24%;"></td> <td style="width:1%;"></td> <td style="width:6.281000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.24%;"></td> <td style="width:1%;"></td> <td style="width:11.582%;"></td> <td style="width:1%;"></td> <td style="width:1.24%;"></td> <td style="width:1%;"></td> <td style="width:6.281000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands, except per share data)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">137,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">135,260</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">263,854</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">257,455</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net income attributable to CECO Environmental Corp.</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,485</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,292</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,993</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,019</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Earnings per share:</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.13</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.12</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.17</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.20</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Diluted</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.12</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.12</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.17</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.20</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The pro forma results have been prepared for informational purposes only and include adjustments to amortize acquired intangible assets with finite life, reflect additional interest expense on debt used to fund the acquisition, and to record the income tax consequences of the pro forma adjustments. These pro forma results do not purport to be indicative of the results of operations that would have occurred had the purchase been made as of the beginning of the periods presented or of the results of operations that may occur in the future.</span></p> 1 24000000 400000 23600000 4000000 1700000 2200000 2700000 1100000 <span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.</span> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:80.236%;"></td> <td style="width:1.94%;"></td> <td style="width:1%;"></td> <td style="width:15.823%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current assets (including accounts receivable of $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,328</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,902</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property and equipment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">341</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Right-of-use assets from operating leases</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,602</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible - finite life</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,610</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Goodwill</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">11,115</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other assets</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">33,586</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current liabilities assumed</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,853</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other liabilities assumed</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">404</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">26,329</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 2328000 8902000 341000 1602000 11610000 11115000 16000 33586000 6853000 404000 26329000 1400000 8700000 1500000 P7Y P10Y P10Y 1 22400000 20000000 2400000 400000 2000000 1000000 <span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.</span> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:80.236%;"></td> <td style="width:1.94%;"></td> <td style="width:1%;"></td> <td style="width:15.823%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current assets (including cash of $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">52</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;"> and accounts receivable of $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,493</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,614</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property and equipment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,153</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible - finite life</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,930</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Goodwill</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,839</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Other assets</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">231</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">23,767</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current liabilities assumed</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,203</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred tax liability</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">168</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">22,396</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 52000 1493000 2614000 1153000 8930000 10839000 231000 23767000 1203000 168000 22396000 600000 7600000 700000 P7Y P10Y P10Y 1 4100000 400000 600000 600000 <span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following table summarizes the fair values of the assets acquired and liabilities assumed at the date of closing.</span> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:80.236%;"></td> <td style="width:1.94%;"></td> <td style="width:1%;"></td> <td style="width:15.823%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current assets (including accounts receivable of $</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,467</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,240</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Property and equipment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">635</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Intangible - finite life</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,778</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Goodwill</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,296</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,949</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Current liabilities assumed</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,860</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Deferred income tax liability</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">961</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net assets acquired</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,128</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 2467000 3240000 635000 1778000 5296000 10949000 4860000 961000 5128000 1500000 300000 P10Y <p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The following unaudited pro forma financial information represents the Company’s results of operations as if these acquisitions had occurred at the beginning of the fiscal year prior to the acquisition:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:51.31%;"></td> <td style="width:1.24%;"></td> <td style="width:1%;"></td> <td style="width:11.582%;"></td> <td style="width:1%;"></td> <td style="width:1.24%;"></td> <td style="width:1%;"></td> <td style="width:6.281000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.24%;"></td> <td style="width:1%;"></td> <td style="width:11.582%;"></td> <td style="width:1%;"></td> <td style="width:1.24%;"></td> <td style="width:1%;"></td> <td style="width:6.281000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands, except per share data)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">137,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">135,260</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">263,854</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">257,455</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Net income attributable to CECO Environmental Corp.</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,485</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,292</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,993</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,019</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Earnings per share:</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Basic</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.13</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.12</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.17</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.20</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:20pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Diluted</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.12</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.12</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.17</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">0.20</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 137522000 135260000 263854000 257455000 4485000 4292000 5993000 7019000 0.13 0.12 0.17 0.2 0.12 0.12 0.17 0.2 <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">16. Business Segment Information</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company’s operations are organized and reviewed by management along with its solutions or end markets that the segment serves and presented in two reportable segments. The results of the segments are reviewed through the “Income from operations” line on the Condensed Consolidated Statements of Income</span><span style="color:#000000;white-space:pre-wrap;font-size:12pt;font-family:Times New Roman;min-width:fit-content;">.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company’s reportable segments are organized as groups of similar products and services, as described as follows:</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Engineered Systems segment:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> The Engineered Systems segment serves the power generation, hydrocarbon processing, water/wastewater treatment, oily water separation and treatment, marine and naval vessels, and midstream oil and gas sectors. The Company seeks to address the global demand for environmental and equipment protection solutions with its highly engineered platforms including emissions management, fluid bed cyclones, thermal acoustics, separation and filtration, and dampers and expansion joints.</span></p><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;text-decoration:underline;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">Industrial Process Solutions segment:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> The Industrial Process Solutions segment serves the broad industrial sector with solutions for air pollution and contamination control, fluid handling, and process filtration in applications such as aluminum beverage can production, automobile production, food and beverage processing, semiconductor fabrication, electronics production, steel and aluminum mill processing, wood manufacturing, desalination, and aquaculture markets. The Company assists customers in maintaining clean and safe operations for employees, reducing energy consumption, minimizing waste for customers, and meeting regulatory standards for toxic emissions, fumes, volatile organic compounds and odor elimination through its platforms including duct fabrication and installation, industrial air, and fluid handling.</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The financial segment information is as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:46.4%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net sales (less intra-, inter-segment sales)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">97,392</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">87,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">186,741</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">161,977</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">40,130</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">41,659</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">77,113</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">79,767</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">137,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">129,181</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">263,854</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">241,744</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:46.4%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Income from operations</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">19,330</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,089</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">35,607</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">23,894</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,669</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,586</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">12,769</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,131</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Corporate and Other</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;min-width:fit-content;">(1)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,742</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,072</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">31,433</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">19,961</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total income from operations</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,257</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,603</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16,943</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,064</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><div class="item-list-element-wrapper" style="display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:6pt;min-width:6.667%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Includes corporate compensation, professional services, information technology, and other general and administrative corporate expenses.</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span></span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span></div></div><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"> </p><div style="font-size:10pt;font-family:Times New Roman;"> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:46.4%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Property and equipment additions</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">890</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">444</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,027</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">688</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">429</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">312</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,035</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,711</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Corporate and Other</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,804</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,406</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,171</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,520</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total property and equipment additions</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,123</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,162</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,233</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,919</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:46.4%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Depreciation and amortization</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,814</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,274</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,599</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,486</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,131</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">949</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,250</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,107</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Corporate and Other</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">516</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">542</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,124</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,057</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total depreciation and amortization</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,461</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,765</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,973</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,650</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Identifiable assets</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">427,732</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">432,098</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">144,132</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">147,740</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Corporate and Other</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;min-width:fit-content;">(2)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">26,269</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">20,453</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total identifiable assets</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">598,133</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">600,291</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><div class="item-list-element-wrapper" style="display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:6pt;min-width:6.667%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Corporate and Other assets consist primarily of cash and income tax related assets.</span></div></div></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"> </p><div style="font-size:10pt;font-family:Times New Roman;"> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Goodwill</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">142,058</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">142,229</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">69,086</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">69,097</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total goodwill</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">211,144</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">211,326</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div><p style="margin-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"><br/></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;">Intra-segment and Inter-segment Revenues</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="margin-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company has multiple divisions that sell to each other within segments (intra-segment sales) and between segments (inter-segment sales), as follows:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:42.3%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="8" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Less Inter-Segment Sales</span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Intra-<br/>Segment<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Industrial Process Solutions</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Engineered Systems</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Sales</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">to<br/>Outside<br/>Customers</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net sales</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">102,141</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,553</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">196</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">97,392</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">44,673</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,440</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">103</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">40,130</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">146,814</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,993</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">196</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">103</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">137,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:42.357%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.443%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.523%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.523%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.523%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.523%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="8" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Less Inter-Segment Sales</span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Intra-<br/>Segment<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Industrial Process Solutions</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Engineered Systems</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Sales</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">to<br/>Outside<br/>Customers</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net sales</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">95,880</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,995</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">363</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">87,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">44,641</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,806</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">176</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">41,659</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">140,521</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,801</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">363</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">176</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">129,181</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:42.297%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.583%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.503%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.503%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.503%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.503%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="8" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Less Inter-Segment Sales</span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Intra-<br/>Segment<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Industrial Process Solutions</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Engineered Systems</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Sales</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">to<br/>Outside<br/>Customers</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net sales</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">194,659</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,635</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">283</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">186,741</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">84,252</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,975</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">164</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">77,113</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">278,911</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,610</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">283</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">164</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">263,854</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:42.3%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="8" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Less Inter-Segment Sales</span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Intra-<br/>Segment<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Industrial Process Solutions</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Engineered Systems</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Sales</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">to<br/>Outside<br/>Customers</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net sales</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">171,970</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,533</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">460</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">161,977</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">83,682</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,641</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">274</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">79,767</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">255,652</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">13,174</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">460</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">274</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">241,744</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table></div> <p style="margin-left:4.533%;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The financial segment information is as follows:</span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:46.4%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net sales (less intra-, inter-segment sales)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">97,392</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">87,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">186,741</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">161,977</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">40,130</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">41,659</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">77,113</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">79,767</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">137,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">129,181</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">263,854</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">241,744</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:46.4%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Income from operations</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">19,330</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,089</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">35,607</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">23,894</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,669</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,586</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">12,769</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,131</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Corporate and Other</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;min-width:fit-content;">(1)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">15,742</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,072</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">31,433</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">19,961</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total income from operations</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,257</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,603</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">16,943</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,064</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Includes corporate compensation, professional services, information technology, and other general and administrative corporate expenses.</span><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;"> </span> 97392000 87522000 186741000 161977000 40130000 41659000 77113000 79767000 137522000 129181000 263854000 241744000 19330000 14089000 35607000 23894000 5669000 4586000 12769000 10131000 -15742000 -10072000 -31433000 -19961000 9257000 8603000 16943000 14064000 <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:46.4%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Property and equipment additions</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">890</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">444</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,027</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">688</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">429</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">312</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,035</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,711</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Corporate and Other</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,804</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,406</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,171</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,520</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total property and equipment additions</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,123</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,162</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,233</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,919</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:46.4%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.12%;"></td> <td style="width:1%;"></td> <td style="width:10.280000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="6" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30,</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Depreciation and amortization</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,814</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,274</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,599</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,486</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,131</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">949</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,250</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,107</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Corporate and Other</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">516</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">542</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,124</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">1,057</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:bottom;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total depreciation and amortization</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,461</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,765</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,973</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">5,650</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Identifiable assets</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">427,732</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">432,098</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">144,132</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">147,740</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Corporate and Other</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;min-width:fit-content;">(2)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">26,269</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">20,453</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total identifiable assets</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">598,133</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">600,291</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><div class="item-list-element-wrapper" style="display:flex;margin-top:3pt;justify-content:flex-start;align-items:baseline;margin-bottom:6pt;min-width:6.667%;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:6.667%;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;min-width:fit-content;">Corporate and Other assets consist primarily of cash and income tax related assets.</span></div></div> 890000 444000 2027000 688000 429000 312000 1035000 1711000 2804000 1406000 4171000 1520000 4123000 2162000 7233000 3919000 1814000 1274000 3599000 2486000 1131000 949000 2250000 2107000 516000 542000 1124000 1057000 3461000 2765000 6973000 5650000 427732000 432098000 144132000 147740000 26269000 20453000 598133000 600291000 <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:63.367%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.54%;"></td> <td style="width:1%;"></td> <td style="width:14.777000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">December 31, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Goodwill</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">142,058</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">142,229</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">69,086</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">69,097</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total goodwill</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">211,144</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">211,326</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;min-width:fit-content;"><br/></span> 142058000 142229000 69086000 69097000 211144000 211326000 <p style="margin-left:4.533%;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">The Company has multiple divisions that sell to each other within segments (intra-segment sales) and between segments (inter-segment sales), as follows:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:42.3%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="8" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Less Inter-Segment Sales</span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Intra-<br/>Segment<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Industrial Process Solutions</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Engineered Systems</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Sales</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">to<br/>Outside<br/>Customers</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net sales</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">102,141</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,553</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">196</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">97,392</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">44,673</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">4,440</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">103</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">40,130</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">146,814</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">8,993</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">196</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">103</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">137,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:42.357%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.443%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.523%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.523%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.523%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.523%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Three months ended June 30, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="8" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Less Inter-Segment Sales</span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Intra-<br/>Segment<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Industrial Process Solutions</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Engineered Systems</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Sales</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">to<br/>Outside<br/>Customers</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net sales</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">95,880</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,995</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">363</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">87,522</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">44,641</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">2,806</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">176</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">41,659</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">140,521</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">10,801</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">363</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">176</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">129,181</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:6pt;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:42.297%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.583%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.503%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.503%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.503%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.503%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30, 2024</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;text-align:left;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="8" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Less Inter-Segment Sales</span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Intra-<br/>Segment<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Industrial Process Solutions</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Engineered Systems</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Sales</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">to<br/>Outside<br/>Customers</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net sales</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">194,659</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">7,635</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">283</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">186,741</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">84,252</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">6,975</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">164</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">77,113</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">278,911</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">14,610</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">283</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">164</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">263,854</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table><p style="font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:justify;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p> <table style="margin-left:auto;border-spacing:0;table-layout:fixed;width:100.0%;border-collapse:separate;margin-right:auto;"> <tr style="visibility:collapse;"> <td style="width:42.3%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> <td style="width:1.02%;"></td> <td style="width:1%;"></td> <td style="width:8.520000000000001%;"></td> <td style="width:1%;"></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="18" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Six months ended June 30, 2023</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="8" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Less Inter-Segment Sales</span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:8pt;background-color:#ffffff;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">(in thousands)</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Total<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Intra-<br/>Segment<br/>Sales</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Industrial Process Solutions</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Engineered Systems</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Sales</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-family:'Calibri',sans-serif;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">to<br/>Outside<br/>Customers</span></p></td> <td style="vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;white-space:pre-wrap;word-break:break-word;"> <td style="vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;min-width:fit-content;">Net sales</span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td colspan="2" style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Engineered Systems segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">171,970</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">9,533</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">460</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">161,977</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#cff0fc;word-break:break-word;"> <td style="white-space:pre-wrap;vertical-align:top;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Industrial Process Solutions segment</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">83,682</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">3,641</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">—</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">274</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:0.5pt solid #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">79,767</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:0.5pt solid #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> <tr style="height:10pt;background-color:#ffffff;word-break:break-word;"> <td style="text-indent:10pt;white-space:pre-wrap;vertical-align:top;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">Total net sales</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">255,652</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">13,174</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">460</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">274</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">)</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;min-width:fit-content;"> </span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #000000;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;min-width:fit-content;">$</span></p></td> <td style="white-space:pre-wrap;vertical-align:bottom;border-bottom:2.25pt double #000000;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;min-width:fit-content;">241,744</span></p></td> <td style="white-space:nowrap;vertical-align:bottom;border-bottom:2.25pt double #ffffff03;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="min-width:fit-content;"> </span></p></td> </tr> </table> 102141000 -4553000 -196000 97392000 44673000 -4440000 -103000 40130000 146814000 -8993000 -196000 -103000 137522000 95880000 -7995000 -363000 87522000 44641000 -2806000 -176000 41659000 140521000 -10801000 -363000 -176000 129181000 194659000 -7635000 -283000 186741000 84252000 -6975000 -164000 77113000 278911000 -14610000 -283000 -164000 263854000 171970000 -9533000 -460000 161977000 83682000 -3641000 -274000 79767000 255652000 -13174000 -460000 -274000 241744000 <p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:12pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">17. Subsequent Events</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> </span></p><p style="margin-left:6.667%;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;">On July 29, 2024, the Company completed its acquisition of EnviroCare International (“EnviroCare"), based in American Canyon, California. EnviroCare is a leading, international designer and provider of industrial exhaust air contamination treatment and control systems, solutions and services across a wide range of industrial and municipal applications. This acquisition advances the Company's leadership position within the industrial processing solutions segment by adding a range of solutions and access to new geographic markets and industrial segments. The purchase price was approximately $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;min-width:fit-content;">17</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;min-width:fit-content;"> million and financed using a combination of cash on the balance sheet and borrowings under the Company’s existing Credit Facility. The impact of this acquisition is not included in the Company's results for the three or six months ended June 30, 2024. The initial accounting for the acquisition was not complete at the time the financial statements were issued due to the timing of the acquisition and the filing of this Quarterly Report on Form 10-Q. As a result, complete disclosures as required under ASC 805, Business Combinations cannot be made at this time.</span></p> 17000000 false false false false Includes corporate compensation, professional services, information technology, and other general and administrative corporate expenses. Corporate and Other assets consist primarily of cash and income tax related assets.