0001558370-23-018286.txt : 20231108 0001558370-23-018286.hdr.sgml : 20231108 20231108162139 ACCESSION NUMBER: 0001558370-23-018286 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 85 CONFORMED PERIOD OF REPORT: 20230930 FILED AS OF DATE: 20231108 DATE AS OF CHANGE: 20231108 FILER: COMPANY DATA: COMPANY CONFORMED NAME: Cadre Holdings, Inc. CENTRAL INDEX KEY: 0001860543 STANDARD INDUSTRIAL CLASSIFICATION: ORTHOPEDIC, PROSTHETIC & SURGICAL APPLIANCES & SUPPLIES [3842] IRS NUMBER: 383873146 STATE OF INCORPORATION: DE FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-40698 FILM NUMBER: 231388214 BUSINESS ADDRESS: STREET 1: 13386 INTERNATIONAL PKWY CITY: JACKSONVILLE STATE: FL ZIP: 32218 BUSINESS PHONE: (904) 741-5400 MAIL ADDRESS: STREET 1: 13386 INTERNATIONAL PKWY CITY: JACKSONVILLE STATE: FL ZIP: 32218 10-Q 1 cdre-20230930x10q.htm 10-Q
0001860543--12-312023Q3false0037332271http://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrenthttp://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrenthttp://fasb.org/us-gaap/2023#OtherAssetsCurrenthttp://fasb.org/us-gaap/2023#OtherAssetsCurrenthttp://fasb.org/us-gaap/2023#OtherAssetsNoncurrenthttp://fasb.org/us-gaap/2023#OtherAssetsNoncurrentP3Y375860310001860543us-gaap:CommonStockMember2023-01-012023-03-310001860543us-gaap:CommonStockMember2022-01-012022-03-310001860543us-gaap:CommonStockMember2022-07-012022-09-300001860543cdre:SecondaryOfferingMember2022-06-092022-06-090001860543us-gaap:CommonStockMember2022-04-012022-06-300001860543us-gaap:RetainedEarningsMember2023-09-300001860543us-gaap:AdditionalPaidInCapitalMember2023-09-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-09-300001860543us-gaap:RetainedEarningsMember2023-06-300001860543us-gaap:AdditionalPaidInCapitalMember2023-06-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-06-300001860543us-gaap:RetainedEarningsMember2023-03-310001860543us-gaap:AdditionalPaidInCapitalMember2023-03-310001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-03-310001860543us-gaap:RetainedEarningsMember2022-12-310001860543us-gaap:AdditionalPaidInCapitalMember2022-12-310001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-310001860543us-gaap:RetainedEarningsMember2022-09-300001860543us-gaap:AdditionalPaidInCapitalMember2022-09-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-09-300001860543us-gaap:RetainedEarningsMember2022-06-300001860543us-gaap:AdditionalPaidInCapitalMember2022-06-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-06-300001860543us-gaap:RetainedEarningsMember2022-03-310001860543us-gaap:AdditionalPaidInCapitalMember2022-03-310001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-03-3100018605432022-03-310001860543us-gaap:RetainedEarningsMember2021-12-310001860543us-gaap:AdditionalPaidInCapitalMember2021-12-310001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-12-310001860543cdre:InsurancePremiumFinancingMember2023-09-300001860543cdre:CurrentPortionOfTermLoanMember2023-09-300001860543cdre:InsurancePremiumFinancingMember2022-12-310001860543cdre:CurrentPortionOfTermLoanMember2022-12-310001860543us-gaap:OverAllotmentOptionMember2022-07-140001860543cdre:SecondaryOfferingMember2022-06-090001860543cdre:RadarLeatherDivisionS.r.lMember2023-01-012023-09-3000018605432024-10-012023-09-3000018605432023-10-012023-09-300001860543us-gaap:NonUsMember2023-07-012023-09-300001860543country:US2023-07-012023-09-300001860543cdre:U.s.stateAndLocalAgenciesMember2023-07-012023-09-300001860543cdre:U.s.FederalAgenciesMember2023-07-012023-09-300001860543cdre:OtherMember2023-07-012023-09-300001860543cdre:InternationalMember2023-07-012023-09-300001860543cdre:CommercialMember2023-07-012023-09-300001860543us-gaap:NonUsMember2023-01-012023-09-300001860543country:US2023-01-012023-09-300001860543cdre:U.s.stateAndLocalAgenciesMember2023-01-012023-09-300001860543cdre:U.s.FederalAgenciesMember2023-01-012023-09-300001860543cdre:OtherMember2023-01-012023-09-300001860543cdre:InternationalMember2023-01-012023-09-300001860543cdre:CommercialMember2023-01-012023-09-300001860543us-gaap:NonUsMember2022-07-012022-09-300001860543country:US2022-07-012022-09-300001860543cdre:U.s.stateAndLocalAgenciesMember2022-07-012022-09-300001860543cdre:U.s.FederalAgenciesMember2022-07-012022-09-300001860543cdre:OtherMember2022-07-012022-09-300001860543cdre:InternationalMember2022-07-012022-09-300001860543cdre:CommercialMember2022-07-012022-09-300001860543us-gaap:NonUsMember2022-01-012022-09-300001860543country:US2022-01-012022-09-300001860543cdre:U.s.stateAndLocalAgenciesMember2022-01-012022-09-300001860543cdre:U.s.FederalAgenciesMember2022-01-012022-09-300001860543cdre:OtherMember2022-01-012022-09-300001860543cdre:InternationalMember2022-01-012022-09-300001860543cdre:CommercialMember2022-01-012022-09-3000018605432022-06-300001860543cdre:KandersCompanyIncMember2022-06-092022-06-090001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-07-012023-09-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-04-012023-06-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-03-310001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-07-012022-09-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-04-012022-06-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-03-3100018605432021-09-012021-09-300001860543srt:MinimumMembercdre:CanadianCreditFacilityMember2023-01-012023-09-300001860543srt:MaximumMembercdre:CanadianCreditFacilityMember2023-01-012023-09-300001860543us-gaap:RevolvingCreditFacilityMembercdre:CanadianCreditFacilityMember2021-10-140001860543us-gaap:LetterOfCreditMembercdre:CanadianCreditFacilityMember2021-10-140001860543us-gaap:RevolvingCreditFacilityMembercdre:NewCreditAgreementAugust2021Member2021-08-200001860543us-gaap:LetterOfCreditMembercdre:NewCreditAgreementAugust2021Member2021-08-200001860543cdre:SwingLineLoansMembercdre:NewCreditAgreementAugust2021Member2021-08-200001860543us-gaap:RevolvingCreditFacilityMembercdre:CanadianCreditFacilityMember2022-12-310001860543us-gaap:LetterOfCreditMembercdre:NewCreditAgreementAugust2021Member2023-09-300001860543srt:MaximumMember2023-09-300001860543us-gaap:TradeNamesMember2023-09-300001860543us-gaap:TradeNamesMember2022-12-310001860543cdre:CyalumeAcquisitionMember2023-01-012023-09-300001860543cdre:ProductsMember2023-07-012023-09-300001860543cdre:ProductsMember2023-04-012023-06-300001860543cdre:ProductsMember2023-01-012023-03-310001860543cdre:ProductsMember2023-09-300001860543cdre:DistributionServicesMember2023-09-300001860543cdre:ProductsMember2023-06-300001860543cdre:DistributionServicesMember2023-06-3000018605432023-06-300001860543cdre:ProductsMember2023-03-310001860543cdre:DistributionServicesMember2023-03-3100018605432023-03-310001860543cdre:ProductsMember2022-12-310001860543cdre:DistributionServicesMember2022-12-310001860543cdre:CyalumeAcquisitionMemberus-gaap:TrademarksMember2022-05-042022-05-040001860543us-gaap:TradeNamesMember2023-09-300001860543us-gaap:TechnologyBasedIntangibleAssetsMember2023-09-300001860543us-gaap:NoncompeteAgreementsMember2023-09-300001860543us-gaap:CustomerRelationshipsMember2023-09-300001860543us-gaap:TradeNamesMember2022-12-310001860543us-gaap:TechnologyBasedIntangibleAssetsMember2022-12-310001860543us-gaap:NoncompeteAgreementsMember2022-12-310001860543us-gaap:CustomerRelationshipsMember2022-12-310001860543us-gaap:RetainedEarningsMember2023-07-012023-09-300001860543us-gaap:RetainedEarningsMember2023-04-012023-06-300001860543us-gaap:RetainedEarningsMember2023-01-012023-03-310001860543us-gaap:RetainedEarningsMember2022-07-012022-09-300001860543us-gaap:RetainedEarningsMember2022-04-012022-06-300001860543us-gaap:RetainedEarningsMember2022-01-012022-03-310001860543us-gaap:InterestRateSwapMember2023-09-300001860543cdre:InterestRateSwapTwoMember2023-05-310001860543cdre:InterestRateSwapOneMember2023-05-310001860543cdre:InterestRateSwapTwoMember2023-09-300001860543cdre:InterestRateSwapOneMember2023-09-300001860543us-gaap:OtherCurrentAssetsMemberus-gaap:InterestRateSwapMember2023-09-300001860543us-gaap:OtherAssetsMemberus-gaap:InterestRateSwapMember2023-09-300001860543us-gaap:OtherCurrentAssetsMemberus-gaap:InterestRateSwapMember2022-12-310001860543us-gaap:OtherAssetsMemberus-gaap:InterestRateSwapMember2022-12-310001860543cdre:ExecutiveCompensationPlanMember2022-03-092022-03-090001860543cdre:InterestRateSwapTwoMember2023-01-012023-09-300001860543cdre:InterestRateSwapOneMember2023-01-012023-09-300001860543cdre:TermLoanMembercdre:NewCreditAgreementAugust2021Member2021-08-202021-08-200001860543us-gaap:RevolvingCreditFacilityMembercdre:NewCreditAgreementAugust2021Member2023-09-300001860543cdre:TermLoanMember2023-09-300001860543cdre:OtherLongTermDebtMember2023-09-300001860543us-gaap:RevolvingCreditFacilityMembercdre:NewCreditAgreementAugust2021Member2022-12-310001860543cdre:TermLoanMember2022-12-310001860543cdre:OtherLongTermDebtMember2022-12-310001860543cdre:TermLoanMembercdre:NewCreditAgreementAugust2021Member2021-08-200001860543srt:MinimumMembercdre:NewCreditAgreementAugust2021Memberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2023-05-312023-09-300001860543srt:MinimumMembercdre:NewCreditAgreementAugust2021Memberus-gaap:BaseRateMember2023-05-312023-09-300001860543srt:MaximumMembercdre:NewCreditAgreementAugust2021Memberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2023-05-312023-09-300001860543srt:MaximumMembercdre:NewCreditAgreementAugust2021Memberus-gaap:BaseRateMember2023-05-312023-09-300001860543srt:MinimumMembercdre:CanadianCreditFacilityMemberus-gaap:BaseRateMember2023-01-012023-09-300001860543srt:MinimumMembercdre:CanadianCreditFacilityMembercdre:LondonInterbankOfferedRateMember2023-01-012023-09-300001860543srt:MaximumMembercdre:CanadianCreditFacilityMemberus-gaap:BaseRateMember2023-01-012023-09-300001860543srt:MaximumMembercdre:CanadianCreditFacilityMembercdre:LondonInterbankOfferedRateMember2023-01-012023-09-300001860543us-gaap:OperatingSegmentsMembercdre:ProductsMember2023-07-012023-09-300001860543us-gaap:OperatingSegmentsMembercdre:DistributionServicesMember2023-07-012023-09-300001860543us-gaap:MaterialReconcilingItemsMember2023-07-012023-09-300001860543us-gaap:OperatingSegmentsMembercdre:ProductsMember2023-01-012023-09-300001860543us-gaap:OperatingSegmentsMembercdre:DistributionServicesMember2023-01-012023-09-300001860543us-gaap:MaterialReconcilingItemsMember2023-01-012023-09-300001860543us-gaap:OperatingSegmentsMembercdre:ProductsMember2022-07-012022-09-300001860543us-gaap:OperatingSegmentsMembercdre:DistributionServicesMember2022-07-012022-09-300001860543us-gaap:MaterialReconcilingItemsMember2022-07-012022-09-300001860543us-gaap:OperatingSegmentsMembercdre:ProductsMember2022-01-012022-09-300001860543us-gaap:OperatingSegmentsMembercdre:DistributionServicesMember2022-01-012022-09-300001860543us-gaap:MaterialReconcilingItemsMember2022-01-012022-09-300001860543us-gaap:CommonStockMember2023-09-300001860543us-gaap:CommonStockMember2023-06-300001860543us-gaap:CommonStockMember2023-03-310001860543us-gaap:CommonStockMember2022-12-310001860543us-gaap:CommonStockMember2022-09-300001860543us-gaap:CommonStockMember2022-06-300001860543us-gaap:CommonStockMember2022-03-310001860543us-gaap:CommonStockMember2021-12-3100018605432022-09-3000018605432021-12-310001860543cdre:CyalumeAcquisitionMember2022-05-042022-05-040001860543cdre:RadarLeatherDivisionS.r.lMember2022-01-112022-01-110001860543cdre:CyalumeAcquisitionMember2022-01-012022-12-310001860543us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel2Memberus-gaap:EstimateOfFairValueFairValueDisclosureMemberus-gaap:FairValueMeasurementsRecurringMember2023-09-300001860543us-gaap:InterestRateSwapMemberus-gaap:CarryingReportedAmountFairValueDisclosureMemberus-gaap:FairValueMeasurementsRecurringMember2023-09-300001860543us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel2Memberus-gaap:EstimateOfFairValueFairValueDisclosureMemberus-gaap:FairValueMeasurementsRecurringMember2022-12-310001860543us-gaap:InterestRateSwapMemberus-gaap:CarryingReportedAmountFairValueDisclosureMemberus-gaap:FairValueMeasurementsRecurringMember2022-12-310001860543us-gaap:AdditionalPaidInCapitalMember2023-07-012023-09-300001860543us-gaap:AdditionalPaidInCapitalMember2023-04-012023-06-3000018605432023-04-012023-06-300001860543us-gaap:AdditionalPaidInCapitalMember2023-01-012023-03-3100018605432023-01-012023-03-310001860543us-gaap:AdditionalPaidInCapitalMember2022-07-012022-09-300001860543us-gaap:AdditionalPaidInCapitalMember2022-04-012022-06-3000018605432022-04-012022-06-300001860543us-gaap:AdditionalPaidInCapitalMember2022-01-012022-03-3100018605432022-01-012022-03-310001860543cdre:CyalumeAcquisitionMemberus-gaap:TechnologyBasedIntangibleAssetsMember2022-05-042022-05-040001860543cdre:CyalumeAcquisitionMemberus-gaap:CustomerRelationshipsMember2022-05-042022-05-040001860543cdre:RadarLeatherDivisionS.r.lMemberus-gaap:TrademarksMember2022-01-112022-01-110001860543cdre:RadarLeatherDivisionS.r.lMemberus-gaap:TechnologyBasedIntangibleAssetsMember2022-01-112022-01-110001860543cdre:RadarLeatherDivisionS.r.lMemberus-gaap:CustomerRelationshipsMember2022-01-112022-01-1100018605432023-11-030001860543cdre:KandersCompanyIncMember2022-01-012022-09-3000018605432022-07-012022-09-300001860543us-gaap:OverAllotmentOptionMember2022-07-142022-07-1400018605432022-06-092022-06-090001860543srt:MinimumMembercdre:NewCreditAgreementAugust2021Member2023-09-300001860543srt:MaximumMembercdre:NewCreditAgreementAugust2021Member2023-09-3000018605432023-07-012023-09-3000018605432023-09-3000018605432022-12-310001860543srt:MaximumMembercdre:ScenarioPeriodThreeMembercdre:NewCreditAgreementAugust2021Member2023-01-012023-09-300001860543cdre:ScenarioPeriodTwoMembercdre:NewCreditAgreementAugust2021Member2023-01-012023-09-300001860543us-gaap:RevolvingCreditFacilityMembercdre:CanadianCreditFacilityMember2023-09-300001860543cdre:NewCreditAgreementAugust2021Member2023-01-012023-09-300001860543cdre:ScenarioPeriodOneMembercdre:NewCreditAgreementAugust2021Member2023-01-012023-09-3000018605432023-01-012023-09-300001860543cdre:LongTermIncentivePlanMember2021-03-312021-03-310001860543cdre:LongTermIncentivePlanMember2023-07-012023-09-300001860543cdre:LongTermIncentivePlanMember2023-01-012023-09-300001860543cdre:LongTermIncentivePlanMember2022-07-012022-09-300001860543cdre:LongTermIncentivePlanMember2022-01-012022-09-300001860543cdre:ExecutiveCompensationPlanMember2023-01-012023-09-300001860543cdre:ExecutiveCompensationPlanMember2022-03-180001860543cdre:ExecutiveCompensationPlanMember2022-03-090001860543cdre:CyalumeAcquisitionMember2022-05-040001860543cdre:RadarLeatherDivisionS.r.lMember2022-01-110001860543cdre:RadarLeatherDivisionS.r.lMember2022-01-012022-12-3100018605432022-01-012022-09-30iso4217:USDiso4217:USDxbrli:sharesxbrli:sharesxbrli:purecdre:warehousecdre:installmentcdre:itemiso4217:CADcdre:segment

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

Washington, D.C. 20549

FORM 10-Q

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

For the quarterly period ended: September 30, 2023

or

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

For the transition period from _________ to _________

Commission File Number: 001-40698

CADRE HOLDINGS, INC.

(Exact name of registrant as specified in its charter)

Delaware

    

38-3873146

(State or other jurisdiction of

incorporation or organization)

(I.R.S. Employer

Identification Number)

13386 International Pkwy

Jacksonville, Florida

    

32218

(Address of principal executive offices)

(Zip code)

(904) 741-5400

(Registrant’s telephone number, including area code)

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.0001 per share

CDRE

New York Stock Exchange

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 and posted on its corporate Web site, if any, every Interactive Data File required to be submitted and posted 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 and post 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

    

Non-accelerated filer

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

As of November 3, 2023, there were 37,586,031 shares of common stock, par value $0.0001, outstanding.

INDEX

CADRE HOLDINGS, INC.

PART I

FINANCIAL INFORMATION

Page

Item 1.

Financial Statements (Unaudited)

Condensed Consolidated Balance Sheets – September 30, 2023 and December 31, 2022

5

Condensed Consolidated Statements of Operations and Comprehensive Income – Three and nine months ended September 30, 2023 and 2022

6

Condensed Consolidated Statements of Cash Flows –Nine months ended September 30, 2023 and 2022

7

Condensed Consolidated Statements of Shareholders’ Equity – Three and nine months ended September 30, 2023 and 2022

8

Notes to Condensed Consolidated Financial Statements

10

Item 2.

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

27

Item 3.

Quantitative and Qualitative Disclosures About Market Risk

39

Item 4.

Controls and Procedures

40

PART II

OTHER INFORMATION

Item 1.

Legal Proceedings

41

Item 1A.

Risk Factors

41

Item 6.

Exhibits

41

Signature Page

42

2

This Quarterly Report on Form 10-Q (this “Report”) contains “forward-looking statements” within the meaning of the safe harbor provisions of the U.S. Private Securities Litigation Reform Act of 1995. Except where the context otherwise requires or where otherwise indicated, the terms the “Company”, “Cadre”, “we,” “us,” and “our,” refer to the consolidated business of Cadre Holdings, Inc. and its consolidated subsidiaries. All statements in this Report, other than statements of historical fact, are forward-looking statements. These forward-looking statements are based on management’s current expectations, assumptions, hopes, beliefs, intentions, and strategies regarding future events and are based on currently available information as to the outcome and timing of future events. In some cases, you can identify forward-looking statements because they contain words such as “believe,” “may,” “will,” “estimate,” “continue,” “anticipate,” “intend,” “expect,” “should,” “would,” “could,” “plan,” “predict,” “potential,” “seem,” “seek,” “future,” “outlook,” or the negative of these words or other similar terms or expressions that concern our expectations, strategy, plans, or intentions. The Company cautions you that these forward-looking statements are subject to all of the risks and uncertainties, most of which are difficult to predict and many of which are beyond the control of the Company, incident to its business.

Because forward-looking statements relate to the future, they are subject to inherent uncertainties, risks and changes in circumstances that are difficult to predict and many of which are outside of our control. These forward-looking statements are based on information available as of the date of this Report (or, in the case of forward-looking statements incorporated herein by reference, if any, as of the date of the applicable filed document), and any accompanying supplement, and current expectations, forecasts and assumptions, and involve a number of risks and uncertainties. Accordingly, forward-looking statements should not be relied upon as representing the Company’s views as of any subsequent date, and the Company does not undertake any obligation to update forward-looking statements to reflect events or circumstances after the date they were made, whether as a result of new information, future events or otherwise, except as may be required under applicable securities laws. New risks and uncertainties emerge from time to time and it is not possible for us to predict all risks and uncertainties that could have an impact on the forward-looking statements contained in this Report. We cannot assure you that the results, events, and circumstances reflected in the forward-looking statements will be achieved or occur, and actual results, events, or circumstances could differ materially from those described in the forward-looking statements. We may not actually achieve the plans, intentions, or expectations disclosed in our forward-looking statements and you should not place undue reliance on our forward-looking statements. In addition, statements that “we believe” and similar statements reflect our beliefs and opinions on the relevant subject. Our forward-looking statements do not reflect the potential impact of any future acquisitions, partnerships, mergers, dispositions, joint ventures, or investments we may make.

As a result of a number of known and unknown risks and uncertainties, our actual results or performance may be materially different from those expressed or implied by these forward-looking statements. Some factors that could cause actual results to differ include:

the availability of capital to satisfy our working capital requirements;
anticipated trends and challenges in our business and the markets in which we operate;
our ability to anticipate market needs or develop new or enhanced products to meet those needs;
our expectations regarding market acceptance of our products;
the success of competing products by others that are or become available in the market in which we sell our products;
the impact of adverse publicity about the Company and/or its brands, including without limitation, through social media or in connection with brand damaging events and/or public perception;
changes in political, economic or regulatory conditions generally and in the markets in which we operate;
the impact of political unrest, natural disasters or other crises, terrorist acts, acts of war and/or military operations;
our ability to maintain or broaden our business relationships and develop new relationships with strategic alliances, suppliers,

customers, distributors or otherwise;

our ability to retain and attract senior management and other key employees;

3

our ability to quickly and effectively respond to new technological developments;
the effect of an outbreak of disease or similar public health threat, such as the COVID-19 pandemic, on the Company’s business;
logistical challenges related to supply chain disruptions and delays;
the impact of inflationary pressures and our ability to mitigate such impacts with pricing and productivity;
the possibility that the Company may be adversely affected by other economic, business, and/or competitive factors;
the ability of our information technology systems or information security systems to operate effectively, including as a result of security breaches, viruses, hackers, malware, natural disasters, vendor business interruptions or other causes;
our ability to properly maintain, protect, repair or upgrade our information technology systems or information security systems, or problems with our transitioning to upgraded or replacement systems;
our ability to protect our trade secrets or other proprietary rights and operate without infringing upon the proprietary rights of others and prevent others from infringing on the proprietary rights of the Company;
our ability to maintain a quarterly dividend;
the expenses associated with being a public company, including but not limited to expenses associated with disclosure and reporting obligations;
any material differences in the actual financial results of the Company’s past and future acquisitions as compared with the Company’s expectations; and
other risks and uncertainties set forth in the section entitled “Risk Factors” of our Annual Report on Form 10-K for the year ended December 31, 2022, which are incorporated herein by reference.

We caution you that the foregoing list may not contain all of the forward-looking statements made in this Quarterly Report on Form 10-Q. Other risks and uncertainties are and will be disclosed in our prior and future filings with the Securities and Exchange Commission (“SEC”) and this information should be read in conjunction with the Condensed Consolidated Financial Statements included in this Report.

Neither we nor any other person assumes responsibility for the accuracy and completeness of any of these forward-looking statements.

4

PART I. FINANCIAL INFORMATION

ITEM 1. FINANCIAL STATEMENTS

CADRE HOLDINGS, INC.

CONDENSED CONSOLIDATED BALANCE SHEETS

(Unaudited)

(In thousands, except share and per share amounts)

September 30, 2023

    

December 31, 2022

Assets

 

  

 

  

Current assets

 

  

 

  

Cash and cash equivalents

$

69,412

$

45,286

Accounts receivable, net of allowance for doubtful accounts of $819 and $924, respectively

61,261

64,557

Inventories

 

82,546

 

70,273

Prepaid expenses

 

14,667

 

10,091

Other current assets

 

8,836

 

6,811

Total current assets

 

236,722

 

197,018

Property and equipment, net of accumulated depreciation and amortization of $48,994 and $42,694, respectively

 

43,657

 

45,285

Operating lease assets

6,643

8,489

Deferred tax assets, net

 

2,299

 

2,255

Intangible assets, net

 

44,333

 

50,695

Goodwill

 

81,212

 

81,576

Other assets

 

5,639

 

6,634

Total assets

$

420,505

$

391,952

Liabilities, Mezzanine Equity and Shareholders' Equity

 

  

 

  

Current liabilities

 

  

 

  

Accounts payable

$

30,733

$

23,406

Accrued liabilities

 

38,673

 

38,720

Income tax payable

 

7,049

 

4,584

Current portion of long-term debt

 

13,251

 

12,211

Total current liabilities

 

89,706

 

78,921

Long-term debt

 

130,309

 

137,476

Long-term operating lease liabilities

3,603

4,965

Deferred tax liabilities

 

5,047

 

3,508

Other liabilities

 

1,843

 

1,192

Total liabilities

 

230,508

 

226,062

Commitments and contingencies (Note 7)

 

 

  

Mezzanine equity

 

 

  

Preferred stock ($0.0001 par value, 10,000,000 shares authorized, no shares issued and outstanding as of September 30, 2023 and December 31, 2022)

 

 

Shareholders' equity

 

 

  

Common stock ($0.0001 par value, 190,000,000 shares authorized, 37,586,031 and 37,332,271 shares issued and outstanding as of September 30, 2023 and December 31, 2022, respectively)

 

4

 

4

Additional paid-in capital

 

210,543

 

206,540

Accumulated other comprehensive income

 

2,143

 

2,087

Accumulated deficit

 

(22,693)

 

(42,741)

Total shareholders’ equity

 

189,997

 

165,890

Total liabilities, mezzanine equity and shareholders' equity

$

420,505

$

391,952

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

5

CADRE HOLDINGS, INC.

CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND

COMPREHENSIVE INCOME

(Unaudited)

(In thousands, except share and per share amounts)

Three Months Ended

Nine Months Ended

September 30, 

September 30, 

    

2023

    

2022

    

2023

    

2022

Net sales

$

125,114

$

111,554

$

357,949

$

334,192

Cost of goods sold

 

71,511

 

67,814

 

206,981

 

207,042

Gross profit

 

53,603

 

43,740

 

150,968

 

127,150

Operating expenses

 

 

  

 

  

 

  

Selling, general and administrative

 

36,314

 

31,732

 

105,615

 

118,431

Restructuring and transaction costs

 

439

 

1,578

 

1,132

 

3,380

Related party expense

 

116

 

112

 

379

 

1,346

Total operating expenses

 

36,869

 

33,422

 

107,126

 

123,157

Operating income

 

16,734

 

10,318

 

43,842

 

3,993

Other expense

 

  

 

  

 

  

 

  

Interest expense

 

(1,073)

 

(1,567)

 

(3,727)

 

(4,496)

Other (expense) income, net

 

(315)

 

(1,851)

 

395

 

(2,812)

Total other expense, net

 

(1,388)

 

(3,418)

 

(3,332)

 

(7,308)

Income (loss) before provision for income taxes

 

15,346

 

6,900

 

40,510

 

(3,315)

(Provision) benefit for income taxes

 

(4,293)

 

(1,959)

 

(11,463)

 

2,536

Net income (loss)

$

11,053

$

4,941

$

29,047

$

(779)

Net income (loss) per share:

 

  

 

  

 

  

 

  

Basic

$

0.29

$

0.13

$

0.77

$

(0.02)

Diluted

$

0.29

$

0.13

$

0.77

$

(0.02)

Weighted average shares outstanding:

 

  

 

  

 

  

 

  

Basic

 

37,586,031

 

37,289,880

 

37,515,976

 

35,697,891

Diluted

 

37,930,888

 

37,747,614

 

37,830,790

 

35,697,891

Net income (loss)

$

11,053

$

4,941

$

29,047

$

(779)

Other comprehensive income:

 

  

 

  

 

  

 

  

Unrealized holding gains, net of tax(1)

1,131

2,350

2,281

6,414

Reclassification adjustments for gains included in net income (loss), net of tax(2)

(884)

(252)

(2,266)

(106)

Total unrealized gain on interest rate swaps, net of tax

247

2,098

15

6,308

Foreign currency translation adjustments, net of tax(3)

 

(850)

 

(2,839)

 

41

 

(5,237)

Other comprehensive (loss) income

(603)

(741)

56

1,071

Comprehensive income, net of tax

$

10,450

$

4,200

$

29,103

$

292

(1) Net of income tax expense of $377 and $783 for the three months ended September 30, 2023 and 2022, respectively, and $760 and $2,138 for the nine months ended September 30, 2023 and 2022, respectively.

(2) Amounts reclassified to net income (loss) relate to (gains) losses on interest rate swaps and are included in Interest expense above. Amounts are net of income tax expense of $295 and $84 for the three months ended September 30, 2023 and 2022, respectively, and $755 and $35 for the nine months ended September 30, 2023 and 2022, respectively.

(3) Net of income tax benefit of $170 and $916 for the three months ended September 30, 2023 and 2022, respectively, and income tax expense of $55 and income tax benefit of $934 for the nine months ended September 30, 2023 and 2022, respectively.

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

6

CADRE HOLDINGS, INC.

CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS

(Unaudited)

(In thousands)

Nine Months Ended September 30, 

    

2023

    

2022

Cash Flows From Operating Activities:

 

  

 

  

Net income (loss)

$

29,047

$

(779)

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

 

  

 

  

Depreciation and amortization

 

12,385

 

11,319

Amortization of original issue discount and debt issue costs

 

359

 

554

Amortization of inventory step-up

3,055

Deferred income taxes

 

1,317

 

(2,755)

Stock-based compensation

7,060

28,988

Gain on sale of fixed assets

(98)

Provision for losses on accounts receivable

 

37

 

245

Foreign exchange (gain) loss

 

(243)

 

3,006

Other

(296)

Changes in operating assets and liabilities, net of impact of acquisitions:

 

 

Accounts receivable

 

3,429

 

(3,271)

Inventories

 

(12,229)

 

(7,187)

Prepaid expenses and other assets

 

(3,131)

 

986

Accounts payable and other liabilities

 

8,623

 

(4,660)

Net cash provided by operating activities

 

46,260

 

29,501

Cash Flows From Investing Activities:

 

  

 

  

Purchase of property and equipment

 

(4,248)

 

(2,938)

Proceeds from disposition of property and equipment

206

Business acquisitions, net of cash acquired

 

 

(55,039)

Net cash used in investing activities

 

(4,042)

 

(57,977)

Cash Flows From Financing Activities:

 

  

 

  

Proceeds from revolving credit facilities

 

 

43,000

Principal payments on revolving credit facilities

 

 

(43,000)

Principal payments on term loans

 

(7,500)

 

(7,514)

Proceeds from insurance premium financing

3,949

3,989

Principal payments on insurance premium financing

 

(2,909)

 

(3,878)

Payment of capital leases

 

 

(26)

Taxes paid in connection with employee stock transactions

(2,725)

(6,216)

Proceeds from secondary offering, net of underwriter discounts

56,329

Deferred offering costs

(2,953)

Dividends distributed

 

(8,999)

 

(8,521)

Net cash (used in) provided by financing activities

 

(18,184)

 

31,210

Effect of foreign exchange rates on cash and cash equivalents

 

92

 

(241)

Change in cash and cash equivalents

 

24,126

 

2,493

Cash and cash equivalents, beginning of period

 

45,286

 

33,857

Cash and cash equivalents, end of period

$

69,412

$

36,350

Supplemental Disclosure of Cash Flows Information:

Cash paid for income taxes, net

$

7,923

$

710

Cash paid for interest

$

7,389

$

3,860

Supplemental Disclosure of Non-Cash Investing and Financing Activities:

Accruals and accounts payable for capital expenditures

$

24

$

272

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

7

CADRE HOLDINGS, INC.

CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS’ EQUITY

(Unaudited)

(In thousands, except per share amounts)

Additional 

Common Stock

Paid-In 

Accumulated Other 

Accumulated 

Shareholders' 

    

Shares

    

Amount

    

Capital

    

Comprehensive Income

    

Deficit

    

Equity

Balance, December 31, 2022

 

37,332,271

 

$

4

 

$

206,540

 

$

2,087

 

$

(42,741)

 

$

165,890

Net income

 

7,002

7,002

Dividends declared ($0.08 per share)

(2,986)

(2,986)

Stock-based compensation

2,636

2,636

Common stock issued under employee compensation plans

395,837

Common stock withheld related to net share settlement of stock-based compensation

(142,077)

(2,725)

(2,725)

Foreign currency translation adjustments

 

706

706

Change in fair value of derivative instruments

(1,073)

(1,073)

Balance, March 31, 2023

 

37,586,031

$

4

$

206,451

$

1,720

$

(38,725)

$

169,450

Net income

 

 

 

 

 

10,992

 

10,992

Dividends declared ($0.08 per share)

 

 

 

(3,007)

(3,007)

Stock-based compensation

2,041

2,041

Foreign currency translation adjustments

185

185

Change in fair value of derivative instruments

841

841

Balance, June 30, 2023

 

37,586,031

$

4

$

208,492

$

2,746

$

(30,740)

$

180,502

Net income

 

 

 

 

 

11,053

 

11,053

Issuance of common stock in secondary offering, net of underwriter discounts and issuance costs

Dividends declared ($0.08 per share)

(3,006)

(3,006)

Stock-based compensation

2,051

2,051

Foreign currency translation adjustments

 

 

 

 

(850)

 

 

(850)

Change in fair value of derivative instruments

 

 

 

 

247

 

 

247

Balance, September 30, 2023

 

37,586,031

$

4

$

210,543

$

2,143

$

(22,693)

$

189,997

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

8

CADRE HOLDINGS, INC.

CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS’ EQUITY - CONTINUED

(Unaudited)

(In thousands, except per share amounts)

Additional 

Common Stock

Paid-In 

Accumulated Other 

Accumulated 

Shareholders' 

    

Shares

    

Amount

    

Capital

    

Comprehensive (Loss) Income

    

Deficit

    

Equity

Balance, December 31, 2021

 

34,383,350

$

3

$

127,606

$

(1,917)

$

(37,052)

$

88,640

Net loss

 

 

 

 

 

(10,165)

 

(10,165)

Dividends declared ($0.08 per share)

 

 

 

 

 

(2,750)

 

(2,750)

Stock-based compensation

22,436

22,436

Common stock issued under employee compensation plans

580,990

1,152

1,152

Common stock withheld related to net share settlement of stock-based compensation

(182,069)

(6,216)

(6,216)

Foreign currency translation adjustments

(360)

(360)

Change in fair value of derivative instruments

3,208

3,208

Balance, March 31, 2022

 

34,782,271

$

3

$

144,978

$

931

$

(49,967)

$

95,945

Net income

 

 

 

 

 

4,445

 

4,445

Issuance of common stock in secondary offering, net of underwriter discounts and issuance costs

2,250,000

1

46,987

46,988

Dividends declared ($0.08 per share)

(2,783)

(2,783)

Stock-based compensation

2,739

2,739

Foreign currency translation adjustments

 

 

 

 

(2,038)

 

(2,038)

Change in fair value of derivative instruments

1,002

1,002

Balance, June 30, 2022

 

37,032,271

$

4

$

194,704

$

(105)

$

(48,305)

$

146,298

Net income

 

 

 

 

 

4,941

 

4,941

Issuance of common stock in secondary offering, net of underwriter discounts and issuance costs

300,000

6,389

6,389

Dividends declared

(2,988)

(2,988)

Stock-based compensation

2,661

2,661

Foreign currency translation adjustments

 

 

 

 

(2,839)

 

(2,839)

Change in fair value of derivative instruments

 

 

 

 

2,098

 

 

2,098

Balance, September 30, 2022

 

37,332,271

$

4

$

203,754

$

(846)

$

(46,352)

$

156,560

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

9

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS

(Unaudited)

(in thousands, except share and per share amounts)

1.    SIGNIFICANT ACCOUNTING POLICIES

Nature of Operations and Basis of Presentation

Cadre Holdings, Inc., D/B/A The Safariland Group (the “Company”, “Cadre”, “we”, “us”, and “our”), a Delaware corporation, began operations on April 12, 2012. The Company, headquartered in Jacksonville, Florida, is a global leader in manufacturing and distributing safety and survivability products and other related products for the law enforcement, first responder and military markets. The business operates through 16 manufacturing plants within the U.S., Mexico, Canada, the United Kingdom, Italy, France, and Lithuania, and sells its products worldwide through its direct sales force, distribution channel and distribution partners, online stores, and third-party resellers.

Principles of Consolidation

The accompanying condensed consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP" or “U.S. GAAP”) and applicable rules and regulations of the Securities and Exchange Commission (“SEC”) regarding interim financial reporting, and include the accounts of the Company, its wholly owned subsidiaries, and other entities consolidated as required by GAAP. Accordingly, they do not include all of the information and footnotes required by GAAP for annual audited financial statements. The unaudited condensed consolidated interim financial statements have been prepared on a basis consistent with the audited consolidated financial statements and include all adjustments, which are normal and recurring in nature, necessary for fair financial statement presentation. These condensed consolidated interim financial statements and notes thereto should be read in conjunction with the Company’s most recently completed annual consolidated financial statements. All adjustments considered necessary for a fair presentation have been included. All intercompany balances and transactions have been eliminated in consolidation.

Secondary Offering

On June 9, 2022, the Company completed a secondary offering in which the Company issued and sold 2,250,000 shares of common stock at a price of $23.50 per share. The Company’s net proceeds from the sale of shares were $46,988 after underwriter discounts and commissions, fees and expenses of $2,715, of which $2,000 was paid to Kanders & Company, Inc., a company controlled by Warren Kanders, our Chief Executive Officer.

On July 14, 2022, the underwriters exercised a portion of their over-allotment option and purchased an additional 300,000 shares of common stock at a price of $23.50 per share, resulting in net proceeds to the Company of $6,627 after underwriter discounts and commissions, fees and expenses of $423.

Emerging Growth Company

We are an “emerging growth company,” as defined in the Jumpstart Our Business Startups Act of 2012 (the “JOBS Act”). As such, we are eligible for exemptions from various reporting requirements applicable to other public companies that are not emerging growth companies, including, but not limited to, presenting only two years of audited financial statements, not being required to comply with the auditor attestation requirements of Section 404 of the Sarbanes-Oxley Act of 2002, reduced disclosure obligations regarding executive compensation, and an exemption from the requirements to obtain a non-binding advisory vote on executive compensation or golden parachute arrangements.

In addition, an emerging growth company can take advantage of an extended transition period for complying with new or revised accounting standards. This provision allows an emerging growth company to delay the adoption of certain accounting standards until those standards would otherwise apply to private companies. We have elected to avail ourselves of this provision of the JOBS Act. As a result, we will not be subject to new or revised accounting standards at the same time as other public companies that are not emerging growth companies. Therefore, our condensed consolidated financial statements may not be comparable to those of companies that comply with new or revised accounting pronouncements as of public company effective dates.

10

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

Use of Estimates

The preparation of these condensed consolidated financial statements 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 revenue and expenses during the reporting period. Actual results could differ from these estimates.

Fair Value Measurements

The Company follows the guidance of Accounting Standards Codification (“ASC”) Topic 820, Fair Value Measurements and Disclosures, which defines fair value, establishes a framework for measuring fair value and expands disclosures about fair value measurements. This guidance also establishes the following three-level hierarchy based upon the transparency of inputs to the valuation of an asset or liability on the measurement date:

Level 1: Observable inputs that reflect unadjusted quoted prices for identical assets or liabilities traded in active markets.

Level 2: Inputs other than quoted prices included within Level 1 that are observable for the asset or liability, either directly or indirectly, for substantially the full term of the asset or liability.

Level 3: Unobservable inputs that reflect assumptions about what market participants would use in pricing assets or liabilities based on the best information available.

The Company’s financial instruments consist principally of cash, accounts receivable, prepaid expenses, other current assets, accounts payable, accrued liabilities, income tax payable and debt. The carrying amounts of certain of these financial instruments, including cash, accounts receivable, prepaid expenses, other current assets, accounts payable, accrued liabilities and income tax payable approximate their current fair value due to the relatively short-term nature of these accounts.

The following table presents our fair value hierarchy for those assets and liabilities measured at fair value on a recurring basis:

September 30, 2023

December 31, 2022

Carrying 

Fair Value

Carrying 

Fair Value

    

Amount

    

Level 1

    

Level 2

    

Level 3

    

Amount

    

Level 1

    

Level 2

    

Level 3

Assets:

 

  

 

  

 

  

 

  

 

  

 

  

 

  

 

  

Interest rate swaps (Note 6)

$

9,303

$

$

9,303

$

$

8,985

$

$

8,985

$

Liabilities:

Interest rate swaps (Note 6)

There were no transfers of assets or liabilities between levels during the nine months ended September 30, 2023 and 2022.

There have not been material changes in the fair value of debt (Level 2), as compared to the carrying value, as of September 30, 2023 and December 31, 2022.

Revenue Recognition

The Company derives revenue primarily from the sale of physical products. The Company recognizes revenue when a contract exists with a customer that specifies the goods and services to be provided at an agreed upon sales price and when the performance obligation is satisfied by transferring the goods or service to the customer. The performance obligation is considered satisfied when control transfers, which is generally determined when products are shipped or delivered to the customer but could be delayed until the receipt

11

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

of customer acceptance, depending on the terms of the contract. Sales are made on normal and customary short-term credit terms or upon delivery for point of sale transactions.

The Company enters into contractual arrangements primarily with customers in the form of individual customer orders which specify the goods, quantity, pricing, and associated order terms. The Company has some long-term contracts that may contain research and development performance obligations that are satisfied over time. The Company invoices the customer once the billing milestone is reached and collects under customary short-term credit terms. For long-term contracts, the Company recognizes revenue using the input method based on costs incurred, as this method is an appropriate measure of progress toward the complete satisfaction of the performance obligation. Due to uncertainties inherent in the estimation process, it is possible that estimates of costs to complete a performance obligation will be revised in the near-term. For those performance obligations for which revenue is recognized using a cost-to-cost input method, changes in total estimated costs, and related progress towards complete satisfaction of the performance obligation, are recognized on a cumulative catch-up basis in the period in which the revisions to the estimates are made. When the current estimate of total costs for a performance obligation indicates a loss, a provision for the entire estimated loss on the unsatisfied performance obligation is made in the period in which the loss becomes evident. Revenue related to contracts recognized over time do not represent a material portion of the Company’s overall revenue.  

At the time of revenue recognition, the Company also provides for estimated sales returns and miscellaneous claims from customers as reductions to revenues. The estimates are based on historical rates of product returns and claims. The Company accrues for such estimated returns and claims with an estimated accrual and associated reduction of revenue. Additionally, the Company records inventory that it expects to be returned as part of inventories, with a corresponding reduction to cost of goods sold.

Charges for shipping and handling fees billed to customers are included in net sales and the corresponding shipping and handling expenses are included in cost of goods sold in the accompanying condensed consolidated statements of operations and comprehensive income. We consider our costs related to shipping and handling after control over a product has transferred to a customer to be a cost of fulfilling the promise to transfer the product to the customer.

Sales commissions paid to employees as compensation are expensed as incurred for contracts with service periods less than a year. For contracts with service periods greater than a year, these costs have historically been immaterial and are capitalized and amortized over the life of the contract. Commission costs are recorded in selling, general and administrative expenses in the Company’s condensed consolidated statements of operations and comprehensive income.

Product Warranty

Some of the Company’s manufactured products carry limited warranty provisions for defects in quality and workmanship. A warranty reserve is established at the time of sale to cover estimated costs based on the Company’s history of warranty repairs and replacements, and is recorded in cost of goods sold in the Company’s condensed consolidated statements of operations and comprehensive income.

The following table sets forth the changes in the Company’s accrued warranties, which is recorded in accrued liabilities in the condensed consolidated balance sheets:

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

Beginning accrued warranty expense

$

1,567

$

1,427

$

1,234

$

1,256

Current period claims

 

(451)

 

(311)

 

(802)

 

(398)

Provision for current period sales

 

590

 

81

 

1,274

 

339

Ending accrued warranty expense

$

1,706

$

1,197

$

1,706

$

1,197

12

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

Net Income (Loss) per Share

Basic income or loss per share is computed by dividing net income (loss) by the weighted average number of common shares outstanding during the periods presented. Diluted income or loss per share is calculated by adjusting weighted average shares outstanding for the dilutive effect of potential common shares, determined using the treasury-stock method. The calculation of weighted average shares outstanding and net income (loss) per share are as follows:

Three Months Ended September 30, 

    

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

Net income (loss)

$

11,053

$

4,941

$

29,047

$

(779)

 

  

 

  

 

  

 

  

Weighted average shares outstanding - basic

 

37,586,031

 

37,289,880

 

37,515,976

 

35,697,891

Effect of dilutive securities:

Stock-based awards

344,857

457,734

314,814

Weighted average shares outstanding - diluted

 

37,930,888

 

37,747,614

 

37,830,790

 

35,697,891

Net income (loss) per share:

 

  

 

  

 

  

 

  

Basic

$

0.29

$

0.13

$

0.77

$

(0.02)

Diluted

$

0.29

$

0.13

$

0.77

$

(0.02)

For the nine months ended September 30, 2022, 7,363 restricted stock awards were excluded from diluted weighted average shares outstanding because the impact would be anti-dilutive due to a net loss in the period.

Recent Accounting Pronouncements

Recently Adopted Accounting Pronouncements

In June 2016, the FASB issued ASU 2016-13, Financial Instruments — Credit Losses (Topic 326)Measurement of Credit Losses on Financial Instruments. ASU 2016-13 includes an impairment model (known as the current expected credit loss model) that is based on expected losses rather than incurred losses. Under the new guidance, an entity recognizes as an allowance its estimate of expected credit losses, which the FASB believes will result in more timely recognition of such losses. The use of forecasted information is intended to incorporate more timely information in the estimate of expected credit loss. In November 2019, the FASB issued additional guidance which extends the effective date of ASU 2016-13 for emerging growth companies to begin in fiscal years beginning after December 15, 2022. The Company adopted this standard on January 1, 2023. The adoption of this ASU did not have a material impact on our condensed consolidated financial statements and disclosures.  

In March 2020, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update (“ASU”) 2020-04, Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting and related amendments. This ASU provides temporary optional expedients and exceptions to existing guidance on contract modifications and hedge accounting to facilitate the market transition from existing reference rates, such as the London Inter-Bank Offered Rate (“LIBOR”) which began to be phased out in 2021, to alternate reference rates, such as the Secured Overnight Financing Rate (“SOFR”). On May 31, 2023, we amended our 2021 credit agreement and interest rate swap agreements to affect the transition from LIBOR to SOFR. In connection with these amendments, the Company adopted ASU 2020-04 in the second quarter of 2023. In doing so, the Company elected to adopt the suite of optional expedients when analyzing the amendment to the credit agreement and related interest swaps.  As such, the amendments to the Company’s 2021 credit agreement and swap agreements, and the adoption of this ASU did not have a material impact on our condensed consolidated financial statements and disclosures.

13

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

2.    ACQUISITIONS

Radar Acquisition

On January 11, 2022, Safariland, LLC, a wholly-owned subsidiary of the Company, completed the acquisition of Radar Leather Division S.r.l. (“Radar”), a premier family-owned duty gear business based in Italy that specializes in the production of high-quality holsters, belts, duty belts, and other accessories.

The acquisition was accounted for as a business combination. Total acquisition-related costs for the acquisition of Radar were $627, of which $204 was incurred and recognized during 2022.

Total consideration, net of cash acquired, was $19,365 for 100% of the equity interests in Radar. The total consideration was as follows:

Cash paid

    

$

20,844

Less: cash acquired

 

(1,479)

Total consideration, net

$

19,365

The following table summarizes the total purchase price consideration and the amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. The excess of purchase consideration over the assets acquired and liabilities assumed is recorded as goodwill. Goodwill for the Radar acquisition is included in the Product segment and reflects synergies and additional legacy growth and profitability expected from this acquisition through expansion into new markets and customers.

Total consideration, net

    

$

19,365

Accounts receivable

$

2,347

Inventories

1,874

Prepaid expenses

682

Other current assets

665

Property and equipment

3,053

Intangible assets

10,200

Goodwill

7,101

Total assets acquired

25,922

Accounts payable

1,120

Deferred tax liabilities

2,787

Accrued liabilities

2,106

Long-term debt

544

Total liabilities assumed

6,557

Net assets acquired

$

19,365

14

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

In connection with the acquisition, the Company acquired exclusive rights to Radar’s trademarks, customer relationships, and product technologies. The amounts assigned to each class of intangible asset and the related average useful lives are as follows:

    

Gross

    

Average Useful Life

Customer relationships

$

9,300

15

Technology

600

 

10

Trademarks

300

7

Total

$

10,200

The full amount of goodwill of $7,101 is expected to be non-deductible for tax purposes. No pre-existing relationships existed between the Company and Radar prior to the acquisition. Radar revenue and cost of goods sold are included in the Product segment from the date of acquisition. The acquisition was not material to our condensed consolidated financial statements and consequently we have not included any pro-forma information.

Cyalume Acquisition

On May 4, 2022, Safariland, LLC, a wholly-owned subsidiary of the Company, completed the acquisition of Cyalume Technologies, Inc, CT SAS Holdings, Inc. and Cyalume Technologies SAS (collectively “Cyalume”). Cyalume is engaged in the design and manufacture of proprietary chemical illumination solutions for a diverse range of products, including light sticks, infrared products, safety markings and non-pyrophoric training ammunition.

The acquisition was accounted for as a business combination. Acquisition-related costs for the acquisition of Cyalume were $3,546, all of which was incurred and recognized during 2022.

Total consideration, net of cash acquired, was $36,178 for 100% of the equity interests in Cyalume. The total consideration was as follows:

Cash paid

    

$

38,012

Less: cash acquired

 

(1,834)

Total consideration, net

$

36,178

15

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

The following table summarizes the total purchase price consideration and the amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. Since December 31, 2022, we have decreased goodwill by $393 for changes in assumptions used to fair value property, equipment, and customer relationships, and deferred income taxes for certain book and tax basis differences as we complete the tax return filings for the pre-acquisition period. The excess of purchase consideration over the assets acquired and liabilities assumed is recorded as goodwill. Goodwill for the Cyalume acquisition is included in the Product segment and reflects synergies and additional legacy growth and profitability expected from this acquisition through expansion into new markets and customers.

Total consideration, net

    

$

36,178

Accounts receivable

$

3,302

Inventories

10,908

Prepaid expenses

255

Other current assets

10

Property and equipment

12,492

Intangible assets

8,100

Goodwill

8,708

Total assets acquired

43,775

Accounts payable

1,080

Deferred tax liabilities

4,652

Accrued liabilities

1,577

Other long-term liabilities

288

Total liabilities assumed

7,597

Net assets acquired

$

36,178

In connection with the acquisition, the Company acquired exclusive rights to Cyalume’s trademarks, customer relationships, and product technologies. The amounts assigned to each class of intangible asset and the related average useful lives are as follows:

    

Gross

    

Average Useful Life

Customer relationships

$

3,700

15

Technology

3,600

 

10

Trademarks

800

Indefinite

Total

$

8,100

The full amount of goodwill of $8,708 is expected to be non-deductible for tax purposes. No pre-existing relationships existed between the Company and Cyalume prior to the acquisition. Cyalume revenue and cost of goods sold are included in the Product segment from the date of acquisition. The acquisition was not material to our condensed consolidated financial statements and consequently we have not included any pro-forma information.

16

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

3.    REVENUE RECOGNITION

The following tables disaggregate net sales by channel and geography:

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

U.S. state and local agencies (a)

$

75,584

$

64,359

$

212,965

$

188,724

Commercial

 

9,525

 

11,211

 

30,834

 

33,572

U.S. federal agencies

 

13,355

 

16,652

 

42,484

 

34,014

International

 

25,821

 

18,264

 

69,194

 

74,789

Other

 

829

 

1,068

 

2,472

 

3,093

Net sales

$

125,114

$

111,554

$

357,949

$

334,192

(a) Includes all Distribution sales

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

United States

$

99,293

$

93,290

$

288,755

$

259,403

International

 

25,821

 

18,264

 

69,194

 

74,789

Net sales

$

125,114

$

111,554

$

357,949

$

334,192

Contract Liabilities

Contract liabilities are recorded as a component of other liabilities when customers remit cash payments in advance of the Company satisfying performance obligations. Contract liabilities are reversed into revenue when the performance obligation is satisfied. Contract liabilities are included in accrued liabilities in the Company’s condensed consolidated balance sheets and totaled $3,893 and $4,615 as of September 30, 2023 and December 31, 2022, respectively. Revenue recognized during the three and nine months ended September 30, 2023 from amounts included in contract liabilities as of December 31, 2022 was $407 and $2,752, respectively.

Remaining Performance Obligations

As of September 30, 2023, we had $17,620 of remaining unfulfilled performance obligations, which included amounts that will be invoiced and recognized in future periods. The remaining performance obligations are limited only to arrangements that meet the definition of a contract under ASC Topic 606, Revenue from Contracts with Customers, as of September 30, 2023. We expect to recognize approximately 58% of this balance over the next twelve months and expect the remainder to be recognized in the following two years.

4.    INVENTORIES

The following table sets forth a summary of inventories stated at lower of cost or net realizable value, as of September 30, 2023 and December 31, 2022:

    

September 30, 2023

    

December 31, 2022

Finished goods

$

30,701

$

25,208

Work-in-process

 

9,004

 

7,466

Raw materials and supplies

 

42,841

 

37,599

Total

$

82,546

$

70,273

17

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

5.    GOODWILL AND OTHER INTANGIBLE ASSETS

Goodwill

The following table summarizes the changes in goodwill for the three and nine months ended September 30, 2023:

    

Product

    

Distribution

    

Total

Balance, December 31, 2022

$

78,960

$

2,616

$

81,576

Measurement period adjustments

(593)

(593)

Foreign currency translation adjustments

 

309

 

 

309

Balance, March 31, 2023

$

78,676

$

2,616

$

81,292

Measurement period adjustments

200

200

Foreign currency translation adjustments

68

68

Balance, June 30, 2023

$

78,944

$

2,616

$

81,560

Foreign currency translation adjustments

(348)

(348)

Balance, September 30, 2023

$

78,596

$

2,616

$

81,212

Gross goodwill and accumulated impairment losses was $88,797 and $7,585, respectively, as of September 30, 2023 and $89,161 and $7,585, respectively, as of December 31, 2022.

Intangible Assets

Intangible assets such as certain customer relationships and patents on core technologies and product technologies are amortizable over their estimated useful lives. Certain trade names and trademarks which provide exclusive and perpetual rights to manufacture and sell their respective products are deemed indefinite-lived and are therefore not subject to amortization.

Intangible assets consisted of the following as of September 30, 2023 and December 31, 2022:

September 30, 2023

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

Amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

85,680

 

$

(64,337)

 

$

21,343

 

11

Technology

 

15,974

 

 

(11,793)

 

 

4,181

 

8

Tradenames

 

6,513

 

 

(5,126)

 

 

1,387

 

4

Non-compete agreements

 

980

 

 

(980)

 

 

 

4

$

109,147

 

$

(82,236)

 

$

26,911

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

17,422

 

 

 

 

17,422

 

Indefinite

Total

$

126,569

 

$

(82,236)

 

$

44,333

 

  

18

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

December 31, 2022

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

Amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

85,847

$

(59,122)

 

$

26,725

 

11

Technology

 

15,629

 

 

(11,309)

 

 

4,320

 

8

Tradenames

 

6,484

 

 

(4,254)

 

 

2,230

 

4

Non-compete agreements

 

973

 

 

(973)

 

 

 

4

$

108,933

 

$

(75,658)

 

$

33,275

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

17,420

 

 

 

 

17,420

 

Indefinite

Total

$

126,353

 

$

(75,658)

 

$

50,695

 

  

The Company recorded amortization expense of $2,155 and $2,274 for the three months ended September 30, 2023 and 2022, respectively, of which $55 and $134 was included in cost of goods sold in the condensed consolidated statements of operations and comprehensive income for the respective periods. Amortization expense for the nine months ended September 30, 2023 and 2022 was $6,308 and $6,671, respectively, of which $372 and $314 was included in cost of goods sold in the condensed consolidated statements of operations and comprehensive income for the respective periods.

The estimated amortization expense for definite-lived intangible assets for the remaining three months of 2023, the next four years and thereafter is as follows:

Remainder of 2023

    

$

1,477

2024

 

5,013

2025

 

3,053

2026

 

2,656

2027

 

2,479

Thereafter

 

12,233

Total

$

26,911

6.    DEBT

The Company’s debt is as follows:

    

September 30, 2023

    

December 31, 2022

Short-term debt:

 

  

 

  

Insurance premium financing

$

3,251

$

2,211

Current portion of term loan

 

10,000

 

10,000

$

13,251

$

12,211

Long-term debt:

 

  

 

  

Revolver

 

 

Term loan

 

131,064

 

138,564

Other

 

509

 

512

$

131,573

$

139,076

Unamortized debt discount and debt issuance costs

 

(1,264)

 

(1,600)

Total long-term debt, net

$

130,309

$

137,476

19

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

The following summarizes the aggregate principal payments of our long-term debt, excluding debt discount and debt issuance costs, for the remaining three months of 2023, the next four years and thereafter:

Remainder of 2023

    

$

2,500

2024

 

10,127

2025

 

10,127

2026

 

118,691

2027

 

128

Total principal payments

$

141,573

2021 Credit Facility

On August 20, 2021 (the “Closing Date”), the Company refinanced its existing credit facilities and entered into a new credit agreement whereby Safariland, LLC, as borrower (the “Borrower”), the Company and certain domestic subsidiaries of the Borrower, as guarantors (the “Guarantors”), closed on and received funding under a credit agreement (initially entered into on July 23, 2021), pursuant to a First Amendment to Credit Agreement (collectively, the “2021 Credit Agreement”) with PNC Bank, National Association (“PNC”), as administrative agent, and the several lenders from time to time party thereto (together with PNC, the “Lenders”) pursuant to which the Borrower (i) borrowed $200,000 under a term loan (the “Term Loan”), and (ii) may borrow up to $100,000 under a revolving credit facility (including up to $15,000 for letters of credit and up to $10,000 for swing line loans) (the “Revolving Loan”). Each of the Term Loan and the Revolving Loan mature on July 23, 2026. Commencing December 31, 2021, the Term Loan requires scheduled quarterly payments in amounts equal to 1.25% per quarter of the original aggregate principal amount of the Term Loan, with the balance due at maturity. The 2021 Credit Agreement is guaranteed, jointly and severally, by the Guarantors and, subject to certain exceptions, secured by a first-priority security interest in substantially all of the assets of the Borrower and the Guarantors pursuant to a Security and Pledge Agreement and a Guaranty and Suretyship Agreement, each dated as of the Closing Date.

There were no amounts outstanding under the Revolving Loan as of September 30, 2023 and December 31, 2022. As of September 30, 2023, there were $2,613 in outstanding letters of credit and $97,387 of availability.

The Borrower may elect to have the Revolving Loan and Term Loan under the 2021 Credit Agreement bear interest at a base rate or LIBOR, in each case, plus an applicable margin. However, in connection with the market transition away from applicable LIBOR rates to SOFR, on May 31, 2023, the Company, the Borrowers and the Lenders entered into the third amendment to the 2021 Credit Agreement (the “Third Amendment”) pursuant to which the 2021 Credit Agreement was amended to implement the SOFR rates. The applicable margin for these borrowings ranges from 0.50% to 1.50% per annum, in the case of base rate borrowings, and 1.60% to 2.60% per annum, in the case of SOFR (and prior to May 31, 2023, on LIBOR) borrowings, in each case based upon the level of the Company’s consolidated total net leverage ratio. The 2021 Credit Agreement also requires the Borrower to pay a commitment fee on the unused portion of the loan commitments. Such commitment fee ranges between 0.175% and 0.25% per annum, and is also based upon the level of the Company’s consolidated total net leverage ratio. The 2021 Credit Agreement also contains customary representations and warranties, and affirmative and negative covenants, including limitations on additional indebtedness, dividends, and other distributions, entry into new lines of business, use of loan proceeds, capital expenditures, restricted payments, restrictions on liens on the assets of the Borrowers or any Guarantor, transactions with affiliates, amendments to organizational documents, accounting changes, sale and leaseback transactions, dispositions, and mandatory prepayments in connection with certain liquidity events. The 2021 Credit Agreement contains certain restrictive debt covenants, which require us to: (i) maintain a minimum fixed charge coverage ratio of 1.25 to 1.00, starting with the quarter ended December 31, 2021, which is to be determined for each quarter end on a trailing four quarter basis and (ii) maintain a quarterly maximum consolidated total net leverage ratio of 3.75 to 1.00 from the quarter ended December 31, 2022 until the quarter ended September 30, 2023, and thereafter 3.50 to 1.00, which is in each case to be determined on a trailing four quarter basis; provided that under certain circumstances and subject to certain limitations, in the event of a material acquisition, we may temporarily increase the consolidated total net leverage ratio by up to 0.50 to 1.00 for four fiscal quarters following such acquisition. The 2021 Credit Agreement contains customary events of default that include, among others, non-payment of principal, interest or fees, violation of covenants, inaccuracy of representations and warranties, failure to make payment on, or defaults with respect to, certain other material

20

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

indebtedness, bankruptcy and insolvency events, material judgments and change of control provisions. Upon the occurrence of an event of default, and after the expiration of any applicable grace period, payment of any outstanding loans under the 2021 Credit Agreement may be accelerated and the Lenders could foreclose on their security interests in the assets of the Borrowers and the Guarantors.

Canadian Credit Facility

On October 14, 2021, Med-Eng Holdings ULC and Pacific Safety Products Inc., the Company’s Canadian subsidiaries, as borrowers (the “Canadian Borrowers”), and Safariland, LLC, as guarantor (the “Canadian Guarantor”), closed on a line of credit pursuant to a Loan Agreement (the “Canadian Loan Agreement”) and a Revolving Line of Credit Note (the “Note”) with PNC Bank Canada Branch (“PNC Canada”), as lender pursuant to which the Canadian Borrowers may borrow up to CDN$10,000 under a revolving line of credit (including up to $3,000 for letters of credit) (the “Revolving Canadian Loan”). The Revolving Canadian Loan matures on July 23, 2026. The Canadian Loan Agreement is guaranteed by the Canadian Guarantor pursuant to a Guaranty and Suretyship Agreement (the “Canadian Guaranty Agreement”).

The Canadian Borrowers may elect to have borrowings either in United States dollars or Canadian dollars under the Canadian Loan Agreement, which will bear interest at a base rate or LIBOR, in each case, plus an applicable margin, in the case of borrowings in United States dollars, or at a Canadian Prime Rate (as announced from time to time by PNC Canada) or a Canadian deposit offered rate (“CDOR”) as determined from time to time by PNC Canada in accordance with the Canadian Loan Agreement. The applicable margin for these borrowings range from 0.50% to 1.50% per annum, in the case of base rate borrowings and Canadian Prime Rate borrowings, and 1.50% to 2.50% per annum, in the case of LIBOR borrowings and CDOR borrowings. The Canadian Loan Agreement also requires the Canadian Borrowers to pay (i) an unused line fee on the unused portion of the loan commitments in an amount ranging between 0.175% and 0.25% per annum, based upon the level of the Company’s consolidated total net leverage ratio, and (ii) an upfront fee equal to 0.25% of the principal amount of the Note.

There were no amounts outstanding under the Revolving Canadian Loan as of September 30, 2023 and December 31, 2022.

The Canadian Loan Agreement also contains customary representations and warranties, and affirmative and negative covenants, including, among others, limitations on additional indebtedness, entry into new lines of business, entry into guarantee agreements, making of any loans or advances to, or investments in, any other person, restrictions on liens on the assets of the Canadian Borrowers and mergers, transfers of assets and acquisitions. The Canadian Loan Agreement and Note also contain customary events of default that include, among others, non-payment of principal, interest or fees, violation of covenants, inaccuracy of representations and warranties, failure to make payment on, or defaults with respect to, certain other material indebtedness, bankruptcy and insolvency events, material judgments and change of control provisions.

Upon the occurrence of an event of default, and after the expiration of any applicable grace period, payment of any outstanding loans under the Canadian Loan Agreement may be accelerated.

Interest Rate Swaps

We entered into interest rate swap agreements to hedge forecasted monthly interest rate payments on our floating rate debt. As of September 30, 2023, we had the following interest rate swap agreements (the “Swap Agreements”):

Effective Date

    

Notional Amount

    

Fixed Rate

September 30, 2021 through July 23, 2026

$

100,000

0.812

%

May 31, 2023 through July 23, 2026

    

$

50,000

    

3.905

%

On May 31, 2023, concurrent with the third amendment to the 2021 Credit Agreement, we amended our $100,000 notional amount swap agreement to reflect the change from LIBOR to SOFR. In addition, we entered into an additional $50,000 notional amount interest

21

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

rate swap to further mitigate our interest rate exposure on our floating rate debt. Under the terms of the Swap Agreements, we receive payments based on the 1-month SOFR (5.32% as of September 30, 2023).

During the nine months ended September 30, 2023, there were no interest rate swap agreements that expired.

We designated the Swap Agreements as cash flow hedges. A portion of the amount included in accumulated other comprehensive income is reclassified into interest expense, net as a yield adjustment as interest is either paid or received on the hedged debt. The fair value of our Swap Agreements is based upon Level 2 inputs. We have considered our own credit risk and the credit risk of the counterparties when determining the fair value of our Swap Agreements.

It is our policy to execute such instruments with creditworthy banks and not to enter into derivative financial instruments for speculative purposes. We believe our interest rate swap counterparty will be able to fulfill their obligations under our agreements, and we believe we will have debt outstanding through the expiration date of the swap agreements such that the occurrence of future cash flow hedges remains probable.

The estimated fair value of our Swap Agreements in the condensed consolidated balance sheets was as follows:

Balance Sheet Accounts

    

September 30, 2023

    

December 31, 2022

Other current assets

$

4,550

$

3,619

Other assets

$

4,753

$

5,366

A cumulative gain, net of tax, of $6,755 and $6,739 as of September 30, 2023 and December 31, 2022, respectively, is recorded in accumulated other comprehensive income.

The amount of gain, net of tax, recognized in other comprehensive (loss) income for the three months ended September 30, 2023 and 2022 was $1,131 and $2,350, respectively. There was a gain, net of tax, of $884 and $252 reclassified from accumulated other comprehensive income into earnings for the three months ended September 30, 2023 and 2022, respectively.

The amount of gain, net of tax, recognized in other comprehensive (loss) income for the nine months ended September 30, 2023 and 2022 was $2,281 and $6,414, respectively. There was a gain, net of tax, of $2,266 and $106 reclassified from accumulated other comprehensive income into earnings for the nine months ended September 30, 2023 and 2022, respectively.

As of September 30, 2023, approximately $4,449 is expected to be reclassified from accumulated other comprehensive income into interest expense over the next 12 months.

7.    COMMITMENTS AND CONTINGENCIES

Legal Proceedings

In September 2021, Safariland, LLC, a wholly-owned subsidiary of the Company, received a jury verdict awarding $7,500 to a plaintiff relating to a personal injury case wherein the plaintiff alleged various product liability claims against Safariland, LLC. The plaintiff in the proceeding, Mr. David Hakim, instituted the proceeding on July 24, 2015, through the filing of a complaint with the United States District Court, Northern District of Illinois, Eastern Division. In the proceeding, the plaintiff, a SWAT officer with the DuPage County Sheriff’s Office (“DCSO”), alleged that he suffered injuries during a training exercise conducted by DCSO in which a Defense Technology Shotgun Breaching TKO round was deployed and passed through a door and lower-floor ceiling causing a fragment to strike plaintiff’s back resulting in injury. Prior to the jury rendering its verdict, the court deferred ruling on Safariland, LLC’s Motion for Judgment as a Matter of Law (“JMOL”). On November 8, 2021, Safariland, LLC filed its post-trial motions, including a supplemental JMOL, motion for new trial and remittitur. On April 18, 2022, the court denied Safariland, LLC’s JMOL, motion for new trial and remittitur and, accordingly, entered a judgment in favor of plaintiff, David Hakim, as to the Third Claim. In response, Safariland, LLC

22

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

timely filed its notice of appeal with the United States Court of Appeals for the Seventh Circuit (the “Seventh Circuit”).  Safariland and Plaintiff have filed their appeal briefs, and oral arguments were held on October 25, 2022. On August 21, 2023, the Seventh Circuit affirmed the judgment of the district court. In accordance with the Company’s applicable insurance policies, the Company was fully indemnified. The insurer satisfied the judgment and a release of the judgment was entered on September 11, 2023. Accordingly, this matter is now closed.

The Company is also involved in various legal disputes and other legal proceedings and claims that arise from time to time in the ordinary course of business. The Company vigorously defends itself against all lawsuits and evaluates the amount of reasonably possible losses that the Company could incur as a result of these matters. While any litigation contains an element of uncertainty, the Company believes that the reasonably possible losses that the Company could incur in excess of insurance coverage would not have a material adverse effect on the Company’s consolidated financial position, results of operations, or liquidity.

Insurance

The Company has various insurance policies, including product liability insurance, covering risks and in amounts it considers adequate. There can be no assurance that the insurance coverage maintained by the Company is sufficient or will be available in adequate amounts or at a reasonable cost.

International

As an international company, we are, from time to time, the subject of investigations relation to the Company’s international operations, including under U.S. export control laws (such as ITAR), the FCPA and other similar U.S. and international laws. To the best of the Company’s knowledge, there are not any potential or pending investigations at this time.

8.    INCOME TAXES

The Company and its subsidiaries file income tax returns in the U.S. federal, various state and local, and certain foreign jurisdictions. As of September 30, 2023, the Company’s tax years subsequent to 2016 are subject to examination by tax authorities with few exceptions. The 2018 and 2019 tax returns of a Canadian subsidiary of the Company are currently under examination by the Canadian Revenue Agency.

The Company’s effective tax rate was 28.0% and 28.4% for the three months ended September 30, 2023 and 2022, respectively, and 28.3% and 76.5% for the nine months ended September 30, 2023 and 2022, respectively.  Our effective tax rate for the three and nine months ended September 30, 2023 and 2022 differs from our statutory rate primarily due to state taxes and executive compensation, partially offset by research and development tax credits.

9.     COMPENSATION PLANS

Long-Term Incentive Plan

In March 2021, the Company initiated a cash-based long-term incentive plan. Each award granted under the plan shall be eligible to vest in three equal annual installments over a period of three consecutive one-year performance periods, with each installment of the award vesting on the last day of the applicable performance period, subject to the achievement of the performance metrics established by the board of directors for the applicable annual performance period. Compensation expense related to this plan was $185 and $375 for the three months ended September 30, 2023 and 2022, respectively, and $489 and $933 for the nine months ended September 30, 2023 and 2022, respectively, and is included in selling, general and administrative in the Company’s condensed consolidated statements of operations and comprehensive income.

23

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

On March 9, 2022, the Company’s board of directors approved the common stock settlement of vested awards of the long-term incentive plan. The board of directors also approved the future settlement of unvested awards in common stock. Modification accounting was not applied as this change did not affect the fair value of the awards, vesting conditions, or the liability classification of the awards.

Executive Compensation Plan

The Company maintains a cash-based executive compensation plan for certain employees. The Company’s board of directors awarded 1,433,500 interests in the plan (“units”). Each unit represents an unfunded and unsecured right, subject to certain conditions as set forth by the plan. One-third of the units granted to any holder vest on each of the first, second, and third anniversaries of March 18, 2021 during the term of such holder’s employment with the Company. Payment of a holder’s vested balance is dependent upon a transaction or series of related transactions constituting a qualifying exit event, as defined by the executive compensation plan. The plan will expire on March 18, 2025, at which time the plan and all awarded units will be terminated for no consideration if a qualifying exit event has not occurred before that date. If a qualifying exit event becomes probable, the fair value of the units would be the closing stock price of the Company on the day the qualifying exit event becomes probable and compensation expense would be recognized at that time.

On March 9, 2022, the Company’s board of directors modified the performance condition, specifically the definition of a qualifying exit event, in the cash-based executive compensation plan. In addition, the board of directors approved the settlement of the majority of vested and unvested units in common stock rather than cash, which resulted in a change in classification of those outstanding units from liability to equity. As a result, modification of the units occurred on March 9, 2022 with a grant date fair value of $23.45, the closing stock price of the Company on the date of modification. There were 632,500 units that vested on March 18, 2022 and 801,000 units that vest in equal amounts on the second and third anniversaries of the plan. The Company recognized compensation expense of $22,100 in selling, general and administrative in the Company’s condensed consolidated statements of operations and comprehensive income on the modification date. Unrecognized compensation expense related to the unvested units was $11,516 as of the modification date.  

10.     LEASES

The Company leases certain manufacturing and office space, retail locations, and equipment. Operating lease assets and liabilities are recognized at the commencement date based on the present value of lease payments over the lease term. The Company has elected not to recognize a lease liability or right-of-use (“ROU”) asset for short-term leases (leases with a term of twelve months or less). The Company uses its incremental borrowing rate based on the information available at the commencement date in determining the present value of lease payments. The Company’s incremental borrowing rate is the rate for collateralized borrowings based on the current economic environment, credit history, credit rating, value of leases, currency in which the lease obligation is satisfied, rate sensitivity, lease term and materiality. Our operating leases have remaining contractual terms of up to five years, some of which include options to extend the leases for up to five years.

The amount of assets and liabilities related to our operating leases were as follows:

Balance Sheet Accounts

    

September 30, 2023

    

December 31, 2022

Assets:

Operating lease assets

Operating lease assets

$

6,643

$

8,489

Liabilities:

Current:

Operating lease liabilities

Accrued liabilities

$

3,192

$

3,773

Long-term:

Operating lease liabilities

Long-term operating lease liabilities

3,603

4,965

Total lease liabilities

$

6,795

$

8,738

24

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

The components of lease expense are recorded to cost of sales and selling, general and administration expenses in the condensed consolidated statements of operations and comprehensive income. The components of lease expense were as follows:

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2023

Fixed operating lease costs(1)

$

954

$

3,019

Variable operating lease costs

 

511

 

1,267

Total

$

1,465

$

4,286

(1) Includes short-term leases, which are immaterial.

The weighted average remaining lease term and weighted average discount rate is as follows:

    

September 30, 2023

    

December 31, 2022

Weighted average remaining lease term (years):

 

 

Operating leases

2.30

2.62

Weighted average discount rate:

Operating leases

3.06%

2.96%

The approximate future minimum lease payments under operating leases as of September 30, 2023 are as follows:

Remainder of 2023

$

1,090

2024

 

3,250

2025

 

1,835

2026

 

768

2027

 

134

Thereafter

 

8

Total future lease payments

7,085

Less: Amount representing interest

(290)

Present value of lease liabilities

$

6,795

Supplemental cash flow information related to leases is as follows:

    

September 30, 2023

Cash paid for amounts included in the measurement of lease liabilities:

 

Operating cash flows - operating leases

$

3,063

Right-of-use assets obtained in exchange for lease liabilities:

Operating leases

$

11.     RELATED PARTY TRANSACTIONS

The Company leases 4 distribution warehouses and retail stores from certain employees. The Company recorded rent expense related to these leases of $116 and $112 for the three months ended September 30, 2023 and 2022, respectively, and $379 and $346 for the nine months ended September 30, 2023 and 2022, respectively. Rent expense related to these leases is included in related party expense in the Company’s condensed consolidated statements of operations and comprehensive income.

25

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

During the nine months ended September 30, 2022, the Company made the following payments to Kanders & Company, Inc., a company controlled by Warren Kanders, our Chief Executive Officer:

$1,000 for services related to the acquisition of Cyalume, which is included in related party expense in the Company’s condensed consolidated statements of operations and comprehensive income.
$2,000 for services related to the Company’s secondary offering, which is included in direct offering costs and recorded against offering proceeds in additional paid in capital in the Company’s condensed consolidated balance sheets.

There were no other payments made to Kanders & Company for any other period presented.

12.     SEGMENT DATA

Our operations are comprised of two reportable segments: Product and Distribution. Segment information is consistent with how the chief operating decision maker (“CODM”), our chief executive officer, reviews the business, makes investing and resource allocation decisions and assesses operating performance. The CODM is not provided asset information or operating expenses by segment.

    

Three Months Ended September 30, 2023

Reconciling

    

Product

Distribution

 Items(1)

    

Total

Net sales

    

$

108,495

    

$

24,208

    

$

(7,589)

    

$

125,114

Cost of goods sold

60,380

18,724

(7,593)

71,511

Gross profit

$

48,115

$

5,484

$

4

$

53,603

    

Three Months Ended September 30, 2022

Reconciling

    

Product

    

Distribution

    

 Items(1)

    

Total

Net sales

    

$

92,718

    

$

26,012

    

$

(7,176)

    

$

111,554

Cost of goods sold

54,125

20,859

(7,170)

67,814

Gross profit

$

38,593

$

5,153

$

(6)

$

43,740

    

Nine Months Ended September 30, 2023

Reconciling

    

    Product    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

305,057

    

$

74,594

    

$

(21,702)

    

$

357,949

Cost of goods sold

171,204

57,200

(21,423)

206,981

Gross profit

$

133,853

$

17,394

$

(279)

$

150,968

    

Nine Months Ended September 30, 2022

Reconciling

    

    Product    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

277,941

    

$

73,836

$

(17,585)

    

$

334,192

Cost of goods sold

166,192

$

58,437

$

(17,587)

207,042

Gross profit

$

111,749

$

15,399

$

2

$

127,150

(1) Reconciling items consist primarily of intercompany eliminations and items not directly attributable to operating segments.

26

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

ITEM 2. MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS

The following discussion and analysis of the financial condition and results of operations of Cadre Holdings, Inc. (D/B/A The Safariland Group) (“Cadre,” “the Company” “we,” “us” and “our”) should be read in conjunction with our unaudited condensed consolidated financial statements and the related notes appearing elsewhere in this Quarterly Report and with our audited consolidated financial statements included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2022. The following discussion contains forward-looking statements that reflect future plans, estimates, beliefs and expected performance. The forward-looking statements are dependent upon events, risks and uncertainties that may be outside of Cadre’s control. Our actual results may differ significantly from those projected in the forward-looking statements. Factors that might cause future results to differ materially from those projected in the forward- looking statements include, but are not limited to, those discussed in Part I, Item 1A. Risk Factors of our Annual Report on Form 10-K for the year ended December 31, 2022 and the section entitled “Cautionary Statement Regarding Forward-Looking Statements” included elsewhere in this Quarterly Report on Form 10-Q.

Our Business

Cadre is a global leader in the manufacturing and distribution of safety and survivability equipment for first responders. Our equipment provides critical protection to allow its users to safely and securely perform their duties and protect those around them in hazardous or life-threatening situations. Through our dedication to superior quality, we establish a direct covenant with end users that our products will perform and keep them safe when they are most needed. We sell a wide range of products including body armor, explosive ordnance disposal equipment and duty gear through both direct and indirect channels. In addition, through our owned distribution, we serve as a one-stop shop for first responders providing equipment we manufacture as well as third-party products including uniforms, optics, boots, firearms and ammunition. The majority of our diversified product offering is governed by rigorous safety standards and regulations. Demand for our products is driven by technological advancement as well as recurring modernization and replacement cycles for the equipment to maintain its efficiency, effective performance and regulatory compliance.

We service the ever-changing needs of our end users by investing in research and development for new product innovation and technical advancements that continually raise the standards for safety and survivability equipment in the first responder market. Our target end user base includes domestic and international first responders such as state and local law enforcement, fire and rescue, explosive ordnance disposal technicians, emergency medical technicians, fishing and wildlife enforcement and departments of corrections, as well as federal agencies including the U.S. Department of State, U.S. Department of Defense, U.S. Department of Interior, U.S. Department of Justice, U.S. Department of Homeland Security, U.S. Department of Corrections and numerous foreign government agencies in over 100 countries.

In January 2022, the Company acquired Radar Leather Division S.r.l. (“Radar”) for $19.4 million, net of cash acquired. We recorded an allocation of the purchase price to tangible and identifiable intangible assets acquired and liabilities assumed based on their estimated fair values.

In May 2022, the Company acquired Cyalume Technologies, Inc, CT SAS Holdings, Inc. and Cyalume Technologies SAS (collectively “Cyalume”) for $36.2 million, net of cash acquired. We recorded an allocation of the purchase price to tangible and identifiable intangible assets acquired and liabilities assumed based on their estimated fair values.

27

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

The following table sets forth a summary of our financial highlights for the periods indicated:

Three Months Ended September 30, 

Nine Months Ended September 30, 

(in thousands)

2023

2022

2023

2022

Net sales

    

$

125,114

    

$

111,554

  

$

357,949

    

$

334,192

Net income (loss)

$

11,053

$

4,941

  

$

29,047

$

(779)

Adjusted EBITDA(1)

$

23,731

$

20,741

  

$

65,128

$

53,346

(1)Adjusted EBITDA is a non-GAAP financial measure. See “Non-GAAP Measures” below for our definition of, and additional information about, Adjusted EBITDA, and for a reconciliation to net income (loss), the most directly comparable U.S. GAAP financial measure.

Net sales increased by $13.6 million for the three months ended September 30, 2023 as compared to the three months ended September 30, 2022, primarily as a result of higher domestic demand for armor products, large international orders for crowd control products partially offset by agency decreased demand for hard goods. Net sales increased by $23.8 million for the nine months ended September 30, 2023 as compared to the nine months ended September 30, 2022, primarily as a result of higher demand for armor and crowd control products, as well as recent acquisitions, partially offset by a decrease from large international orders for explosive ordinance disposal products fulfilled in the prior year.

Net income increased by $6.1 million for the three months ended September 30, 2023 as compared to the three months ended September 30, 2022, primarily as a result of an increase in gross profit, partially offset by an increase in selling, general and administrative expenses. Net income increased by $29.8 million for the nine months ended September 30, 2023 as compared to the nine months ended September 30, 2022, primarily as a result of recent acquisitions, an increase in net sales, an increase in gross profit margin, and a decrease in stock compensation expense.

Secondary Offering

On June 9, 2022, the Company completed a secondary offering in which the Company issued and sold 2,250,000 shares of common stock at a price of $23.50 per share. The Company’s net proceeds from the sale of shares were $47.0 million after underwriter discounts and commissions, fees and expenses of $2.7 million, of which $2.0 million was paid to Kanders & Company, Inc., a company controlled by Warren Kanders, our Chief Executive Officer.

On July 14, 2022, the underwriters exercised a portion of their over-allotment option and purchased an additional 300,000 shares of common stock at a price of $23.50 per share, resulting in net proceeds to the Company of $6.6 million after underwriter discounts and commissions, fees and expenses of $0.4 million.

KEY PERFORMANCE METRICS

Orders backlog

We monitor our orders backlog, which we believe is a forward-looking indicator of potential sales. Our orders backlog for products includes all orders that have been received and are believed to be firm. Due to municipal government procurement rules, in certain cases orders included in backlog are subject to budget appropriation or other contract cancellation clauses. Consequently, our orders backlog may differ from actual future sales. Orders backlog can be helpful to investors in evaluating the performance of our business and identifying trends over time.

The following table presents our orders backlog as of the periods indicated:

(in thousands)

September 30, 2023

December 31, 2022

Orders backlog

$

126,184

$

117,873

28

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

Orders comprising backlog as of a given balance sheet date are typically invoiced in subsequent periods. The majority of our products are generally processed and shipped within one to three weeks of an order being placed, though the fulfillment time for certain products, for example, explosive ordnance disposal equipment, may take three months or longer. Our orders backlog could experience volatility between periods, including as a result of customer order volumes and the speed of our order fulfilment, which in turn may be impacted by the nature of products ordered, the amount of inventory on hand and the necessary manufacturing lead time.

Orders backlog increased by $8.3 million as of September 30, 2023 compared to December 31, 2022, primarily due to increases of $9.7 million from explosive ordinance disposal products, including remotely operated vehicles, and $3.5 million from duty gear, partially offset by reductions of $2.8 million from chemiluminescent payloads and $2.3 million from the Distribution segment.

29

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

RESULTS OF OPERATIONS

In order to reflect the way our chief operating decision maker reviews and assesses the performance of the business, Cadre has determined that it has two reportable segments — the Product segment and the Distribution segment. Segment information is consistent with how the chief operating decision maker, our chief executive officer, reviews the business, makes investing and resource allocation decisions and assesses operating performance.

The following table presents data from our results of operations for the three and nine months ended September 30, 2023 and 2022 (in thousands unless otherwise noted):

Three Months Ended September 30, 

Nine Months Ended September 30, 

2023

2022

2023

2022

    

(Unaudited)

    

(Unaudited)

    

% Chg

    

    

(Unaudited)

    

(Unaudited)

    

% Chg

Net sales

$

125,114

$

111,554

12.2

%

$

357,949

$

334,192

7.1

Cost of goods sold

 

71,511

 

67,814

5.5

%

 

206,981

 

207,042

(0.0)

Gross profit

 

53,603

 

43,740

22.5

%

 

150,968

 

127,150

18.7

Operating expenses

Selling, general and administrative

 

36,314

 

31,732

14.4

%

 

105,615

 

118,431

(10.8)

Restructuring and transaction costs

 

439

 

1,578

(72.2)

%

 

1,132

 

3,380

(66.5)

Related party expense

 

116

 

112

3.6

%

 

379

 

1,346

(71.8)

Total operating expenses

 

36,869

 

33,422

10.3

%

 

107,126

 

123,157

(13.0)

Operating income

 

16,734

 

10,318

62.2

%

 

43,842

 

3,993

998.0

Other expense

Interest expense

 

(1,073)

 

(1,567)

(31.5)

%

 

(3,727)

 

(4,496)

(17.1)

Other (expense) income, net

 

(315)

 

(1,851)

(83.0)

%

 

395

 

(2,812)

(114.0)

Total other expense, net

 

(1,388)

 

(3,418)

(59.4)

%

 

(3,332)

 

(7,308)

(54.4)

Income (loss) before provision for income taxes

 

15,346

 

6,900

122.4

%

 

40,510

 

(3,315)

(1,322.0)

(Provision) benefit for income taxes

 

(4,293)

 

(1,959)

119.1

%

 

(11,463)

 

2,536

(552.0)

Net income (loss)

$

11,053

$

4,941

123.7

%

$

29,047

$

(779)

(3,828.8)

The following tables present segment data for the three and nine months ended September 30, 2023 and 2022 (in thousands):

    

Three Months Ended September 30, 2023

Reconciling

    

Product

Distribution

 Items(1)

    

Total

Net sales

    

$

108,495

    

$

24,208

    

$

(7,589)

    

$

125,114

Cost of goods sold

60,380

18,724

(7,593)

71,511

Gross profit

$

48,115

$

5,484

$

4

$

53,603

    

Three Months Ended September 30, 2022

Reconciling

    

Product

    

Distribution

    

 Items(1)

    

Total

Net sales

    

$

92,718

    

$

26,012

    

$

(7,176)

    

$

111,554

Cost of goods sold

54,125

20,859

(7,170)

67,814

Gross profit

$

38,593

$

5,153

$

(6)

$

43,740

30

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

    

Nine Months Ended September 30, 2023

Reconciling

    

    Product    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

305,057

    

$

74,594

    

$

(21,702)

    

$

357,949

Cost of goods sold

171,204

57,200

(21,423)

206,981

Gross profit

$

133,853

$

17,394

$

(279)

$

150,968

    

Nine Months Ended September 30, 2022

Reconciling

    

    Product    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

277,941

    

$

73,836

$

(17,585)

    

$

334,192

Cost of goods sold

166,192

$

58,437

$

(17,587)

207,042

Gross profit

$

111,749

$

15,399

$

2

$

127,150

(1) Reconciling items consist primarily of intercompany eliminations and items not directly attributable to operating segments

Comparison of Three Months Ended September 30, 2023 to Three Months Ended September 30, 2022

Net sales. Product segment net sales increased by $15.8 million, or 17.0%, from $92.7 million to $108.5 million for the three months ended September 30, 2023 as compared to the three months ended September 30, 2022, primarily due to increases of $10.0 million from higher domestic demand for armor products and $5.9 million as a result of large international orders for crowd control products. Distribution segment net sales decreased by $1.8 million, or 6.9%, from $26.0 million to $24.2 million for the three months ended September 30, 2023 as compared to the three months ended September 30, 2022, primarily due to decreased agency demand for hard goods. Reconciling items consisting primarily of intercompany eliminations were $7.6 million and $7.2 million for the three months ended September 30, 2023 and 2022, respectively.

Cost of goods sold and gross profit. Product segment cost of goods sold increased by $6.3 million, or 11.6%, from $54.1 million to $60.4 million for the three months ended September 30, 2023 as compared to the three months ended September 30, 2022, primarily due to increased volume and increased costs to manufacture product (principally material and labor), partially offset by prior year increases from the amortization of inventory step up adjustments related to 2022 acquisitions, product mix and productivity. Product segment gross profit as a percentage of net sales increased by 270 basis points to 44.3% for the three months ended September 30, 2023 from 41.6% for the three months ended September 30, 2022, mainly driven by favorable pricing, product mix and productivity, partially offset by inflation and pressure from a stronger Mexican peso. Distribution segment cost of goods sold decreased by $2.2 million, or 10.2%, from $20.9 million to $18.7 million for the three months ended September 30, 2023 as compared to the same period in 2022, primarily due to decreased volume. Distribution segment gross profit as a percentage of net sales increased by 290 basis points to 22.7% for the three months ended September 30, 2023 from 19.8% for the three months ended September 30, 2022, mainly driven by favorable mix. Reconciling items consisting primarily of intercompany eliminations were $7.6 million and $7.2 million for the three months ended September 30, 2023 and 2022, respectively.

Selling, general and administrative. Selling, general and administrative increased by $4.6 million, or 14.4%, for the three months ended September 30, 2023 as compared to the same period in 2022, primarily due to employee compensation and related benefits and commissions.

Restructuring and transaction costs. Restructuring and transaction costs decreased by $1.1 million for the three months ended September 30, 2023 as compared to the three months ended September 30, 2022 primarily due to costs incurred in 2022 associated with acquisitions.

Related party expense.  Related party expense, which primarily consists of rent expense related to distribution warehouses and retail stores that we lease from related parties, remained consistent for the three months ended September 30, 2023 as compared to the three months ended September 30, 2022.

31

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

Interest expense. Interest expense decreased by $0.5 million, or 31.5%, for the three months ended September 30, 2023 as compared to the three months ended September 30, 2022, primarily due to a decrease in outstanding borrowings.

Other (expense) income, net. Other expense, net was $0.3 million for the three months ended September 30, 2023 as compared to $1.9 million for the three months ended September 30, 2022, primarily due to changes in foreign currency exchange rates.

(Provision) benefit for income taxes. Income tax provision was $4.3 million for the three months ended September 30, 2023 compared to $2.0 million for the three months ended September 30, 2022. The effective tax rate was 28.0% and 28.4% for the three months ended September 30, 2023 and 2022, respectively, and differed from the statutory rate primarily due to state taxes and executive compensation, partially offset by research and development tax credits.

Comparison of Nine Months Ended September 30, 2023 to Nine Months Ended September 30, 2022

Net sales. Product segment net sales increased by $27.2 million, or 9.8%, from $277.9 million to $305.1 million for the nine months ended September 30, 2023 as compared to the nine months ended September 30, 2022, primarily due to $17.2 million from higher demand for armor products, $8.7 million from higher demand for crowd control products, and $8.1 million from recent acquisitions, partially offset by a reduction of $6.6 million from large international orders for explosive ordnance disposal products fulfilled in the prior year. Distribution segment net sales increased by $0.8 million, or 1.0%, from $73.8 million to $74.6 million for the nine months ended September 30, 2023 as compared to the nine months ended September 30, 2022, primarily due to increased agency demand for hard goods. Reconciling items consisting primarily of intercompany eliminations were $21.7 million and $17.6 million for the nine months ended September 30, 2023 and 2022, respectively.

Cost of goods sold and gross profit. Product segment cost of goods sold increased by $5.0 million, or 3.0%, from $166.2 million to $171.2 million for the nine months ended September 30, 2023 as compared to the nine months ended September 30, 2022, primarily due to increased volume and increasing costs to manufacture product (principally material and labor), partially offset by prior year increases from the amortization of inventory step up adjustments related to 2022 acquisitions, product mix and productivity. Product segment gross profit as a percentage of net sales increased by 367 basis points to 43.9% for the nine months ended September 30, 2023 from 40.2% for the nine months ended September 30, 2022, mainly driven by favorable pricing, product mix and productivity, partially offset by inflation and pressure from a stronger Mexican peso. Distribution segment cost of goods sold decreased by $1.2 million, or 2.1%, from $58.4 million to $57.2 million for the nine months ended September 30, 2023 as compared to the same period in 2022, primarily due to decreased volume, partially offset by costs to acquire products. Distribution segment gross profit as a percentage of net sales increased by 246 basis points to 23.3% for the nine months ended September 30, 2023 from 20.9% for the nine months ended September 30, 2022, mainly driven by favorable product mix within the agency channel. Reconciling items consisting primarily of intercompany eliminations were $21.4 million and $17.6 million for the nine months ended September 30, 2023 and 2022, respectively.

Selling, general and administrative. Selling, general and administrative decreased by $12.8 million, or 10.8%, for the nine months ended September 30, 2023 as compared to the same period in 2022, primarily due to a $22.3 million decrease in stock-based compensation expense, slightly offset by an increase in employee compensation and related benefits.

Restructuring and transaction costs. Restructuring and transaction costs decreased by $2.2 million for the nine months ended September 30, 2023 as compared to the nine months ended September 30, 2022 primarily due to costs incurred in 2022 associated with acquisitions.

Related party expense.   Related party expense, which consists of rent expense related to distribution warehouses and retail stores that we lease from related parties, decreased by $1.0 million for the nine months ended September 30, 2023 as compared to the nine months ended September 30, 2022 primarily due to$1.0 million transaction fee paid to Kanders & Company, Inc., a company controlled by our Chief Executive Officer, in connection with the acquisition of Cyalume in 2022.

32

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

Interest expense. Interest expense decreased by $0.8 million, or 17.1%, for the nine months ended September 30, 2023 as compared to the nine months ended September 30, 2022, primarily due to a decrease in outstanding borrowings.

Other (expense) income, net. Other income, net was $0.4 million for the three months ended September 30, 2023 as compared to Other expense, net of $2.8 million for the three months ended September 30, 2022, primarily due to changes in foreign currency exchange rates.

(Provision) benefit for income taxes. Income tax provision was $11.5 million for the nine months ended September 30, 2023 compared to a tax benefit of $2.5 million for the nine months ended September 30, 2022. The effective tax rate was 28.3% and 76.5% for the nine months ended September 30, 2023 and 2022, respectively, and differed from the statutory rate primarily due to state taxes and executive compensation, partially offset by research and development tax credits.

NON-GAAP MEASURES

This Quarterly Report on Form 10-Q includes EBITDA and Adjusted EBITDA, which are non-GAAP financial measures that we use to supplement our results presented in accordance with U.S. GAAP. EBITDA is defined as net income before depreciation and amortization expense, interest expense and provision (benefit) for income tax. Adjusted EBITDA represents EBITDA that excludes restructuring and transaction costs, other (income) expense, net, stock-based compensation expense, stock-based compensation payroll tax expense, long-term incentive plan (“LTIP”) bonus and amortization of inventory step-up as these items do not represent our core operating performance.

EBITDA and Adjusted EBITDA are performance measures that we believe are useful to investors and analysts because they illustrate the underlying financial and business trends relating to our core, recurring results of operations and enhance comparability between periods. Adjusted EBITDA is considered by our board of directors and management as an important factor in determining performance-based compensation.

EBITDA and Adjusted EBITDA are not recognized measures under U.S. GAAP and are not intended to be a substitute for any U.S. GAAP financial measure and, as calculated, may not be comparable to other similarly-titled measures of performance of other companies. Investors should exercise caution in comparing our non-GAAP measures to any similarly titled measures used by other companies. These non-GAAP financial measures exclude certain items required by U.S. GAAP and should not be considered as alternatives to information reported in accordance with U.S. GAAP.

33

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

The table below presents our EBITDA and Adjusted EBITDA reconciled to the most comparable GAAP financial measures for the periods indicated:

    

Three Months Ended September 30, 

Nine Months Ended September 30, 

(in thousands)

    

2023

2022

2023

2022

Net income (loss)

    

$

11,053

  

$

4,941

    

$

29,047

  

$

(779)

Add back:

 

  

  

 

  

 

 

  

  

 

  

Depreciation and amortization

 

4,165

  

 

3,939

 

 

12,385

  

 

11,319

Interest expense

 

1,073

  

 

1,567

 

 

3,727

  

 

4,496

Provision (benefit) for income taxes

 

4,293

  

 

1,959

 

 

11,463

  

 

(2,536)

EBITDA

$

20,584

  

$

12,406

 

$

56,622

  

$

12,500

Add back:

 

  

  

 

  

 

 

  

  

 

  

Restructuring and transaction costs(1)

 

439

  

 

1,578

 

 

1,132

  

 

4,380

Other expense (income), net(2)

 

315

  

 

1,851

 

 

(395)

  

 

2,812

Stock-based compensation expense(3)

2,208

2,820

7,060

29,361

Stock-based compensation payroll tax expense(4)

220

305

LTIP bonus(5)

 

185

  

 

375

 

 

489

  

 

933

Amortization of inventory step-up(6)

  

 

1,711

3,055

Adjusted EBITDA

$

23,731

  

$

20,741

 

$

65,128

  

$

53,346

(1)Reflects the “Restructuring and transaction costs” line item on our condensed consolidated statements of operations and comprehensive income, which primarily includes transaction costs composed of legal and consulting fees, and $1.0 million paid to Kanders & Company, Inc., a company controlled by our Chief Executive Officer, for services related to the acquisition of Cyalume, which is included in related party expense in the Company’s condensed consolidated statements of operations and comprehensive income for the three and nine months ended September 30, 2022.
(2)Reflects the “Other (expense) income, net” line item on our condensed consolidated statement of operations and comprehensive income and primarily includes gains and losses due to fluctuations in foreign currency exchange rates.
(3)Reflects compensation expense related to equity and liability classified stock-based compensation plans.
(4)Reflects payroll taxes associated with vested stock-based compensation awards.
(5)Reflects the cost of a cash-based long-term incentive plan awarded to employees that vests over three years.
(6)Reflects amortization expense related to the step-up inventory adjustment recorded as a result of our recent acquisitions.

Adjusted EBITDA increased by $3.0 million for the three months ended September 30, 2023 as compared to 2022, primarily due to an increase in gross profit, partially offset by an increase in selling, general and administrative expenses. Adjusted EBITDA increased by $11.8 million for the nine months ended September 30, 2023 as compared to 2022, primarily due to an increase in net sales, an increase in gross profit margin and recent acquisitions.

LIQUIDITY AND CAPITAL RESOURCES

Liquidity refers to our ability to generate sufficient cash flows to meet the cash requirements of our business operations, including working capital needs, capital expenditures, debt service, acquisitions and other commitments. Our principal sources of liquidity have been cash provided by operating activities, cash on hand and amounts available under our revolving loans.

For the nine months ended September 30, 2023, net cash provided from operating activities totaled $46.3 million and as of September 30, 2023, cash and cash equivalents totaled $69.4 million. We believe that our cash flows from operations and cash on

34

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

hand, and available borrowing capacity under our existing credit facilities (as described below) will be adequate to meet our liquidity requirements for at least the 12 months following the date of this Quarterly Report on Form 10-Q. Our future capital requirements will depend on several factors, including future acquisitions and investments in our manufacturing facilities and equipment. We could be required, or could elect, to seek additional funding through public or private equity or debt financings; however, additional funds may not be available on terms acceptable to us, if at all.

Debt

As of September 30, 2023 and December 31, 2022, we had $143.6 million and $149.7 million in outstanding debt, net of debt discounts and debt issuance costs, respectively, primarily related to the term loan facilities.

2021 Credit Agreement

On August 20, 2021 (the “Closing Date”), the Company refinanced its existing credit facilities and entered into a new credit agreement whereby Safariland, LLC, as borrower (the “Borrower”), the Company and certain domestic subsidiaries of the Borrower, as guarantors (the “Guarantors”), closed on and received funding under a credit agreement (initially entered into on July 23, 2021), pursuant to a First Amendment to Credit Agreement (collectively, the “2021 Credit Agreement”) with PNC Bank, National Association (“PNC”), as administrative agent, and the several lenders from time to time party thereto (together with PNC, the “Lenders”) pursuant to which the Borrower (i) borrowed $200.0 million under a term loan (the “Term Loan”), and (ii) may borrow up to $100.0 million under a revolving credit facility (including up to $15.0 million for letters of credit and up to $10.0 million for swing line loans) (the “Revolving Loan”). Each of the Term Loan and the Revolving Loan mature on July 23, 2026. Commencing December 31, 2021, the New Term Loan requires scheduled quarterly payments in amounts equal to 1.25% per quarter of the original aggregate principal amount of the Term Loan, with the balance due at maturity. The 2021 Credit Agreement is guaranteed, jointly and severally, by the Guarantors and, subject to certain exceptions, secured by a first-priority security interest in substantially all of the assets of the Borrower and the Guarantors pursuant to a Security and Pledge Agreement and a Guaranty and Suretyship Agreement, each dated as of the Closing Date.

There were no amounts outstanding under the Revolving Loan as of September 30, 2023 and December 31, 2022. As of September 30, 2023, there were $2.6 million in outstanding letters of credit and $97.4 million of availability.

The Borrower may elect to have the Revolving Loan and Term Loan under the 2021 Credit Agreement bear interest at a base rate or LIBOR, in each case, plus an applicable margin. However, in connection with the market transition away from applicable LIBOR rates to SOFR, on May 31, 2023, the Company, the Borrowers and the Lenders entered into the third amendment to the 2021 Credit Agreement (the “Third Amendment”) pursuant to which the 2021 Credit Agreement was amended to implement the SOFR rates. The applicable margin for these borrowings ranges from 0.50% to 1.50% per annum, in the case of base rate borrowings, and 1.60% to 2.60% per annum, in the case of SOFR (and prior to May 31, 2023, on LIBOR) borrowings, in each case based upon the level of the Company’s consolidated total net leverage ratio.

The 2021 Credit Agreement also contains customary representations and warranties, and affirmative and negative covenants, including limitations on additional indebtedness, dividends, and other distributions, entry into new lines of business, use of loan proceeds, capital expenditures, restricted payments, restrictions on liens on the assets of the Borrowers or any Guarantor, transactions with affiliates, amendments to organizational documents, accounting changes, sale and leaseback transactions, dispositions, and mandatory prepayments in connection with certain liquidity events. The 2021 Credit Agreement contains certain restrictive debt covenants, which require us to: (i) maintain a minimum fixed charge coverage ratio of 1.25 to 1.00, starting with the quarter ended December 31, 2021, which is to be determined for each quarter end on a trailing four quarter basis and (ii) maintain a quarterly maximum consolidated total net leverage ratio of 3.75 to 1.00 from the quarter ended December 31, 2021 until the quarter ended September 30, 2022, and thereafter 3.50 to 1.00, which is in each case to be determined on a trailing four quarter basis; provided that under certain circumstances and subject to certain limitations, in the event of a material acquisition, we may temporarily increase the consolidated total net leverage ratio by up to 0.50 to 1.00 for four fiscal quarters following such acquisition. The 2021 Credit Agreement contains customary events of default that include, among others, non-payment of principal, interest or fees, violation of

35

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

covenants, inaccuracy of representations and warranties, failure to make payment on, or defaults with respect to, certain other material indebtedness, bankruptcy and insolvency events, material judgments and change of control provisions. Upon the occurrence of an event of default, and after the expiration of any applicable grace period, payment of any outstanding loans under the 2021 Credit Agreement may be accelerated and the Lenders could foreclose on their security interests in the assets of the Borrowers and the Guarantors. As of November 3, 2023, there were no amounts outstanding under the Revolving Loan.

The foregoing description of the 2021 Credit Agreement, as amended, does not purport to be complete and is qualified in its entirety by reference to Exhibits 10.15, 10.16 and 10.17 to our Annual Report on Form 10-K for the year ended December 31, 2022 as well to Exhibit 10.1 attached to our Quarterly Report on Form 10-Q for the quarter ended June 30, 2023, and are incorporated herein by reference as though fully set forth herein.

Canadian Credit Facility

On October 14, 2021, Med-Eng Holdings ULC and Pacific Safety Products Inc., the Company’s Canadian subsidiaries, as borrowers (the “Canadian Borrowers”), and Safariland, LLC, as guarantor (the “Canadian Guarantor”), closed on a line of credit pursuant to a Loan Agreement (the “Canadian Loan Agreement”) and a Revolving Line of Credit Note (the “Note”) with PNC Bank Canada Branch (“PNC Canada”), as lender pursuant to which the Canadian Borrowers may borrow up to CDN$10.0 million under a revolving line of credit (including up to $3.0 million for letters of credit) (the “Revolving Canadian Loan”). The Revolving Canadian Loan matures on July 23, 2026. The Canadian Loan Agreement is guaranteed by the Canadian Guarantor pursuant to a Guaranty and Suretyship Agreement.

The Canadian Borrowers may elect to have borrowings either in United States dollars or Canadian dollars under the Canadian Loan Agreement, which will bear interest at a base rate or LIBOR, in each case, plus an applicable margin, in the case of borrowings in United States dollars, or at a Canadian Prime Rate (as announced from time to time by PNC Canada) or a Canadian deposit offered rate (“CDOR”) as determined from time to time by PNC Canada in accordance with the Canadian Loan Agreement. The applicable margin for these borrowings will range from 0.50% to 1.50% per annum, in the case of base rate borrowings and Canadian Prime Rate borrowings, and 1.50% to 2.50% per annum, in the case of LIBOR borrowings and CDOR borrowings. The Canadian Loan Agreement also requires the Canadian Borrowers to pay (i) an unused line fee on the unused portion of the loan commitments in an amount ranging between 0.175% and 0.25% per annum, based upon the level of the Company’s consolidated total net leverage ratio, and (ii) an upfront fee equal to 0.25% of the principal amount of the Note.

There were no amounts outstanding under the Revolving Canadian Loan as of September 30, 2023 and December 31, 2022.

The Canadian Loan Agreement also contains customary representations and warranties, and affirmative and negative covenants, including, among others, limitations on additional indebtedness, entry into new lines of business, entry into guarantee agreements, making of any loans or advances to, or investments in, any other person, restrictions on liens on the assets of the Canadian Borrowers and mergers, transfers of assets and acquisitions. The Canadian Loan Agreement and Note also contain customary events of default that include, among others, non-payment of principal, interest or fees, violation of covenants, inaccuracy of representations and warranties, failure to make payment on, or defaults with respect to, certain other material indebtedness, bankruptcy and insolvency events, material judgments and change of control provisions. Upon the occurrence of an event of default, and after the expiration of any applicable grace period, payment of any outstanding loans under the Canadian Loan Agreement may be accelerated. As of November 3, 2023, there were no amounts outstanding under the Revolving Canadian Loan.

The foregoing description of the Canadian Loan Agreement does not purport to be complete and is qualified in its entirety by reference to the Canadian Loan Agreement, which is Exhibit 10.18 to our Annual Report on Form 10-K for the year ended December 31, 2022, and is incorporated herein by reference as though fully set forth herein.

36

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

Cash Flows

The following table presents a summary of our cash flows for the periods indicated:

    

Nine Months Ended September 30, 

(in thousands)

    

2023

    

2022

Net cash provided by operating activities

$

46,260

  

$

29,501

Net cash used in investing activities

 

(4,042)

  

 

(57,977)

Net cash (used in) provided by financing activities

 

(18,184)

  

 

31,210

Effects of foreign exchange rates on cash and cash equivalents

 

92

  

 

(241)

Change in cash and cash equivalents

 

24,126

  

 

2,493

Cash and cash equivalents, beginning of period

 

45,286

  

 

33,857

Cash and cash equivalents, end of period

$

69,412

  

$

36,350

Net cash provided by operating activities

During the nine months ended September 30, 2023, net cash provided by operating activities of $46.3 million resulted primarily from net income of $29.0 million, a $12.4 million add back to net income for depreciation and amortization, a $7.1 million add back to net income for stock-based compensation and changes in operating assets and liabilities of $3.3 million. Changes in operating assets and liabilities were primarily driven by a decrease in accounts receivable of $3.4 million, an increase in inventories of $12.2 million and an increase in accounts payable and other liabilities of $8.6 million.

During the nine months ended September 30, 2022, net cash provided by operating activities of $29.5 million resulted primarily from net loss of $0.8 million, a $29.0 million add back to net loss for stock-based compensation, a $11.3 million add back to net loss for depreciation and amortization and changes in operating assets and liabilities of $14.1 million. Changes in operating assets and liabilities were primarily driven by an increase in accounts receivable of $3.3 million, an increase in inventories of $7.2 million and a decrease in accounts payable and other liabilities of $4.6 million.

Net cash used in investing activities

During the nine months ended September 30, 2023, we used $4.0 million of cash in investing activities, primarily consisting of $4.2 million for purchases of property and equipment.

During the nine months ended September 30, 2022, we used $58.0 million of cash in investing activities, consisting of $19.4 million for the acquisition of Radar, $35.7 million for the acquisition of Cyalume and $2.9 million for purchases of property and equipment.

Net cash (used in) provided by financing activities

During the nine months ended September 30, 2023, we used $18.2 million of cash in financing activities, primarily consisting of principal payments on term loans of $7.5 million, taxes paid in connection with employee stock transactions of $2.7 million and dividends distributed of $9.0 million.

During the nine months ended September 30, 2022, net cash provided by financing activities of $31.2 million resulted primarily from proceeds from the secondary offering of $56.3 million, partially offset by principal payments on term loans of $7.5 million, taxes paid in connection with employee stock transactions of $6.2 million and dividends distributed of $8.5 million.

37

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

Contractual Obligations

Our long-term contractual obligations generally include our debt and related interest payments and operating and finance lease payments for our property and equipment, and are expected to be funded from cash-on-hand, cash from operations and availability under our existing credit facilities. There were no significant changes to our contractual obligations from those disclosed in the Annual Report on Form 10-K for the year ended December 31, 2022.

Off-Balance Sheet Arrangements

We do not engage in off-balance sheet financing arrangements, as defined in Item 303(a)(4)(ii) of Regulation S-K.

CRITICAL ACCOUNTING POLICIES AND SIGNIFICANT JUDGMENTS AND ESTIMATES

Our condensed consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles, or U.S. GAAP. Preparation of the financial statements requires us to make judgments, estimates and assumptions that impact the reported amount of net sales and expenses, assets and liabilities and the disclosure of contingent assets and liabilities. We consider an accounting judgment, estimate or assumption to be critical when the estimate or assumption is complex in nature or requires a high degree of judgment and when the use of different judgments, estimates and assumptions could have a material impact on our condensed consolidated financial statements. While our significant accounting policies are described in more detail in notes in our condensed consolidated financial statements included elsewhere in this Quarterly Report on Form 10-Q, we believe that the following accounting policies are those most critical to the judgments and estimates used in the preparation of our financial statements.

There have been no significant changes to our critical accounting policies as described in our Annual Report on Form 10-K for the year ended December 31, 2022.

Recently Adopted and Issued Accounting Pronouncements

Recently issued and adopted accounting pronouncements are described in notes to our audited consolidated financial statements included elsewhere in this Quarterly Report on Form 10-Q.

Emerging Growth Company

We are an “emerging growth company,” as defined in the Jumpstart Our Business Startups Act of 2012 (the “JOBS Act”). As such, we are eligible for exemptions from various reporting requirements applicable to other public companies that are not emerging growth companies, including, but not limited to, presenting only two years of audited financial statements, not being required to comply with the auditor attestation requirements of Section 404 of the Sarbanes-Oxley Act of 2002, reduced disclosure obligations regarding executive compensation, and an exemption from the requirements to obtain a non-binding advisory vote on executive compensation or golden parachute arrangements.

In addition, an emerging growth company can take advantage of an extended transition period for complying with new or revised accounting standards. This provision allows an emerging growth company to delay the adoption of certain accounting standards until those standards would otherwise apply to private companies. We have elected to avail ourselves of this provision of the JOBS Act. As a result, we will not be subject to new or revised accounting standards at the same time as other public companies that are not emerging growth companies. Therefore, our condensed consolidated financial statements may not be comparable to those of companies that comply with new or revised accounting pronouncements as of public company effective dates.

38

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

ITEM 3. QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK

We have in the past and may in the future be exposed to certain market risks, including interest rate, foreign currency exchange in the ordinary course of our business. Market risk represents the risk of loss that may impact our financial condition or results of operations due to adverse changes in financial market prices and rates. These risks are not significant to our results of operations, but they may be in the future. We do not hold or issue financial instruments for speculative or trading purposes. There have not been material changes in market risk exposures as of September 30, 2023.

Interest rate risk

Changes in interest rates affect the amount of interest expense we are required to pay on our floating rate debt. As of September 30, 2023, we had $141.1 million in outstanding floating rate debt, which bears interest at one-month SOFR (5.32% as of September 30, 2023) plus 1.60%.

We entered into the Swap Agreements to convert a portion of the interest rate exposure on our floating rate debt from variable to fixed and designated them as cash flow hedges. Under the terms of the Swap Agreements, we receive payments based on the 1-month SOFR. A portion of the amount included in accumulated other comprehensive income is reclassified into interest expense, net as a yield adjustment as interest is either paid or received on the hedged debt. The fair value of our Swap Agreements is based upon Level 2 inputs. We have considered our own credit risk and the credit risk of the counterparties when determining the fair value of our Swap Agreements.

We performed a sensitivity analysis on the principal amount of debt as of September 30, 2023, as well as the effect of our Swap Agreements. Further, in this sensitivity analysis, the change in interest rates is assumed to be applicable for an entire year. On an annual basis, a change of 100 basis points in the applicable interest rate would cause a change in interest expense of $1.4 million on the principal amount of debt and would have an immaterial effect when including the effect of our Swap Agreements.

As of September 30, 2023, we had the following Swap Agreements (in thousands):

Effective Date

    

Notional Amount

    

Fixed Rate

September 30, 2021 through July 23, 2026

$

100,000

0.812

%

May 31, 2023 through July 23, 2026

    

$

50,000

    

3.905

%

During the nine months ended September 30, 2023, there were no interest rate swap agreements that expired.

Foreign currency exchange rate risk

Our operations are geographically diverse and we are exposed to foreign currency exchange risk primarily for the Canadian dollar and Mexican peso, related to our transactions and our subsidiaries’ balances that are denominated in currencies other than the U.S. dollar, our functional currency. We do not currently hedge our foreign currency transaction or translation exposure, though we have done so in the past and may do so in the future. Significant currency fluctuations could impact the comparability of our results of operations between periods. A 10% increase or decrease in the value of the Canadian dollar to the U.S. dollar would have caused our reported net sales to increase or decrease by approximately $0.3 million and $0.6 million for the three and nine months ended September 30, 2023. A 10% increase or decrease in the value of the Canadian dollar to the U.S. dollar would have caused our reported net income to increase or decrease by approximately $0.1 million and $0.2 million for the three and nine months ended September 30, 2023, excluding unrealized gains or losses from remeasurement. A 10% increase or decrease in the value of the Mexican peso to the U.S. dollar would have caused our reported net income to increase or decrease by approximately $0.6 million and $1.8 million for the three and nine months ended September 30, 2023, excluding unrealized gains or losses from remeasurement.

39

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

ITEM 4. CONTROLS AND PROCEDURES

Evaluation of Disclosure Controls and Procedures

The Company’s management carried out an evaluation, under the supervision and with the participation of the Company’s Chief Executive Officer and Chief Financial Officer, its principal executive officer and principal financial officer, respectively, of the effectiveness of the design and operation of the Company’s disclosure controls and procedures (as such term is defined in Rules 13a-15(c) and 15d-15(e) under the Securities Exchange Act of 1934, as amended (“Exchange Act”)) as of September 30, 2023, pursuant to Exchange Act Rule 13a-15. Such disclosure controls and procedures are designed to ensure that information required to be disclosed by the Company in reports we file or submit under the Exchange Act is (i) recorded, processed, summarized, evaluated and reported, as applicable, within the time periods specified in the SEC’s rules and forms, and (ii) accumulated and communicated to the appropriate management on a basis that permits timely decisions regarding disclosure. Based upon that evaluation, the Company’s Chief Executive Officer and Chief Financial Officer concluded that the Company’s disclosure controls and procedures as of September 30, 2023 were effective.

Changes in Internal Control over Financial Reporting

There was no change in our internal control over financial reporting during the quarter ended September 30, 2023 that has materially affected, or is reasonably likely to materially affect, our internal control over financial reporting.

Limitations on Effectiveness of Controls and Procedures

Our management, including our principal executive officer and principal financial officer, does not expect that our disclosure controls can prevent all errors and all fraud. A control system, no matter how well conceived and operated, can provide only reasonable, not absolute, assurance that the objectives of the control system are met. There are inherent limitations in all control systems, including the realities that judgments in decision-making can be faulty and that breakdowns can occur because of simple error or mistake. Additionally, controls can be circumvented by the individual acts of one or more persons. The design of any system of controls also is based in part upon certain assumptions about the likelihood of future events and there can be no assurance that any design will succeed in achieving its stated goals under all potential conditions. Because of the inherent limitations in any control system, misstatements due to error or fraud may occur and not be detected.

40

PART II. OTHER INFORMATION

ITEM 1. LEGAL PROCEEDINGS

Refer to Note 7 of the Notes to Condensed Consolidated Financial Statements included in Part I, Item 1 of this Quarterly Report on Form 10-Q, which is incorporated herein by reference.

ITEM 1A. RISK FACTORS

There have been no material changes in our risk factors from those disclosed in Part I, Item 1A. of the Company’s Annual Report on Form 10-K for the year ended December 31, 2022.

ITEM 6. EXHIBITS

Exhibit 
No.

    

Description

31.1*

Certification of Principal Executive Officer pursuant to Rules 13a-14(a) and 15d-14(a), as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.

31.2*

Certification of Principal Financial Officer pursuant to Rule 13a-14(a) and 15d-14(a), as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.

32.1**

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

32.2**

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

101.INS

Inline XBRL Instance Document

101.SCH

Inline XBRL Taxonomy Extension Schema Document

101.CAL

Inline XBRL Taxonomy Extension Calculation Linkbase Document

101.DEF

Inline XBRL Taxonomy Extension Definition Linkbase Document

101.LAB

Inline XBRL Taxonomy Extension Label Linkbase Document

101.PRE

Inline XBRL Taxonomy Extension Presentation Linkbase Document

104

Cover Page Interactive Data File (embedded within the Inline XBRL document)

*

Filed herewith

**

Furnished herewith. The certifications attached as Exhibits 32.1 and 32.2 that accompany this Quarterly Report on Form 10-Q are deemed furnished and not filed with the Securities and Exchange Commission and are not to be incorporated by reference into any filing of the Company under the Securities Act or the Exchange Act, whether made before or after the date of this Quarterly Report on Form 10-Q, irrespective of any general incorporation language contained in such filing.

41

SIGNATURES

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

CADRE HOLDINGS, INC.

Date: November 8, 2023

By:

/s/ Warren B. Kanders

Name:

Warren B. Kanders

Title:

Chief Executive Officer

(Principal Executive Officer)

Date: November 8, 2023

By:

/s/ Blaine Browers

Name:

Blaine Browers

Title:

Chief Financial Officer

(Principal Financial Officer and Principal Accounting Officer)

42

EX-31.1 2 cdre-20230930xex31d1.htm EX-31.1

Exhibit 31.1

CERTIFICATION OF PRINCIPAL EXECUTIVE OFFICER

I, Warren B. Kanders, certify that:

1. I have reviewed this Quarterly Report on Form 10-Q of Cadre Holdings, Inc.;

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

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

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

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

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

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

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

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

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

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

Date: November 8, 2023

By:

/s/ Warren B. Kanders

Name:

Warren B. Kanders

Title:

Chief Executive Officer

 

(Principal Executive Officer)


EX-31.2 3 cdre-20230930xex31d2.htm EX-31.2

Exhibit 31.2

CERTIFICATION OF PRINCIPAL FINANCIAL OFFICER

I, Blaine Browers, certify that:

1. I have reviewed this Quarterly Report on Form 10-Q of Cadre Holdings, Inc.;

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

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

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

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

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

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

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

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

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

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

Date: November 8, 2023

By:

/s/ Blaine Browers

Name:

Blaine Browers

Title:

Chief Financial Officer

 

(Principal Financial Officer)


EX-32.1 4 cdre-20230930xex32d1.htm 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 Cadre Holdings, Inc. (the “Company”) on Form 10-Q for the period ended September 30, 2023 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Warren B. Kanders, Chief Executive Officer, certify to my knowledge, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:

(1)

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

(2)

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

A signed original of this written statement required by Section 906 has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission or its staff upon request.

2

Date: November 8, 2023

By:

/s/ Warren B. Kanders

Name:

Warren B. Kanders

Title:

Chief Executive Officer

 

(Principal Executive Officer)


EX-32.2 5 cdre-20230930xex32d2.htm 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 Cadre Holdings, Inc. (the “Company”) on Form 10-Q for the period ended September 30, 2023 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Blaine Browers, Chief Financial Officer, certify to my knowledge, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:

(1)

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

(2)

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

A signed original of this written statement required by Section 906 has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission or its staff upon request.

Date: November 8, 2023

By:

/s/ Blaine Browers

Name:

Blaine Browers

Title:

Chief Financial Officer

 

(Principal Financial Officer)


EX-101.SCH 6 cdre-20230930.xsd EX-101.SCH 00100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 00200 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME link:presentationLink link:calculationLink link:definitionLink 00201 - Statement - Consolidated Statements of Operations and Comprehensive Income link:presentationLink link:calculationLink link:definitionLink 00300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 40201 - Disclosure - ACQUISITIONS - Summary - Radar (Details) link:presentationLink link:calculationLink link:definitionLink 40202 - Disclosure - ACQUISITIONS - Purchase Price Consideration and Fair Value - Radar (Details) link:presentationLink link:calculationLink link:definitionLink 40401 - Disclosure - INVENTORIES (Details) link:presentationLink link:calculationLink link:definitionLink 40505 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Amortization expense for definite lived intangible assets (Details) link:presentationLink link:calculationLink link:definitionLink 40601 - Disclosure - DEBT - Schedule of company's debt (Details) link:presentationLink link:calculationLink link:definitionLink 40602 - Disclosure - DEBT - Summary of aggregate principal payment of long-term debt (Details) link:presentationLink link:calculationLink link:definitionLink 40903 - Disclosure - GOODWILL AND OTHER INTANGIBLES - Summary of intangible assets (Details) link:presentationLink link:calculationLink link:definitionLink 41001 - Disclosure - LEASES - Schedule of operating assets and liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 41002 - Disclosure - LEASES - Components of lease expense (Details) link:presentationLink link:calculationLink link:definitionLink 41004 - Disclosure - LEASES - Future minimum lease payments under operating leases (Details) link:presentationLink link:calculationLink link:definitionLink 41009 - Disclosure - Leases - Future Minimum Lease Payments (Details) Calc 2 link:presentationLink link:calculationLink link:definitionLink 00400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 30203 - Disclosure - ACQUISITIONS (Tables) link:presentationLink link:calculationLink link:definitionLink 40101 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 40102 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Assets and liabilities measured at fair value on a recurring basis (Details) link:presentationLink link:calculationLink link:definitionLink 40105 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Weighted average shares outstanding and net income (loss) per share (Details) link:presentationLink link:calculationLink link:definitionLink 40203 - Disclosure - ACQUISITIONS - Intangible Assets - Radar (Details) link:presentationLink link:calculationLink link:definitionLink 40204 - Disclosure - ACQUISITIONS - Summary - Cyalume (Details) link:presentationLink link:calculationLink link:definitionLink 40205 - Disclosure - ACQUISITIONS - Purchase Price Consideration and Fair Value - Cyalume (Details) link:presentationLink link:calculationLink link:definitionLink 40206 - Disclosure - ACQUISITIONS - Intangible Assets - Cyalume (Details) link:presentationLink link:calculationLink link:definitionLink 40301 - Disclosure - REVENUE RECOGNITION - Net sales by channel and geography (Details) link:presentationLink link:calculationLink link:definitionLink 40302 - Disclosure - REVENUE RECOGNITION - Includes all Distribution sales (Details) link:presentationLink link:calculationLink link:definitionLink 40304 - Disclosure - REVENUE RECOGNITION - Additional information (Details) link:presentationLink link:calculationLink link:definitionLink 40304 - Disclosure - REVENUE RECOGNITION - Additional information Default (Details) link:presentationLink link:calculationLink link:definitionLink 40501 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of changes in goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 40503 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of intangible assets (Details) link:presentationLink link:calculationLink link:definitionLink 40603 - Disclosure - DEBT - 2021 Credit Facility (Details) link:presentationLink link:calculationLink link:definitionLink 40604 - Disclosure - DEBT - Canadian Credit Facility (Details) link:presentationLink link:calculationLink link:definitionLink 40605 - Disclosure - DEBT - Schedule of interest rate swaps (Details) link:presentationLink link:calculationLink link:definitionLink 40606 - Disclosure - DEBT - Schedule of fair value swap agreement (Details) link:presentationLink link:calculationLink link:definitionLink 40901 - Disclosure - COMPENSATION PLANS - Long-Term Incentive Plan (Details) link:presentationLink link:calculationLink link:definitionLink 40902 - Disclosure - COMPENSATION PLANS - Executive Compensation Plan (Details) link:presentationLink link:calculationLink link:definitionLink 41101 - Disclosure - RELATED PARTY TRANSACTIONS (Details) link:presentationLink link:calculationLink link:definitionLink 41202 - Disclosure - SEGMENT DATA - asset information or operating expenses by segment (Details) link:presentationLink link:calculationLink link:definitionLink 00090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 00105 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00205 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00405 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 10101 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES link:presentationLink link:calculationLink link:definitionLink 10201 - Disclosure - ACQUISITIONS link:presentationLink link:calculationLink link:definitionLink 10301 - Disclosure - REVENUE RECOGNITION link:presentationLink link:calculationLink link:definitionLink 10401 - Disclosure - INVENTORIES link:presentationLink link:calculationLink link:definitionLink 10501 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS link:presentationLink link:calculationLink link:definitionLink 10601 - Disclosure - DEBT link:presentationLink link:calculationLink link:definitionLink 10701 - Disclosure - COMMITMENTS AND CONTINGENCIES link:presentationLink link:calculationLink link:definitionLink 10801 - Disclosure - INCOME TAXES link:presentationLink link:calculationLink link:definitionLink 10901 - Disclosure - COMPENSATION PLANS link:presentationLink link:calculationLink link:definitionLink 11001 - Disclosure - LEASES link:presentationLink link:calculationLink link:definitionLink 11101 - Disclosure - RELATED PARTY TRANSACTIONS link:presentationLink link:calculationLink link:definitionLink 11201 - Disclosure - SEGMENT DATA link:presentationLink link:calculationLink link:definitionLink 20102 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies) link:presentationLink link:calculationLink link:definitionLink 30103 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables) link:presentationLink link:calculationLink link:definitionLink 30303 - Disclosure - REVENUE RECOGNITION (Tables) link:presentationLink link:calculationLink link:definitionLink 30403 - Disclosure - INVENTORIES (Tables) link:presentationLink link:calculationLink link:definitionLink 30503 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS (Tables) link:presentationLink link:calculationLink link:definitionLink 30603 - Disclosure - DEBT (Tables) link:presentationLink link:calculationLink link:definitionLink 31003 - Disclosure - LEASES (Tables) link:presentationLink link:calculationLink link:definitionLink 31203 - Disclosure - SEGMENT DATA (Tables) link:presentationLink link:calculationLink link:definitionLink 40103 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Transfers of assets or liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 40104 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Accrued warranties and related costs (Details) link:presentationLink link:calculationLink link:definitionLink 40303 - Disclosure - REVENUE RECOGNITION - Contract Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 40502 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Impairment of Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 40504 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Additional information (Details) link:presentationLink link:calculationLink link:definitionLink 40701 - Disclosure - COMMITMENTS AND CONTINGENCIES - Legal Proceedings (Details) link:presentationLink link:calculationLink link:definitionLink 40801 - Disclosure - INCOME TAXES (Details) link:presentationLink link:calculationLink link:definitionLink 41003 - Disclosure - LEASES - Weighted average remaining lease term and discount rate (Details) link:presentationLink link:calculationLink link:definitionLink 41005 - Disclosure - LEASES - Supplemental cash flow information related to leases (Details) link:presentationLink link:calculationLink link:definitionLink 41201 - Disclosure - SEGMENT DATA - Other (Details) link:presentationLink link:calculationLink link:definitionLink 99900 - Disclosure - Standard And Custom Axis Domain Defaults link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 cdre-20230930_cal.xml EX-101.CAL EX-101.DEF 8 cdre-20230930_def.xml EX-101.DEF EX-101.LAB 9 cdre-20230930_lab.xml EX-101.LAB EX-101.PRE 10 cdre-20230930_pre.xml EX-101.PRE XML 11 R1.htm IDEA: XBRL DOCUMENT v3.23.3
Document and Entity Information - shares
9 Months Ended
Sep. 30, 2023
Nov. 03, 2023
Document and Entity Information [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Sep. 30, 2023  
Document Transition Report false  
Entity File Number 001-40698  
Entity Registrant Name CADRE HOLDINGS, INC.  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 38-3873146  
Entity Address, Address Line One 13386 International Pkwy  
Entity Address, City or Town Jacksonville,  
Entity Address State Or Province FL  
Entity Address, Postal Zip Code 32218  
City Area Code 904  
Local Phone Number 741-5400  
Title of 12(b) Security Common Stock, par value $0.0001 per share  
Trading Symbol CDRE  
Security Exchange Name NYSE  
Entity Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Filer Category Accelerated Filer  
Entity Small Business false  
Entity Emerging Growth Company true  
Entity Ex Transition Period false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding   37,586,031
Entity Central Index Key 0001860543  
Current Fiscal Year End Date --12-31  
Document Fiscal Year Focus 2023  
Document Fiscal Period Focus Q3  
Amendment Flag false  
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.23.3
CONDENSED CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Sep. 30, 2023
Dec. 31, 2022
Current assets    
Cash and cash equivalents $ 69,412 $ 45,286
Accounts receivable, net of allowance for doubtful accounts of $819 and $924, respectively 61,261 64,557
Inventories 82,546 70,273
Prepaid expenses 14,667 10,091
Other current assets 8,836 6,811
Total current assets 236,722 197,018
Property and equipment, net of accumulated depreciation and amortization of $48,994 and $42,694, respectively 43,657 45,285
Operating lease assets 6,643 8,489
Deferred tax assets, net 2,299 2,255
Intangible assets, net 44,333 50,695
Goodwill 81,212 81,576
Other assets 5,639 6,634
Total assets 420,505 391,952
Current liabilities    
Accounts payable 30,733 23,406
Accrued liabilities 38,673 38,720
Income tax payable 7,049 4,584
Current portion of long-term debt 13,251 12,211
Total current liabilities 89,706 78,921
Long-term debt 130,309 137,476
Long-term operating lease liabilities 3,603 4,965
Deferred tax liabilities 5,047 3,508
Other liabilities 1,843 1,192
Total liabilities 230,508 226,062
Commitments and contingencies (Note 7)
Mezzanine equity    
Preferred stock ($0.0001 par value, 10,000,000 shares authorized, no shares issued and outstanding as of September 30, 2023 and December 31, 2022)
Shareholders' equity    
Common stock ($0.0001 par value, 190,000,000 shares authorized, 37,586,031 and 37,332,271 shares issued and outstanding as of September 30, 2023 and December 31, 2022, respectively) 4 4
Additional paid-in capital 210,543 206,540
Accumulated other comprehensive income 2,143 2,087
Accumulated deficit (22,693) (42,741)
Total shareholders' equity 189,997 165,890
Total liabilities, mezzanine equity and shareholders' equity $ 420,505 $ 391,952
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.23.3
CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) - USD ($)
Sep. 30, 2023
Dec. 31, 2022
CONDENSED CONSOLIDATED BALANCE SHEETS    
Accounts receivable, allowance for doubtful accounts $ 819,000 $ 924,000
Property and equipment, accumulated depreciation and amortization $ 48,994,000 $ 42,694,000
Preferred stock, par value $ 0.0001 $ 0.0001
Preferred stock, shares authorized 10,000,000 10,000,000
Preferred stock, shares issued 0 0
Preferred stock, shares outstanding 0 0
Common stock, par value $ 0.0001 $ 0.0001
Common stock, shares authorized 190,000,000 190,000,000
Common stock, shares issued 37,586,031 37,332,271
Common stock, shares outstanding 37,586,031 37,332,271
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.23.3
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME - USD ($)
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Sep. 30, 2023
Sep. 30, 2022
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME        
Net sales $ 125,114,000 $ 111,554,000 $ 357,949,000 $ 334,192,000
Cost of goods sold 71,511,000 67,814,000 206,981,000 207,042,000
Gross profit 53,603,000 43,740,000 150,968,000 127,150,000
Operating expenses        
Selling, general and administrative 36,314,000 31,732,000 105,615,000 118,431,000
Restructuring and transaction costs 439,000 1,578,000 1,132,000 3,380,000
Related party expense 116,000 112,000 379,000 1,346,000
Total operating expenses 36,869,000 33,422,000 107,126,000 123,157,000
Operating income 16,734,000 10,318,000 43,842,000 3,993,000
Other expense        
Interest expense (1,073,000) (1,567,000) (3,727,000) (4,496,000)
Other (expense) income, net (315,000) (1,851,000) 395,000 (2,812,000)
Total other expense, net (1,388,000) (3,418,000) (3,332,000) (7,308,000)
Income (loss) before provision for income taxes 15,346,000 6,900,000 40,510,000 (3,315,000)
(Provision) benefit for income taxes (4,293,000) (1,959,000) (11,463,000) 2,536,000
Net income (loss) $ 11,053,000 $ 4,941,000 $ 29,047,000 $ (779,000)
Net income (loss) per share:        
Basic $ 0.29 $ 0.13 $ 0.77 $ (0.02)
Diluted $ 0.29 $ 0.13 $ 0.77 $ (0.02)
Weighted average shares outstanding:        
Basic 37,586,031 37,289,880 37,515,976 35,697,891
Diluted 37,930,888 37,747,614 37,830,790 35,697,891
Net income (loss) $ 11,053,000 $ 4,941,000 $ 29,047,000 $ (779,000)
Other comprehensive income:        
Unrealized holding gains, net of tax(1) 1,131,000 2,350,000 2,281,000 6,414,000
Reclassification adjustments for gains included in net income (loss), net of tax(2) (884,000) (252,000) (2,266,000) (106,000)
Total unrealized gain on interest rate swaps, net of tax 247,000 2,098,000 15,000 6,308,000
Foreign currency translation adjustments, net of tax(3) (850,000) (2,839,000) 41,000 (5,237,000)
Other comprehensive (loss) income (603,000) (741,000) 56,000 1,071,000
Comprehensive income, net of tax $ 10,450,000 $ 4,200,000 $ 29,103,000 $ 292,000
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.23.3
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical) - USD ($)
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Sep. 30, 2023
Sep. 30, 2022
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME        
Unrealized holding gains, net of tax expense $ 377,000 $ 783,000 $ 760,000 $ 2,138,000
Reclassification adjustments for gains included in net of income tax expense 295,000 84,000 755,000 35,000
Foreign currency translation adjustments, net of tax expense (benefit) $ (170,000) $ (916,000) $ 55,000 $ (934,000)
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.23.3
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Cash Flows From Operating Activities:    
Net income (loss) $ 29,047 $ (779)
Adjustments to reconcile net income (loss) to net cash provided by operating activities:    
Depreciation and amortization 12,385 11,319
Amortization of original issue discount and debt issue costs 359 554
Amortization of inventory step-up   3,055
Deferred income taxes 1,317 (2,755)
Stock-based compensation 7,060 28,988
Gain on sale of fixed assets (98)  
Provision for losses on accounts receivable 37 245
Foreign exchange (gain) loss (243) 3,006
Other (296)  
Changes in operating assets and liabilities, net of impact of acquisitions:    
Accounts receivable 3,429 (3,271)
Inventories (12,229) (7,187)
Prepaid expenses and other assets (3,131) 986
Accounts payable and other liabilities 8,623 (4,660)
Net cash provided by operating activities 46,260 29,501
Cash Flows From Investing Activities:    
Purchase of property and equipment (4,248) (2,938)
Proceeds from disposition of property and equipment 206  
Business acquisitions, net of cash acquired   (55,039)
Net cash used in investing activities (4,042) (57,977)
Cash Flows From Financing Activities:    
Proceeds from revolving credit facilities   43,000
Principal payments on revolving credit facilities   (43,000)
Principal payments on term loans (7,500) (7,514)
Proceeds from insurance premium financing 3,949 3,989
Principal payments on insurance premium financing (2,909) (3,878)
Payment of capital leases   (26)
Taxes paid in connection with employee stock transactions (2,725) (6,216)
Proceeds from secondary offering, net of underwriter discounts   56,329
Deferred offering costs   (2,953)
Dividends distributed (8,999) (8,521)
Net cash (used in) provided by financing activities (18,184) 31,210
Effect of foreign exchange rates on cash and cash equivalents 92 (241)
Change in cash and cash equivalents 24,126 2,493
Cash and cash equivalents, beginning of period 45,286 33,857
Cash and cash equivalents, end of period 69,412 36,350
Supplemental Disclosure of Cash Flows Information:    
Cash paid for income taxes, net 7,923 710
Cash paid for interest 7,389 3,860
Supplemental Disclosure of Non-Cash Investing and Financing Activities:    
Accruals and accounts payable for capital expenditures $ 24 $ 272
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.23.3
CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY - USD ($)
Common Stock
Additional Paid-In Capital
Accumulated Other Comprehensive Income (Loss)
Accumulated Deficit
Total
Balance at the beginning at Dec. 31, 2021 $ 3,000 $ 127,606,000 $ (1,917,000) $ (37,052,000) $ 88,640,000
Balance at the beginning (in shares) at Dec. 31, 2021 34,383,350        
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)       (10,165,000) (10,165,000)
Dividends declared       (2,750,000) (2,750,000)
Stock-based compensation   22,436,000     22,436,000
Common stock issued under employee compensation plans   1,152,000     1,152,000
Common stock issued under employee compensation plans (in shares) 580,990        
Common stock withheld related to net share settlement of stock-based compensation   (6,216,000)     (6,216,000)
Common stock withheld related to net share settlement of stock-based compensation (in shares) (182,069)        
Foreign currency translation adjustments     (360,000)   (360,000)
Change in fair value of derivative instruments     3,208,000   3,208,000
Balance at the end at Mar. 31, 2022 $ 3,000 144,978,000 931,000 (49,967,000) 95,945,000
Balance at the end (in shares) at Mar. 31, 2022 34,782,271        
Balance at the beginning at Dec. 31, 2021 $ 3,000 127,606,000 (1,917,000) (37,052,000) 88,640,000
Balance at the beginning (in shares) at Dec. 31, 2021 34,383,350        
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)         (779,000)
Foreign currency translation adjustments         (5,237,000)
Balance at the end at Sep. 30, 2022 $ 4,000 203,754,000 (846,000) (46,352,000) 156,560,000
Balance at the end (in shares) at Sep. 30, 2022 37,332,271        
Balance at the beginning at Mar. 31, 2022 $ 3,000 144,978,000 931,000 (49,967,000) 95,945,000
Balance at the beginning (in shares) at Mar. 31, 2022 34,782,271        
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)       4,445,000 4,445,000
Issuance of common stock in secondary offering, net of underwriter discounts and issuance costs $ 1,000 46,987,000     46,988,000
Issuance of common stock in secondary offering, net of underwriter discounts and issuance costs (in shares) 2,250,000        
Dividends declared       (2,783,000) (2,783,000)
Stock-based compensation   2,739,000     2,739,000
Foreign currency translation adjustments     (2,038,000)   (2,038,000)
Change in fair value of derivative instruments     1,002,000   1,002,000
Balance at the end at Jun. 30, 2022 $ 4,000 194,704,000 (105,000) (48,305,000) 146,298,000
Balance at the end (in shares) at Jun. 30, 2022 37,032,271        
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)       4,941,000 4,941,000
Issuance of common stock in secondary offering, net of underwriter discounts and issuance costs   6,389,000     6,389,000
Issuance of common stock in secondary offering, net of underwriter discounts and issuance costs (in shares) 300,000        
Dividends declared       (2,988,000) (2,988,000)
Stock-based compensation   2,661,000     2,661,000
Foreign currency translation adjustments     (2,839,000)   (2,839,000)
Change in fair value of derivative instruments     2,098,000   2,098,000
Balance at the end at Sep. 30, 2022 $ 4,000 203,754,000 (846,000) (46,352,000) 156,560,000
Balance at the end (in shares) at Sep. 30, 2022 37,332,271        
Balance at the beginning at Dec. 31, 2022 $ 4,000 206,540,000 2,087,000 (42,741,000) $ 165,890,000
Balance at the beginning (in shares) at Dec. 31, 2022 37,332,271       37,332,271
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)       7,002,000 $ 7,002,000
Dividends declared       (2,986,000) (2,986,000)
Stock-based compensation   2,636,000     2,636,000
Common stock issued under employee compensation plans (in shares) 395,837        
Common stock withheld related to net share settlement of stock-based compensation   (2,725,000)     (2,725,000)
Common stock withheld related to net share settlement of stock-based compensation (in shares) (142,077)        
Foreign currency translation adjustments     706,000   706,000
Change in fair value of derivative instruments     (1,073,000)   (1,073,000)
Balance at the end at Mar. 31, 2023 $ 4,000 206,451,000 1,720,000 (38,725,000) 169,450,000
Balance at the end (in shares) at Mar. 31, 2023 37,586,031        
Balance at the beginning at Dec. 31, 2022 $ 4,000 206,540,000 2,087,000 (42,741,000) $ 165,890,000
Balance at the beginning (in shares) at Dec. 31, 2022 37,332,271       37,332,271
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)         $ 29,047,000
Foreign currency translation adjustments         41,000
Balance at the end at Sep. 30, 2023 $ 4,000 210,543,000 2,143,000 (22,693,000) $ 189,997,000
Balance at the end (in shares) at Sep. 30, 2023 37,586,031       37,586,031
Balance at the beginning at Mar. 31, 2023 $ 4,000 206,451,000 1,720,000 (38,725,000) $ 169,450,000
Balance at the beginning (in shares) at Mar. 31, 2023 37,586,031        
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)       10,992,000 10,992,000
Dividends declared       (3,007,000) (3,007,000)
Stock-based compensation   2,041,000     2,041,000
Foreign currency translation adjustments     185,000   185,000
Change in fair value of derivative instruments     841,000   841,000
Balance at the end at Jun. 30, 2023 $ 4,000 208,492,000 2,746,000 (30,740,000) 180,502,000
Balance at the end (in shares) at Jun. 30, 2023 37,586,031        
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)       11,053,000 11,053,000
Dividends declared       (3,006,000) (3,006,000)
Stock-based compensation   2,051,000     2,051,000
Foreign currency translation adjustments     (850,000)   (850,000)
Change in fair value of derivative instruments     247,000   247,000
Balance at the end at Sep. 30, 2023 $ 4,000 $ 210,543,000 $ 2,143,000 $ (22,693,000) $ 189,997,000
Balance at the end (in shares) at Sep. 30, 2023 37,586,031       37,586,031
XML 18 R8.htm IDEA: XBRL DOCUMENT v3.23.3
CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Parenthetical) - $ / shares
3 Months Ended
Sep. 30, 2023
Jun. 30, 2023
Mar. 31, 2023
Jun. 30, 2022
Mar. 31, 2022
CONENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY          
Dividend declared (in dollars per share) $ 0.08 $ 0.08 $ 0.08 $ 0.08 $ 0.08
XML 19 R9.htm IDEA: XBRL DOCUMENT v3.23.3
SIGNIFICANT ACCOUNTING POLICIES
9 Months Ended
Sep. 30, 2023
SIGNIFICANT ACCOUNTING POLICIES  
SIGNIFICANT ACCOUNTING POLICIES

1.    SIGNIFICANT ACCOUNTING POLICIES

Nature of Operations and Basis of Presentation

Cadre Holdings, Inc., D/B/A The Safariland Group (the “Company”, “Cadre”, “we”, “us”, and “our”), a Delaware corporation, began operations on April 12, 2012. The Company, headquartered in Jacksonville, Florida, is a global leader in manufacturing and distributing safety and survivability products and other related products for the law enforcement, first responder and military markets. The business operates through 16 manufacturing plants within the U.S., Mexico, Canada, the United Kingdom, Italy, France, and Lithuania, and sells its products worldwide through its direct sales force, distribution channel and distribution partners, online stores, and third-party resellers.

Principles of Consolidation

The accompanying condensed consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP" or “U.S. GAAP”) and applicable rules and regulations of the Securities and Exchange Commission (“SEC”) regarding interim financial reporting, and include the accounts of the Company, its wholly owned subsidiaries, and other entities consolidated as required by GAAP. Accordingly, they do not include all of the information and footnotes required by GAAP for annual audited financial statements. The unaudited condensed consolidated interim financial statements have been prepared on a basis consistent with the audited consolidated financial statements and include all adjustments, which are normal and recurring in nature, necessary for fair financial statement presentation. These condensed consolidated interim financial statements and notes thereto should be read in conjunction with the Company’s most recently completed annual consolidated financial statements. All adjustments considered necessary for a fair presentation have been included. All intercompany balances and transactions have been eliminated in consolidation.

Secondary Offering

On June 9, 2022, the Company completed a secondary offering in which the Company issued and sold 2,250,000 shares of common stock at a price of $23.50 per share. The Company’s net proceeds from the sale of shares were $46,988 after underwriter discounts and commissions, fees and expenses of $2,715, of which $2,000 was paid to Kanders & Company, Inc., a company controlled by Warren Kanders, our Chief Executive Officer.

On July 14, 2022, the underwriters exercised a portion of their over-allotment option and purchased an additional 300,000 shares of common stock at a price of $23.50 per share, resulting in net proceeds to the Company of $6,627 after underwriter discounts and commissions, fees and expenses of $423.

Emerging Growth Company

We are an “emerging growth company,” as defined in the Jumpstart Our Business Startups Act of 2012 (the “JOBS Act”). As such, we are eligible for exemptions from various reporting requirements applicable to other public companies that are not emerging growth companies, including, but not limited to, presenting only two years of audited financial statements, not being required to comply with the auditor attestation requirements of Section 404 of the Sarbanes-Oxley Act of 2002, reduced disclosure obligations regarding executive compensation, and an exemption from the requirements to obtain a non-binding advisory vote on executive compensation or golden parachute arrangements.

In addition, an emerging growth company can take advantage of an extended transition period for complying with new or revised accounting standards. This provision allows an emerging growth company to delay the adoption of certain accounting standards until those standards would otherwise apply to private companies. We have elected to avail ourselves of this provision of the JOBS Act. As a result, we will not be subject to new or revised accounting standards at the same time as other public companies that are not emerging growth companies. Therefore, our condensed consolidated financial statements may not be comparable to those of companies that comply with new or revised accounting pronouncements as of public company effective dates.

Use of Estimates

The preparation of these condensed consolidated financial statements 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 revenue and expenses during the reporting period. Actual results could differ from these estimates.

Fair Value Measurements

The Company follows the guidance of Accounting Standards Codification (“ASC”) Topic 820, Fair Value Measurements and Disclosures, which defines fair value, establishes a framework for measuring fair value and expands disclosures about fair value measurements. This guidance also establishes the following three-level hierarchy based upon the transparency of inputs to the valuation of an asset or liability on the measurement date:

Level 1: Observable inputs that reflect unadjusted quoted prices for identical assets or liabilities traded in active markets.

Level 2: Inputs other than quoted prices included within Level 1 that are observable for the asset or liability, either directly or indirectly, for substantially the full term of the asset or liability.

Level 3: Unobservable inputs that reflect assumptions about what market participants would use in pricing assets or liabilities based on the best information available.

The Company’s financial instruments consist principally of cash, accounts receivable, prepaid expenses, other current assets, accounts payable, accrued liabilities, income tax payable and debt. The carrying amounts of certain of these financial instruments, including cash, accounts receivable, prepaid expenses, other current assets, accounts payable, accrued liabilities and income tax payable approximate their current fair value due to the relatively short-term nature of these accounts.

The following table presents our fair value hierarchy for those assets and liabilities measured at fair value on a recurring basis:

September 30, 2023

December 31, 2022

Carrying 

Fair Value

Carrying 

Fair Value

    

Amount

    

Level 1

    

Level 2

    

Level 3

    

Amount

    

Level 1

    

Level 2

    

Level 3

Assets:

 

  

 

  

 

  

 

  

 

  

 

  

 

  

 

  

Interest rate swaps (Note 6)

$

9,303

$

$

9,303

$

$

8,985

$

$

8,985

$

Liabilities:

Interest rate swaps (Note 6)

There were no transfers of assets or liabilities between levels during the nine months ended September 30, 2023 and 2022.

There have not been material changes in the fair value of debt (Level 2), as compared to the carrying value, as of September 30, 2023 and December 31, 2022.

Revenue Recognition

The Company derives revenue primarily from the sale of physical products. The Company recognizes revenue when a contract exists with a customer that specifies the goods and services to be provided at an agreed upon sales price and when the performance obligation is satisfied by transferring the goods or service to the customer. The performance obligation is considered satisfied when control transfers, which is generally determined when products are shipped or delivered to the customer but could be delayed until the receipt

of customer acceptance, depending on the terms of the contract. Sales are made on normal and customary short-term credit terms or upon delivery for point of sale transactions.

The Company enters into contractual arrangements primarily with customers in the form of individual customer orders which specify the goods, quantity, pricing, and associated order terms. The Company has some long-term contracts that may contain research and development performance obligations that are satisfied over time. The Company invoices the customer once the billing milestone is reached and collects under customary short-term credit terms. For long-term contracts, the Company recognizes revenue using the input method based on costs incurred, as this method is an appropriate measure of progress toward the complete satisfaction of the performance obligation. Due to uncertainties inherent in the estimation process, it is possible that estimates of costs to complete a performance obligation will be revised in the near-term. For those performance obligations for which revenue is recognized using a cost-to-cost input method, changes in total estimated costs, and related progress towards complete satisfaction of the performance obligation, are recognized on a cumulative catch-up basis in the period in which the revisions to the estimates are made. When the current estimate of total costs for a performance obligation indicates a loss, a provision for the entire estimated loss on the unsatisfied performance obligation is made in the period in which the loss becomes evident. Revenue related to contracts recognized over time do not represent a material portion of the Company’s overall revenue.  

At the time of revenue recognition, the Company also provides for estimated sales returns and miscellaneous claims from customers as reductions to revenues. The estimates are based on historical rates of product returns and claims. The Company accrues for such estimated returns and claims with an estimated accrual and associated reduction of revenue. Additionally, the Company records inventory that it expects to be returned as part of inventories, with a corresponding reduction to cost of goods sold.

Charges for shipping and handling fees billed to customers are included in net sales and the corresponding shipping and handling expenses are included in cost of goods sold in the accompanying condensed consolidated statements of operations and comprehensive income. We consider our costs related to shipping and handling after control over a product has transferred to a customer to be a cost of fulfilling the promise to transfer the product to the customer.

Sales commissions paid to employees as compensation are expensed as incurred for contracts with service periods less than a year. For contracts with service periods greater than a year, these costs have historically been immaterial and are capitalized and amortized over the life of the contract. Commission costs are recorded in selling, general and administrative expenses in the Company’s condensed consolidated statements of operations and comprehensive income.

Product Warranty

Some of the Company’s manufactured products carry limited warranty provisions for defects in quality and workmanship. A warranty reserve is established at the time of sale to cover estimated costs based on the Company’s history of warranty repairs and replacements, and is recorded in cost of goods sold in the Company’s condensed consolidated statements of operations and comprehensive income.

The following table sets forth the changes in the Company’s accrued warranties, which is recorded in accrued liabilities in the condensed consolidated balance sheets:

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

Beginning accrued warranty expense

$

1,567

$

1,427

$

1,234

$

1,256

Current period claims

 

(451)

 

(311)

 

(802)

 

(398)

Provision for current period sales

 

590

 

81

 

1,274

 

339

Ending accrued warranty expense

$

1,706

$

1,197

$

1,706

$

1,197

Net Income (Loss) per Share

Basic income or loss per share is computed by dividing net income (loss) by the weighted average number of common shares outstanding during the periods presented. Diluted income or loss per share is calculated by adjusting weighted average shares outstanding for the dilutive effect of potential common shares, determined using the treasury-stock method. The calculation of weighted average shares outstanding and net income (loss) per share are as follows:

Three Months Ended September 30, 

    

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

Net income (loss)

$

11,053

$

4,941

$

29,047

$

(779)

 

  

 

  

 

  

 

  

Weighted average shares outstanding - basic

 

37,586,031

 

37,289,880

 

37,515,976

 

35,697,891

Effect of dilutive securities:

Stock-based awards

344,857

457,734

314,814

Weighted average shares outstanding - diluted

 

37,930,888

 

37,747,614

 

37,830,790

 

35,697,891

Net income (loss) per share:

 

  

 

  

 

  

 

  

Basic

$

0.29

$

0.13

$

0.77

$

(0.02)

Diluted

$

0.29

$

0.13

$

0.77

$

(0.02)

For the nine months ended September 30, 2022, 7,363 restricted stock awards were excluded from diluted weighted average shares outstanding because the impact would be anti-dilutive due to a net loss in the period.

Recent Accounting Pronouncements

Recently Adopted Accounting Pronouncements

In June 2016, the FASB issued ASU 2016-13, Financial Instruments — Credit Losses (Topic 326)Measurement of Credit Losses on Financial Instruments. ASU 2016-13 includes an impairment model (known as the current expected credit loss model) that is based on expected losses rather than incurred losses. Under the new guidance, an entity recognizes as an allowance its estimate of expected credit losses, which the FASB believes will result in more timely recognition of such losses. The use of forecasted information is intended to incorporate more timely information in the estimate of expected credit loss. In November 2019, the FASB issued additional guidance which extends the effective date of ASU 2016-13 for emerging growth companies to begin in fiscal years beginning after December 15, 2022. The Company adopted this standard on January 1, 2023. The adoption of this ASU did not have a material impact on our condensed consolidated financial statements and disclosures.  

In March 2020, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update (“ASU”) 2020-04, Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting and related amendments. This ASU provides temporary optional expedients and exceptions to existing guidance on contract modifications and hedge accounting to facilitate the market transition from existing reference rates, such as the London Inter-Bank Offered Rate (“LIBOR”) which began to be phased out in 2021, to alternate reference rates, such as the Secured Overnight Financing Rate (“SOFR”). On May 31, 2023, we amended our 2021 credit agreement and interest rate swap agreements to affect the transition from LIBOR to SOFR. In connection with these amendments, the Company adopted ASU 2020-04 in the second quarter of 2023. In doing so, the Company elected to adopt the suite of optional expedients when analyzing the amendment to the credit agreement and related interest swaps.  As such, the amendments to the Company’s 2021 credit agreement and swap agreements, and the adoption of this ASU did not have a material impact on our condensed consolidated financial statements and disclosures.

XML 20 R10.htm IDEA: XBRL DOCUMENT v3.23.3
ACQUISITIONS
9 Months Ended
Sep. 30, 2023
ACQUISITIONS  
ACQUISITIONS

2.    ACQUISITIONS

Radar Acquisition

On January 11, 2022, Safariland, LLC, a wholly-owned subsidiary of the Company, completed the acquisition of Radar Leather Division S.r.l. (“Radar”), a premier family-owned duty gear business based in Italy that specializes in the production of high-quality holsters, belts, duty belts, and other accessories.

The acquisition was accounted for as a business combination. Total acquisition-related costs for the acquisition of Radar were $627, of which $204 was incurred and recognized during 2022.

Total consideration, net of cash acquired, was $19,365 for 100% of the equity interests in Radar. The total consideration was as follows:

Cash paid

    

$

20,844

Less: cash acquired

 

(1,479)

Total consideration, net

$

19,365

The following table summarizes the total purchase price consideration and the amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. The excess of purchase consideration over the assets acquired and liabilities assumed is recorded as goodwill. Goodwill for the Radar acquisition is included in the Product segment and reflects synergies and additional legacy growth and profitability expected from this acquisition through expansion into new markets and customers.

Total consideration, net

    

$

19,365

Accounts receivable

$

2,347

Inventories

1,874

Prepaid expenses

682

Other current assets

665

Property and equipment

3,053

Intangible assets

10,200

Goodwill

7,101

Total assets acquired

25,922

Accounts payable

1,120

Deferred tax liabilities

2,787

Accrued liabilities

2,106

Long-term debt

544

Total liabilities assumed

6,557

Net assets acquired

$

19,365

In connection with the acquisition, the Company acquired exclusive rights to Radar’s trademarks, customer relationships, and product technologies. The amounts assigned to each class of intangible asset and the related average useful lives are as follows:

    

Gross

    

Average Useful Life

Customer relationships

$

9,300

15

Technology

600

 

10

Trademarks

300

7

Total

$

10,200

The full amount of goodwill of $7,101 is expected to be non-deductible for tax purposes. No pre-existing relationships existed between the Company and Radar prior to the acquisition. Radar revenue and cost of goods sold are included in the Product segment from the date of acquisition. The acquisition was not material to our condensed consolidated financial statements and consequently we have not included any pro-forma information.

Cyalume Acquisition

On May 4, 2022, Safariland, LLC, a wholly-owned subsidiary of the Company, completed the acquisition of Cyalume Technologies, Inc, CT SAS Holdings, Inc. and Cyalume Technologies SAS (collectively “Cyalume”). Cyalume is engaged in the design and manufacture of proprietary chemical illumination solutions for a diverse range of products, including light sticks, infrared products, safety markings and non-pyrophoric training ammunition.

The acquisition was accounted for as a business combination. Acquisition-related costs for the acquisition of Cyalume were $3,546, all of which was incurred and recognized during 2022.

Total consideration, net of cash acquired, was $36,178 for 100% of the equity interests in Cyalume. The total consideration was as follows:

Cash paid

    

$

38,012

Less: cash acquired

 

(1,834)

Total consideration, net

$

36,178

The following table summarizes the total purchase price consideration and the amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. Since December 31, 2022, we have decreased goodwill by $393 for changes in assumptions used to fair value property, equipment, and customer relationships, and deferred income taxes for certain book and tax basis differences as we complete the tax return filings for the pre-acquisition period. The excess of purchase consideration over the assets acquired and liabilities assumed is recorded as goodwill. Goodwill for the Cyalume acquisition is included in the Product segment and reflects synergies and additional legacy growth and profitability expected from this acquisition through expansion into new markets and customers.

Total consideration, net

    

$

36,178

Accounts receivable

$

3,302

Inventories

10,908

Prepaid expenses

255

Other current assets

10

Property and equipment

12,492

Intangible assets

8,100

Goodwill

8,708

Total assets acquired

43,775

Accounts payable

1,080

Deferred tax liabilities

4,652

Accrued liabilities

1,577

Other long-term liabilities

288

Total liabilities assumed

7,597

Net assets acquired

$

36,178

In connection with the acquisition, the Company acquired exclusive rights to Cyalume’s trademarks, customer relationships, and product technologies. The amounts assigned to each class of intangible asset and the related average useful lives are as follows:

    

Gross

    

Average Useful Life

Customer relationships

$

3,700

15

Technology

3,600

 

10

Trademarks

800

Indefinite

Total

$

8,100

The full amount of goodwill of $8,708 is expected to be non-deductible for tax purposes. No pre-existing relationships existed between the Company and Cyalume prior to the acquisition. Cyalume revenue and cost of goods sold are included in the Product segment from the date of acquisition. The acquisition was not material to our condensed consolidated financial statements and consequently we have not included any pro-forma information.

XML 21 R11.htm IDEA: XBRL DOCUMENT v3.23.3
REVENUE RECOGNITION
9 Months Ended
Sep. 30, 2023
REVENUE RECOGNITION  
REVENUE RECOGNITION

3.    REVENUE RECOGNITION

The following tables disaggregate net sales by channel and geography:

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

U.S. state and local agencies (a)

$

75,584

$

64,359

$

212,965

$

188,724

Commercial

 

9,525

 

11,211

 

30,834

 

33,572

U.S. federal agencies

 

13,355

 

16,652

 

42,484

 

34,014

International

 

25,821

 

18,264

 

69,194

 

74,789

Other

 

829

 

1,068

 

2,472

 

3,093

Net sales

$

125,114

$

111,554

$

357,949

$

334,192

(a) Includes all Distribution sales

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

United States

$

99,293

$

93,290

$

288,755

$

259,403

International

 

25,821

 

18,264

 

69,194

 

74,789

Net sales

$

125,114

$

111,554

$

357,949

$

334,192

Contract Liabilities

Contract liabilities are recorded as a component of other liabilities when customers remit cash payments in advance of the Company satisfying performance obligations. Contract liabilities are reversed into revenue when the performance obligation is satisfied. Contract liabilities are included in accrued liabilities in the Company’s condensed consolidated balance sheets and totaled $3,893 and $4,615 as of September 30, 2023 and December 31, 2022, respectively. Revenue recognized during the three and nine months ended September 30, 2023 from amounts included in contract liabilities as of December 31, 2022 was $407 and $2,752, respectively.

Remaining Performance Obligations

As of September 30, 2023, we had $17,620 of remaining unfulfilled performance obligations, which included amounts that will be invoiced and recognized in future periods. The remaining performance obligations are limited only to arrangements that meet the definition of a contract under ASC Topic 606, Revenue from Contracts with Customers, as of September 30, 2023. We expect to recognize approximately 58% of this balance over the next twelve months and expect the remainder to be recognized in the following two years.

XML 22 R12.htm IDEA: XBRL DOCUMENT v3.23.3
INVENTORIES
9 Months Ended
Sep. 30, 2023
INVENTORIES  
INVENTORIES

4.    INVENTORIES

The following table sets forth a summary of inventories stated at lower of cost or net realizable value, as of September 30, 2023 and December 31, 2022:

    

September 30, 2023

    

December 31, 2022

Finished goods

$

30,701

$

25,208

Work-in-process

 

9,004

 

7,466

Raw materials and supplies

 

42,841

 

37,599

Total

$

82,546

$

70,273

XML 23 R13.htm IDEA: XBRL DOCUMENT v3.23.3
GOODWILL AND OTHER INTANGIBLE ASSETS
9 Months Ended
Sep. 30, 2023
GOODWILL AND OTHER INTANGIBLE ASSETS  
GOODWILL AND OTHER INTANGIBLE ASSETS

5.    GOODWILL AND OTHER INTANGIBLE ASSETS

Goodwill

The following table summarizes the changes in goodwill for the three and nine months ended September 30, 2023:

    

Product

    

Distribution

    

Total

Balance, December 31, 2022

$

78,960

$

2,616

$

81,576

Measurement period adjustments

(593)

(593)

Foreign currency translation adjustments

 

309

 

 

309

Balance, March 31, 2023

$

78,676

$

2,616

$

81,292

Measurement period adjustments

200

200

Foreign currency translation adjustments

68

68

Balance, June 30, 2023

$

78,944

$

2,616

$

81,560

Foreign currency translation adjustments

(348)

(348)

Balance, September 30, 2023

$

78,596

$

2,616

$

81,212

Gross goodwill and accumulated impairment losses was $88,797 and $7,585, respectively, as of September 30, 2023 and $89,161 and $7,585, respectively, as of December 31, 2022.

Intangible Assets

Intangible assets such as certain customer relationships and patents on core technologies and product technologies are amortizable over their estimated useful lives. Certain trade names and trademarks which provide exclusive and perpetual rights to manufacture and sell their respective products are deemed indefinite-lived and are therefore not subject to amortization.

Intangible assets consisted of the following as of September 30, 2023 and December 31, 2022:

September 30, 2023

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

Amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

85,680

 

$

(64,337)

 

$

21,343

 

11

Technology

 

15,974

 

 

(11,793)

 

 

4,181

 

8

Tradenames

 

6,513

 

 

(5,126)

 

 

1,387

 

4

Non-compete agreements

 

980

 

 

(980)

 

 

 

4

$

109,147

 

$

(82,236)

 

$

26,911

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

17,422

 

 

 

 

17,422

 

Indefinite

Total

$

126,569

 

$

(82,236)

 

$

44,333

 

  

December 31, 2022

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

Amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

85,847

$

(59,122)

 

$

26,725

 

11

Technology

 

15,629

 

 

(11,309)

 

 

4,320

 

8

Tradenames

 

6,484

 

 

(4,254)

 

 

2,230

 

4

Non-compete agreements

 

973

 

 

(973)

 

 

 

4

$

108,933

 

$

(75,658)

 

$

33,275

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

17,420

 

 

 

 

17,420

 

Indefinite

Total

$

126,353

 

$

(75,658)

 

$

50,695

 

  

The Company recorded amortization expense of $2,155 and $2,274 for the three months ended September 30, 2023 and 2022, respectively, of which $55 and $134 was included in cost of goods sold in the condensed consolidated statements of operations and comprehensive income for the respective periods. Amortization expense for the nine months ended September 30, 2023 and 2022 was $6,308 and $6,671, respectively, of which $372 and $314 was included in cost of goods sold in the condensed consolidated statements of operations and comprehensive income for the respective periods.

The estimated amortization expense for definite-lived intangible assets for the remaining three months of 2023, the next four years and thereafter is as follows:

Remainder of 2023

    

$

1,477

2024

 

5,013

2025

 

3,053

2026

 

2,656

2027

 

2,479

Thereafter

 

12,233

Total

$

26,911

XML 24 R14.htm IDEA: XBRL DOCUMENT v3.23.3
DEBT
9 Months Ended
Sep. 30, 2023
DEBT  
DEBT

6.    DEBT

The Company’s debt is as follows:

    

September 30, 2023

    

December 31, 2022

Short-term debt:

 

  

 

  

Insurance premium financing

$

3,251

$

2,211

Current portion of term loan

 

10,000

 

10,000

$

13,251

$

12,211

Long-term debt:

 

  

 

  

Revolver

 

 

Term loan

 

131,064

 

138,564

Other

 

509

 

512

$

131,573

$

139,076

Unamortized debt discount and debt issuance costs

 

(1,264)

 

(1,600)

Total long-term debt, net

$

130,309

$

137,476

The following summarizes the aggregate principal payments of our long-term debt, excluding debt discount and debt issuance costs, for the remaining three months of 2023, the next four years and thereafter:

Remainder of 2023

    

$

2,500

2024

 

10,127

2025

 

10,127

2026

 

118,691

2027

 

128

Total principal payments

$

141,573

2021 Credit Facility

On August 20, 2021 (the “Closing Date”), the Company refinanced its existing credit facilities and entered into a new credit agreement whereby Safariland, LLC, as borrower (the “Borrower”), the Company and certain domestic subsidiaries of the Borrower, as guarantors (the “Guarantors”), closed on and received funding under a credit agreement (initially entered into on July 23, 2021), pursuant to a First Amendment to Credit Agreement (collectively, the “2021 Credit Agreement”) with PNC Bank, National Association (“PNC”), as administrative agent, and the several lenders from time to time party thereto (together with PNC, the “Lenders”) pursuant to which the Borrower (i) borrowed $200,000 under a term loan (the “Term Loan”), and (ii) may borrow up to $100,000 under a revolving credit facility (including up to $15,000 for letters of credit and up to $10,000 for swing line loans) (the “Revolving Loan”). Each of the Term Loan and the Revolving Loan mature on July 23, 2026. Commencing December 31, 2021, the Term Loan requires scheduled quarterly payments in amounts equal to 1.25% per quarter of the original aggregate principal amount of the Term Loan, with the balance due at maturity. The 2021 Credit Agreement is guaranteed, jointly and severally, by the Guarantors and, subject to certain exceptions, secured by a first-priority security interest in substantially all of the assets of the Borrower and the Guarantors pursuant to a Security and Pledge Agreement and a Guaranty and Suretyship Agreement, each dated as of the Closing Date.

There were no amounts outstanding under the Revolving Loan as of September 30, 2023 and December 31, 2022. As of September 30, 2023, there were $2,613 in outstanding letters of credit and $97,387 of availability.

The Borrower may elect to have the Revolving Loan and Term Loan under the 2021 Credit Agreement bear interest at a base rate or LIBOR, in each case, plus an applicable margin. However, in connection with the market transition away from applicable LIBOR rates to SOFR, on May 31, 2023, the Company, the Borrowers and the Lenders entered into the third amendment to the 2021 Credit Agreement (the “Third Amendment”) pursuant to which the 2021 Credit Agreement was amended to implement the SOFR rates. The applicable margin for these borrowings ranges from 0.50% to 1.50% per annum, in the case of base rate borrowings, and 1.60% to 2.60% per annum, in the case of SOFR (and prior to May 31, 2023, on LIBOR) borrowings, in each case based upon the level of the Company’s consolidated total net leverage ratio. The 2021 Credit Agreement also requires the Borrower to pay a commitment fee on the unused portion of the loan commitments. Such commitment fee ranges between 0.175% and 0.25% per annum, and is also based upon the level of the Company’s consolidated total net leverage ratio. The 2021 Credit Agreement also contains customary representations and warranties, and affirmative and negative covenants, including limitations on additional indebtedness, dividends, and other distributions, entry into new lines of business, use of loan proceeds, capital expenditures, restricted payments, restrictions on liens on the assets of the Borrowers or any Guarantor, transactions with affiliates, amendments to organizational documents, accounting changes, sale and leaseback transactions, dispositions, and mandatory prepayments in connection with certain liquidity events. The 2021 Credit Agreement contains certain restrictive debt covenants, which require us to: (i) maintain a minimum fixed charge coverage ratio of 1.25 to 1.00, starting with the quarter ended December 31, 2021, which is to be determined for each quarter end on a trailing four quarter basis and (ii) maintain a quarterly maximum consolidated total net leverage ratio of 3.75 to 1.00 from the quarter ended December 31, 2022 until the quarter ended September 30, 2023, and thereafter 3.50 to 1.00, which is in each case to be determined on a trailing four quarter basis; provided that under certain circumstances and subject to certain limitations, in the event of a material acquisition, we may temporarily increase the consolidated total net leverage ratio by up to 0.50 to 1.00 for four fiscal quarters following such acquisition. The 2021 Credit Agreement contains customary events of default that include, among others, non-payment of principal, interest or fees, violation of covenants, inaccuracy of representations and warranties, failure to make payment on, or defaults with respect to, certain other material

indebtedness, bankruptcy and insolvency events, material judgments and change of control provisions. Upon the occurrence of an event of default, and after the expiration of any applicable grace period, payment of any outstanding loans under the 2021 Credit Agreement may be accelerated and the Lenders could foreclose on their security interests in the assets of the Borrowers and the Guarantors.

Canadian Credit Facility

On October 14, 2021, Med-Eng Holdings ULC and Pacific Safety Products Inc., the Company’s Canadian subsidiaries, as borrowers (the “Canadian Borrowers”), and Safariland, LLC, as guarantor (the “Canadian Guarantor”), closed on a line of credit pursuant to a Loan Agreement (the “Canadian Loan Agreement”) and a Revolving Line of Credit Note (the “Note”) with PNC Bank Canada Branch (“PNC Canada”), as lender pursuant to which the Canadian Borrowers may borrow up to CDN$10,000 under a revolving line of credit (including up to $3,000 for letters of credit) (the “Revolving Canadian Loan”). The Revolving Canadian Loan matures on July 23, 2026. The Canadian Loan Agreement is guaranteed by the Canadian Guarantor pursuant to a Guaranty and Suretyship Agreement (the “Canadian Guaranty Agreement”).

The Canadian Borrowers may elect to have borrowings either in United States dollars or Canadian dollars under the Canadian Loan Agreement, which will bear interest at a base rate or LIBOR, in each case, plus an applicable margin, in the case of borrowings in United States dollars, or at a Canadian Prime Rate (as announced from time to time by PNC Canada) or a Canadian deposit offered rate (“CDOR”) as determined from time to time by PNC Canada in accordance with the Canadian Loan Agreement. The applicable margin for these borrowings range from 0.50% to 1.50% per annum, in the case of base rate borrowings and Canadian Prime Rate borrowings, and 1.50% to 2.50% per annum, in the case of LIBOR borrowings and CDOR borrowings. The Canadian Loan Agreement also requires the Canadian Borrowers to pay (i) an unused line fee on the unused portion of the loan commitments in an amount ranging between 0.175% and 0.25% per annum, based upon the level of the Company’s consolidated total net leverage ratio, and (ii) an upfront fee equal to 0.25% of the principal amount of the Note.

There were no amounts outstanding under the Revolving Canadian Loan as of September 30, 2023 and December 31, 2022.

The Canadian Loan Agreement also contains customary representations and warranties, and affirmative and negative covenants, including, among others, limitations on additional indebtedness, entry into new lines of business, entry into guarantee agreements, making of any loans or advances to, or investments in, any other person, restrictions on liens on the assets of the Canadian Borrowers and mergers, transfers of assets and acquisitions. The Canadian Loan Agreement and Note also contain customary events of default that include, among others, non-payment of principal, interest or fees, violation of covenants, inaccuracy of representations and warranties, failure to make payment on, or defaults with respect to, certain other material indebtedness, bankruptcy and insolvency events, material judgments and change of control provisions.

Upon the occurrence of an event of default, and after the expiration of any applicable grace period, payment of any outstanding loans under the Canadian Loan Agreement may be accelerated.

Interest Rate Swaps

We entered into interest rate swap agreements to hedge forecasted monthly interest rate payments on our floating rate debt. As of September 30, 2023, we had the following interest rate swap agreements (the “Swap Agreements”):

Effective Date

    

Notional Amount

    

Fixed Rate

September 30, 2021 through July 23, 2026

$

100,000

0.812

%

May 31, 2023 through July 23, 2026

    

$

50,000

    

3.905

%

On May 31, 2023, concurrent with the third amendment to the 2021 Credit Agreement, we amended our $100,000 notional amount swap agreement to reflect the change from LIBOR to SOFR. In addition, we entered into an additional $50,000 notional amount interest

rate swap to further mitigate our interest rate exposure on our floating rate debt. Under the terms of the Swap Agreements, we receive payments based on the 1-month SOFR (5.32% as of September 30, 2023).

During the nine months ended September 30, 2023, there were no interest rate swap agreements that expired.

We designated the Swap Agreements as cash flow hedges. A portion of the amount included in accumulated other comprehensive income is reclassified into interest expense, net as a yield adjustment as interest is either paid or received on the hedged debt. The fair value of our Swap Agreements is based upon Level 2 inputs. We have considered our own credit risk and the credit risk of the counterparties when determining the fair value of our Swap Agreements.

It is our policy to execute such instruments with creditworthy banks and not to enter into derivative financial instruments for speculative purposes. We believe our interest rate swap counterparty will be able to fulfill their obligations under our agreements, and we believe we will have debt outstanding through the expiration date of the swap agreements such that the occurrence of future cash flow hedges remains probable.

The estimated fair value of our Swap Agreements in the condensed consolidated balance sheets was as follows:

Balance Sheet Accounts

    

September 30, 2023

    

December 31, 2022

Other current assets

$

4,550

$

3,619

Other assets

$

4,753

$

5,366

A cumulative gain, net of tax, of $6,755 and $6,739 as of September 30, 2023 and December 31, 2022, respectively, is recorded in accumulated other comprehensive income.

The amount of gain, net of tax, recognized in other comprehensive (loss) income for the three months ended September 30, 2023 and 2022 was $1,131 and $2,350, respectively. There was a gain, net of tax, of $884 and $252 reclassified from accumulated other comprehensive income into earnings for the three months ended September 30, 2023 and 2022, respectively.

The amount of gain, net of tax, recognized in other comprehensive (loss) income for the nine months ended September 30, 2023 and 2022 was $2,281 and $6,414, respectively. There was a gain, net of tax, of $2,266 and $106 reclassified from accumulated other comprehensive income into earnings for the nine months ended September 30, 2023 and 2022, respectively.

As of September 30, 2023, approximately $4,449 is expected to be reclassified from accumulated other comprehensive income into interest expense over the next 12 months.

XML 25 R15.htm IDEA: XBRL DOCUMENT v3.23.3
COMMITMENTS AND CONTINGENCIES
9 Months Ended
Sep. 30, 2023
COMMITMENTS AND CONTINGENCIES  
COMMITMENTS AND CONTINGENCIES

7.    COMMITMENTS AND CONTINGENCIES

Legal Proceedings

In September 2021, Safariland, LLC, a wholly-owned subsidiary of the Company, received a jury verdict awarding $7,500 to a plaintiff relating to a personal injury case wherein the plaintiff alleged various product liability claims against Safariland, LLC. The plaintiff in the proceeding, Mr. David Hakim, instituted the proceeding on July 24, 2015, through the filing of a complaint with the United States District Court, Northern District of Illinois, Eastern Division. In the proceeding, the plaintiff, a SWAT officer with the DuPage County Sheriff’s Office (“DCSO”), alleged that he suffered injuries during a training exercise conducted by DCSO in which a Defense Technology Shotgun Breaching TKO round was deployed and passed through a door and lower-floor ceiling causing a fragment to strike plaintiff’s back resulting in injury. Prior to the jury rendering its verdict, the court deferred ruling on Safariland, LLC’s Motion for Judgment as a Matter of Law (“JMOL”). On November 8, 2021, Safariland, LLC filed its post-trial motions, including a supplemental JMOL, motion for new trial and remittitur. On April 18, 2022, the court denied Safariland, LLC’s JMOL, motion for new trial and remittitur and, accordingly, entered a judgment in favor of plaintiff, David Hakim, as to the Third Claim. In response, Safariland, LLC

timely filed its notice of appeal with the United States Court of Appeals for the Seventh Circuit (the “Seventh Circuit”).  Safariland and Plaintiff have filed their appeal briefs, and oral arguments were held on October 25, 2022. On August 21, 2023, the Seventh Circuit affirmed the judgment of the district court. In accordance with the Company’s applicable insurance policies, the Company was fully indemnified. The insurer satisfied the judgment and a release of the judgment was entered on September 11, 2023. Accordingly, this matter is now closed.

The Company is also involved in various legal disputes and other legal proceedings and claims that arise from time to time in the ordinary course of business. The Company vigorously defends itself against all lawsuits and evaluates the amount of reasonably possible losses that the Company could incur as a result of these matters. While any litigation contains an element of uncertainty, the Company believes that the reasonably possible losses that the Company could incur in excess of insurance coverage would not have a material adverse effect on the Company’s consolidated financial position, results of operations, or liquidity.

Insurance

The Company has various insurance policies, including product liability insurance, covering risks and in amounts it considers adequate. There can be no assurance that the insurance coverage maintained by the Company is sufficient or will be available in adequate amounts or at a reasonable cost.

International

As an international company, we are, from time to time, the subject of investigations relation to the Company’s international operations, including under U.S. export control laws (such as ITAR), the FCPA and other similar U.S. and international laws. To the best of the Company’s knowledge, there are not any potential or pending investigations at this time.

XML 26 R16.htm IDEA: XBRL DOCUMENT v3.23.3
INCOME TAXES
9 Months Ended
Sep. 30, 2023
INCOME TAXES  
INCOME TAXES

8.    INCOME TAXES

The Company and its subsidiaries file income tax returns in the U.S. federal, various state and local, and certain foreign jurisdictions. As of September 30, 2023, the Company’s tax years subsequent to 2016 are subject to examination by tax authorities with few exceptions. The 2018 and 2019 tax returns of a Canadian subsidiary of the Company are currently under examination by the Canadian Revenue Agency.

The Company’s effective tax rate was 28.0% and 28.4% for the three months ended September 30, 2023 and 2022, respectively, and 28.3% and 76.5% for the nine months ended September 30, 2023 and 2022, respectively.  Our effective tax rate for the three and nine months ended September 30, 2023 and 2022 differs from our statutory rate primarily due to state taxes and executive compensation, partially offset by research and development tax credits.

XML 27 R17.htm IDEA: XBRL DOCUMENT v3.23.3
COMPENSATION PLANS
9 Months Ended
Sep. 30, 2023
COMPENSATION PLANS  
COMPENSATION PLANS

9.     COMPENSATION PLANS

Long-Term Incentive Plan

In March 2021, the Company initiated a cash-based long-term incentive plan. Each award granted under the plan shall be eligible to vest in three equal annual installments over a period of three consecutive one-year performance periods, with each installment of the award vesting on the last day of the applicable performance period, subject to the achievement of the performance metrics established by the board of directors for the applicable annual performance period. Compensation expense related to this plan was $185 and $375 for the three months ended September 30, 2023 and 2022, respectively, and $489 and $933 for the nine months ended September 30, 2023 and 2022, respectively, and is included in selling, general and administrative in the Company’s condensed consolidated statements of operations and comprehensive income.

On March 9, 2022, the Company’s board of directors approved the common stock settlement of vested awards of the long-term incentive plan. The board of directors also approved the future settlement of unvested awards in common stock. Modification accounting was not applied as this change did not affect the fair value of the awards, vesting conditions, or the liability classification of the awards.

Executive Compensation Plan

The Company maintains a cash-based executive compensation plan for certain employees. The Company’s board of directors awarded 1,433,500 interests in the plan (“units”). Each unit represents an unfunded and unsecured right, subject to certain conditions as set forth by the plan. One-third of the units granted to any holder vest on each of the first, second, and third anniversaries of March 18, 2021 during the term of such holder’s employment with the Company. Payment of a holder’s vested balance is dependent upon a transaction or series of related transactions constituting a qualifying exit event, as defined by the executive compensation plan. The plan will expire on March 18, 2025, at which time the plan and all awarded units will be terminated for no consideration if a qualifying exit event has not occurred before that date. If a qualifying exit event becomes probable, the fair value of the units would be the closing stock price of the Company on the day the qualifying exit event becomes probable and compensation expense would be recognized at that time.

On March 9, 2022, the Company’s board of directors modified the performance condition, specifically the definition of a qualifying exit event, in the cash-based executive compensation plan. In addition, the board of directors approved the settlement of the majority of vested and unvested units in common stock rather than cash, which resulted in a change in classification of those outstanding units from liability to equity. As a result, modification of the units occurred on March 9, 2022 with a grant date fair value of $23.45, the closing stock price of the Company on the date of modification. There were 632,500 units that vested on March 18, 2022 and 801,000 units that vest in equal amounts on the second and third anniversaries of the plan. The Company recognized compensation expense of $22,100 in selling, general and administrative in the Company’s condensed consolidated statements of operations and comprehensive income on the modification date. Unrecognized compensation expense related to the unvested units was $11,516 as of the modification date.  

XML 28 R18.htm IDEA: XBRL DOCUMENT v3.23.3
LEASES
9 Months Ended
Sep. 30, 2023
LEASES  
LEASES

10.     LEASES

The Company leases certain manufacturing and office space, retail locations, and equipment. Operating lease assets and liabilities are recognized at the commencement date based on the present value of lease payments over the lease term. The Company has elected not to recognize a lease liability or right-of-use (“ROU”) asset for short-term leases (leases with a term of twelve months or less). The Company uses its incremental borrowing rate based on the information available at the commencement date in determining the present value of lease payments. The Company’s incremental borrowing rate is the rate for collateralized borrowings based on the current economic environment, credit history, credit rating, value of leases, currency in which the lease obligation is satisfied, rate sensitivity, lease term and materiality. Our operating leases have remaining contractual terms of up to five years, some of which include options to extend the leases for up to five years.

The amount of assets and liabilities related to our operating leases were as follows:

Balance Sheet Accounts

    

September 30, 2023

    

December 31, 2022

Assets:

Operating lease assets

Operating lease assets

$

6,643

$

8,489

Liabilities:

Current:

Operating lease liabilities

Accrued liabilities

$

3,192

$

3,773

Long-term:

Operating lease liabilities

Long-term operating lease liabilities

3,603

4,965

Total lease liabilities

$

6,795

$

8,738

The components of lease expense are recorded to cost of sales and selling, general and administration expenses in the condensed consolidated statements of operations and comprehensive income. The components of lease expense were as follows:

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2023

Fixed operating lease costs(1)

$

954

$

3,019

Variable operating lease costs

 

511

 

1,267

Total

$

1,465

$

4,286

(1) Includes short-term leases, which are immaterial.

The weighted average remaining lease term and weighted average discount rate is as follows:

    

September 30, 2023

    

December 31, 2022

Weighted average remaining lease term (years):

 

 

Operating leases

2.30

2.62

Weighted average discount rate:

Operating leases

3.06%

2.96%

The approximate future minimum lease payments under operating leases as of September 30, 2023 are as follows:

Remainder of 2023

$

1,090

2024

 

3,250

2025

 

1,835

2026

 

768

2027

 

134

Thereafter

 

8

Total future lease payments

7,085

Less: Amount representing interest

(290)

Present value of lease liabilities

$

6,795

Supplemental cash flow information related to leases is as follows:

    

September 30, 2023

Cash paid for amounts included in the measurement of lease liabilities:

 

Operating cash flows - operating leases

$

3,063

Right-of-use assets obtained in exchange for lease liabilities:

Operating leases

$

XML 29 R19.htm IDEA: XBRL DOCUMENT v3.23.3
RELATED PARTY TRANSACTIONS
9 Months Ended
Sep. 30, 2023
RELATED PARTY TRANSACTIONS  
RELATED PARTY TRANSACTIONS

11.     RELATED PARTY TRANSACTIONS

The Company leases 4 distribution warehouses and retail stores from certain employees. The Company recorded rent expense related to these leases of $116 and $112 for the three months ended September 30, 2023 and 2022, respectively, and $379 and $346 for the nine months ended September 30, 2023 and 2022, respectively. Rent expense related to these leases is included in related party expense in the Company’s condensed consolidated statements of operations and comprehensive income.

During the nine months ended September 30, 2022, the Company made the following payments to Kanders & Company, Inc., a company controlled by Warren Kanders, our Chief Executive Officer:

$1,000 for services related to the acquisition of Cyalume, which is included in related party expense in the Company’s condensed consolidated statements of operations and comprehensive income.
$2,000 for services related to the Company’s secondary offering, which is included in direct offering costs and recorded against offering proceeds in additional paid in capital in the Company’s condensed consolidated balance sheets.

There were no other payments made to Kanders & Company for any other period presented.

XML 30 R20.htm IDEA: XBRL DOCUMENT v3.23.3
SEGMENT DATA
9 Months Ended
Sep. 30, 2023
SEGMENT DATA  
SEGMENT DATA

12.     SEGMENT DATA

Our operations are comprised of two reportable segments: Product and Distribution. Segment information is consistent with how the chief operating decision maker (“CODM”), our chief executive officer, reviews the business, makes investing and resource allocation decisions and assesses operating performance. The CODM is not provided asset information or operating expenses by segment.

    

Three Months Ended September 30, 2023

Reconciling

    

Product

Distribution

 Items(1)

    

Total

Net sales

    

$

108,495

    

$

24,208

    

$

(7,589)

    

$

125,114

Cost of goods sold

60,380

18,724

(7,593)

71,511

Gross profit

$

48,115

$

5,484

$

4

$

53,603

    

Three Months Ended September 30, 2022

Reconciling

    

Product

    

Distribution

    

 Items(1)

    

Total

Net sales

    

$

92,718

    

$

26,012

    

$

(7,176)

    

$

111,554

Cost of goods sold

54,125

20,859

(7,170)

67,814

Gross profit

$

38,593

$

5,153

$

(6)

$

43,740

    

Nine Months Ended September 30, 2023

Reconciling

    

    Product    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

305,057

    

$

74,594

    

$

(21,702)

    

$

357,949

Cost of goods sold

171,204

57,200

(21,423)

206,981

Gross profit

$

133,853

$

17,394

$

(279)

$

150,968

    

Nine Months Ended September 30, 2022

Reconciling

    

    Product    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

277,941

    

$

73,836

$

(17,585)

    

$

334,192

Cost of goods sold

166,192

$

58,437

$

(17,587)

207,042

Gross profit

$

111,749

$

15,399

$

2

$

127,150

(1) Reconciling items consist primarily of intercompany eliminations and items not directly attributable to operating segments.

XML 31 R21.htm IDEA: XBRL DOCUMENT v3.23.3
SIGNIFICANT ACCOUNTING POLICIES (Policies)
9 Months Ended
Sep. 30, 2023
SIGNIFICANT ACCOUNTING POLICIES  
Nature of Operations and Basis of Presentation

Nature of Operations and Basis of Presentation

Cadre Holdings, Inc., D/B/A The Safariland Group (the “Company”, “Cadre”, “we”, “us”, and “our”), a Delaware corporation, began operations on April 12, 2012. The Company, headquartered in Jacksonville, Florida, is a global leader in manufacturing and distributing safety and survivability products and other related products for the law enforcement, first responder and military markets. The business operates through 16 manufacturing plants within the U.S., Mexico, Canada, the United Kingdom, Italy, France, and Lithuania, and sells its products worldwide through its direct sales force, distribution channel and distribution partners, online stores, and third-party resellers.

Principles of Consolidation

Principles of Consolidation

The accompanying condensed consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP" or “U.S. GAAP”) and applicable rules and regulations of the Securities and Exchange Commission (“SEC”) regarding interim financial reporting, and include the accounts of the Company, its wholly owned subsidiaries, and other entities consolidated as required by GAAP. Accordingly, they do not include all of the information and footnotes required by GAAP for annual audited financial statements. The unaudited condensed consolidated interim financial statements have been prepared on a basis consistent with the audited consolidated financial statements and include all adjustments, which are normal and recurring in nature, necessary for fair financial statement presentation. These condensed consolidated interim financial statements and notes thereto should be read in conjunction with the Company’s most recently completed annual consolidated financial statements. All adjustments considered necessary for a fair presentation have been included. All intercompany balances and transactions have been eliminated in consolidation.

Secondary Offering

Secondary Offering

On June 9, 2022, the Company completed a secondary offering in which the Company issued and sold 2,250,000 shares of common stock at a price of $23.50 per share. The Company’s net proceeds from the sale of shares were $46,988 after underwriter discounts and commissions, fees and expenses of $2,715, of which $2,000 was paid to Kanders & Company, Inc., a company controlled by Warren Kanders, our Chief Executive Officer.

On July 14, 2022, the underwriters exercised a portion of their over-allotment option and purchased an additional 300,000 shares of common stock at a price of $23.50 per share, resulting in net proceeds to the Company of $6,627 after underwriter discounts and commissions, fees and expenses of $423.

Emerging Growth Company

Emerging Growth Company

We are an “emerging growth company,” as defined in the Jumpstart Our Business Startups Act of 2012 (the “JOBS Act”). As such, we are eligible for exemptions from various reporting requirements applicable to other public companies that are not emerging growth companies, including, but not limited to, presenting only two years of audited financial statements, not being required to comply with the auditor attestation requirements of Section 404 of the Sarbanes-Oxley Act of 2002, reduced disclosure obligations regarding executive compensation, and an exemption from the requirements to obtain a non-binding advisory vote on executive compensation or golden parachute arrangements.

In addition, an emerging growth company can take advantage of an extended transition period for complying with new or revised accounting standards. This provision allows an emerging growth company to delay the adoption of certain accounting standards until those standards would otherwise apply to private companies. We have elected to avail ourselves of this provision of the JOBS Act. As a result, we will not be subject to new or revised accounting standards at the same time as other public companies that are not emerging growth companies. Therefore, our condensed consolidated financial statements may not be comparable to those of companies that comply with new or revised accounting pronouncements as of public company effective dates.

Use of Estimates

Use of Estimates

The preparation of these condensed consolidated financial statements 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 revenue and expenses during the reporting period. Actual results could differ from these estimates.

Fair Value Measurements

Fair Value Measurements

The Company follows the guidance of Accounting Standards Codification (“ASC”) Topic 820, Fair Value Measurements and Disclosures, which defines fair value, establishes a framework for measuring fair value and expands disclosures about fair value measurements. This guidance also establishes the following three-level hierarchy based upon the transparency of inputs to the valuation of an asset or liability on the measurement date:

Level 1: Observable inputs that reflect unadjusted quoted prices for identical assets or liabilities traded in active markets.

Level 2: Inputs other than quoted prices included within Level 1 that are observable for the asset or liability, either directly or indirectly, for substantially the full term of the asset or liability.

Level 3: Unobservable inputs that reflect assumptions about what market participants would use in pricing assets or liabilities based on the best information available.

The Company’s financial instruments consist principally of cash, accounts receivable, prepaid expenses, other current assets, accounts payable, accrued liabilities, income tax payable and debt. The carrying amounts of certain of these financial instruments, including cash, accounts receivable, prepaid expenses, other current assets, accounts payable, accrued liabilities and income tax payable approximate their current fair value due to the relatively short-term nature of these accounts.

The following table presents our fair value hierarchy for those assets and liabilities measured at fair value on a recurring basis:

September 30, 2023

December 31, 2022

Carrying 

Fair Value

Carrying 

Fair Value

    

Amount

    

Level 1

    

Level 2

    

Level 3

    

Amount

    

Level 1

    

Level 2

    

Level 3

Assets:

 

  

 

  

 

  

 

  

 

  

 

  

 

  

 

  

Interest rate swaps (Note 6)

$

9,303

$

$

9,303

$

$

8,985

$

$

8,985

$

Liabilities:

Interest rate swaps (Note 6)

There were no transfers of assets or liabilities between levels during the nine months ended September 30, 2023 and 2022.

There have not been material changes in the fair value of debt (Level 2), as compared to the carrying value, as of September 30, 2023 and December 31, 2022.

Revenue Recognition

Revenue Recognition

The Company derives revenue primarily from the sale of physical products. The Company recognizes revenue when a contract exists with a customer that specifies the goods and services to be provided at an agreed upon sales price and when the performance obligation is satisfied by transferring the goods or service to the customer. The performance obligation is considered satisfied when control transfers, which is generally determined when products are shipped or delivered to the customer but could be delayed until the receipt

of customer acceptance, depending on the terms of the contract. Sales are made on normal and customary short-term credit terms or upon delivery for point of sale transactions.

The Company enters into contractual arrangements primarily with customers in the form of individual customer orders which specify the goods, quantity, pricing, and associated order terms. The Company has some long-term contracts that may contain research and development performance obligations that are satisfied over time. The Company invoices the customer once the billing milestone is reached and collects under customary short-term credit terms. For long-term contracts, the Company recognizes revenue using the input method based on costs incurred, as this method is an appropriate measure of progress toward the complete satisfaction of the performance obligation. Due to uncertainties inherent in the estimation process, it is possible that estimates of costs to complete a performance obligation will be revised in the near-term. For those performance obligations for which revenue is recognized using a cost-to-cost input method, changes in total estimated costs, and related progress towards complete satisfaction of the performance obligation, are recognized on a cumulative catch-up basis in the period in which the revisions to the estimates are made. When the current estimate of total costs for a performance obligation indicates a loss, a provision for the entire estimated loss on the unsatisfied performance obligation is made in the period in which the loss becomes evident. Revenue related to contracts recognized over time do not represent a material portion of the Company’s overall revenue.  

At the time of revenue recognition, the Company also provides for estimated sales returns and miscellaneous claims from customers as reductions to revenues. The estimates are based on historical rates of product returns and claims. The Company accrues for such estimated returns and claims with an estimated accrual and associated reduction of revenue. Additionally, the Company records inventory that it expects to be returned as part of inventories, with a corresponding reduction to cost of goods sold.

Charges for shipping and handling fees billed to customers are included in net sales and the corresponding shipping and handling expenses are included in cost of goods sold in the accompanying condensed consolidated statements of operations and comprehensive income. We consider our costs related to shipping and handling after control over a product has transferred to a customer to be a cost of fulfilling the promise to transfer the product to the customer.

Sales commissions paid to employees as compensation are expensed as incurred for contracts with service periods less than a year. For contracts with service periods greater than a year, these costs have historically been immaterial and are capitalized and amortized over the life of the contract. Commission costs are recorded in selling, general and administrative expenses in the Company’s condensed consolidated statements of operations and comprehensive income.

Product Warranty

Product Warranty

Some of the Company’s manufactured products carry limited warranty provisions for defects in quality and workmanship. A warranty reserve is established at the time of sale to cover estimated costs based on the Company’s history of warranty repairs and replacements, and is recorded in cost of goods sold in the Company’s condensed consolidated statements of operations and comprehensive income.

The following table sets forth the changes in the Company’s accrued warranties, which is recorded in accrued liabilities in the condensed consolidated balance sheets:

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

Beginning accrued warranty expense

$

1,567

$

1,427

$

1,234

$

1,256

Current period claims

 

(451)

 

(311)

 

(802)

 

(398)

Provision for current period sales

 

590

 

81

 

1,274

 

339

Ending accrued warranty expense

$

1,706

$

1,197

$

1,706

$

1,197

Net Income (Loss) per Share

Net Income (Loss) per Share

Basic income or loss per share is computed by dividing net income (loss) by the weighted average number of common shares outstanding during the periods presented. Diluted income or loss per share is calculated by adjusting weighted average shares outstanding for the dilutive effect of potential common shares, determined using the treasury-stock method. The calculation of weighted average shares outstanding and net income (loss) per share are as follows:

Three Months Ended September 30, 

    

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

Net income (loss)

$

11,053

$

4,941

$

29,047

$

(779)

 

  

 

  

 

  

 

  

Weighted average shares outstanding - basic

 

37,586,031

 

37,289,880

 

37,515,976

 

35,697,891

Effect of dilutive securities:

Stock-based awards

344,857

457,734

314,814

Weighted average shares outstanding - diluted

 

37,930,888

 

37,747,614

 

37,830,790

 

35,697,891

Net income (loss) per share:

 

  

 

  

 

  

 

  

Basic

$

0.29

$

0.13

$

0.77

$

(0.02)

Diluted

$

0.29

$

0.13

$

0.77

$

(0.02)

For the nine months ended September 30, 2022, 7,363 restricted stock awards were excluded from diluted weighted average shares outstanding because the impact would be anti-dilutive due to a net loss in the period.

Recent Accounting Pronouncements

Recent Accounting Pronouncements

Recently Adopted Accounting Pronouncements

In June 2016, the FASB issued ASU 2016-13, Financial Instruments — Credit Losses (Topic 326)Measurement of Credit Losses on Financial Instruments. ASU 2016-13 includes an impairment model (known as the current expected credit loss model) that is based on expected losses rather than incurred losses. Under the new guidance, an entity recognizes as an allowance its estimate of expected credit losses, which the FASB believes will result in more timely recognition of such losses. The use of forecasted information is intended to incorporate more timely information in the estimate of expected credit loss. In November 2019, the FASB issued additional guidance which extends the effective date of ASU 2016-13 for emerging growth companies to begin in fiscal years beginning after December 15, 2022. The Company adopted this standard on January 1, 2023. The adoption of this ASU did not have a material impact on our condensed consolidated financial statements and disclosures.  

In March 2020, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update (“ASU”) 2020-04, Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting and related amendments. This ASU provides temporary optional expedients and exceptions to existing guidance on contract modifications and hedge accounting to facilitate the market transition from existing reference rates, such as the London Inter-Bank Offered Rate (“LIBOR”) which began to be phased out in 2021, to alternate reference rates, such as the Secured Overnight Financing Rate (“SOFR”). On May 31, 2023, we amended our 2021 credit agreement and interest rate swap agreements to affect the transition from LIBOR to SOFR. In connection with these amendments, the Company adopted ASU 2020-04 in the second quarter of 2023. In doing so, the Company elected to adopt the suite of optional expedients when analyzing the amendment to the credit agreement and related interest swaps.  As such, the amendments to the Company’s 2021 credit agreement and swap agreements, and the adoption of this ASU did not have a material impact on our condensed consolidated financial statements and disclosures.

XML 32 R22.htm IDEA: XBRL DOCUMENT v3.23.3
SIGNIFICANT ACCOUNTING POLICIES (Tables)
9 Months Ended
Sep. 30, 2023
SIGNIFICANT ACCOUNTING POLICIES  
Summary of assets and liabilities measured at fair value on a recurring basis

September 30, 2023

December 31, 2022

Carrying 

Fair Value

Carrying 

Fair Value

    

Amount

    

Level 1

    

Level 2

    

Level 3

    

Amount

    

Level 1

    

Level 2

    

Level 3

Assets:

 

  

 

  

 

  

 

  

 

  

 

  

 

  

 

  

Interest rate swaps (Note 6)

$

9,303

$

$

9,303

$

$

8,985

$

$

8,985

$

Liabilities:

Interest rate swaps (Note 6)

Summary of changes in the accrued warranties and related costs

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

Beginning accrued warranty expense

$

1,567

$

1,427

$

1,234

$

1,256

Current period claims

 

(451)

 

(311)

 

(802)

 

(398)

Provision for current period sales

 

590

 

81

 

1,274

 

339

Ending accrued warranty expense

$

1,706

$

1,197

$

1,706

$

1,197

Summary of calculation of weighted average shares outstanding and net income (loss) per share

Three Months Ended September 30, 

    

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

Net income (loss)

$

11,053

$

4,941

$

29,047

$

(779)

 

  

 

  

 

  

 

  

Weighted average shares outstanding - basic

 

37,586,031

 

37,289,880

 

37,515,976

 

35,697,891

Effect of dilutive securities:

Stock-based awards

344,857

457,734

314,814

Weighted average shares outstanding - diluted

 

37,930,888

 

37,747,614

 

37,830,790

 

35,697,891

Net income (loss) per share:

 

  

 

  

 

  

 

  

Basic

$

0.29

$

0.13

$

0.77

$

(0.02)

Diluted

$

0.29

$

0.13

$

0.77

$

(0.02)

XML 33 R23.htm IDEA: XBRL DOCUMENT v3.23.3
ACQUISITIONS (Tables)
9 Months Ended
Sep. 30, 2023
Radar  
ACQUISITIONS  
Schedule of total consideration

Cash paid

    

$

20,844

Less: cash acquired

 

(1,479)

Total consideration, net

$

19,365

Summary of total purchase price consideration and preliminary fair value amounts recognized for assets acquired and liabilities assumed

Total consideration, net

    

$

19,365

Accounts receivable

$

2,347

Inventories

1,874

Prepaid expenses

682

Other current assets

665

Property and equipment

3,053

Intangible assets

10,200

Goodwill

7,101

Total assets acquired

25,922

Accounts payable

1,120

Deferred tax liabilities

2,787

Accrued liabilities

2,106

Long-term debt

544

Total liabilities assumed

6,557

Net assets acquired

$

19,365

Schedule of acquired intangible assets

    

Gross

    

Average Useful Life

Customer relationships

$

9,300

15

Technology

600

 

10

Trademarks

300

7

Total

$

10,200

Cyalume  
ACQUISITIONS  
Schedule of total consideration

Cash paid

    

$

38,012

Less: cash acquired

 

(1,834)

Total consideration, net

$

36,178

Summary of total purchase price consideration and preliminary fair value amounts recognized for assets acquired and liabilities assumed

Total consideration, net

    

$

36,178

Accounts receivable

$

3,302

Inventories

10,908

Prepaid expenses

255

Other current assets

10

Property and equipment

12,492

Intangible assets

8,100

Goodwill

8,708

Total assets acquired

43,775

Accounts payable

1,080

Deferred tax liabilities

4,652

Accrued liabilities

1,577

Other long-term liabilities

288

Total liabilities assumed

7,597

Net assets acquired

$

36,178

Schedule of acquired intangible assets

    

Gross

    

Average Useful Life

Customer relationships

$

3,700

15

Technology

3,600

 

10

Trademarks

800

Indefinite

Total

$

8,100

XML 34 R24.htm IDEA: XBRL DOCUMENT v3.23.3
REVENUE RECOGNITION (Tables)
9 Months Ended
Sep. 30, 2023
REVENUE RECOGNITION  
Summary of disaggregation of net sales by channel and geography

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

U.S. state and local agencies (a)

$

75,584

$

64,359

$

212,965

$

188,724

Commercial

 

9,525

 

11,211

 

30,834

 

33,572

U.S. federal agencies

 

13,355

 

16,652

 

42,484

 

34,014

International

 

25,821

 

18,264

 

69,194

 

74,789

Other

 

829

 

1,068

 

2,472

 

3,093

Net sales

$

125,114

$

111,554

$

357,949

$

334,192

(a) Includes all Distribution sales

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2022

    

2023

    

2022

United States

$

99,293

$

93,290

$

288,755

$

259,403

International

 

25,821

 

18,264

 

69,194

 

74,789

Net sales

$

125,114

$

111,554

$

357,949

$

334,192

XML 35 R25.htm IDEA: XBRL DOCUMENT v3.23.3
INVENTORIES (Tables)
9 Months Ended
Sep. 30, 2023
INVENTORIES  
Summary of inventories stated at lower of cost or net realizable value

    

September 30, 2023

    

December 31, 2022

Finished goods

$

30,701

$

25,208

Work-in-process

 

9,004

 

7,466

Raw materials and supplies

 

42,841

 

37,599

Total

$

82,546

$

70,273

XML 36 R26.htm IDEA: XBRL DOCUMENT v3.23.3
GOODWILL AND OTHER INTANGIBLE ASSETS (Tables)
9 Months Ended
Sep. 30, 2023
GOODWILL AND OTHER INTANGIBLE ASSETS  
Summary of changes in goodwill

    

Product

    

Distribution

    

Total

Balance, December 31, 2022

$

78,960

$

2,616

$

81,576

Measurement period adjustments

(593)

(593)

Foreign currency translation adjustments

 

309

 

 

309

Balance, March 31, 2023

$

78,676

$

2,616

$

81,292

Measurement period adjustments

200

200

Foreign currency translation adjustments

68

68

Balance, June 30, 2023

$

78,944

$

2,616

$

81,560

Foreign currency translation adjustments

(348)

(348)

Balance, September 30, 2023

$

78,596

$

2,616

$

81,212

Summary of intangible assets

September 30, 2023

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

Amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

85,680

 

$

(64,337)

 

$

21,343

 

11

Technology

 

15,974

 

 

(11,793)

 

 

4,181

 

8

Tradenames

 

6,513

 

 

(5,126)

 

 

1,387

 

4

Non-compete agreements

 

980

 

 

(980)

 

 

 

4

$

109,147

 

$

(82,236)

 

$

26,911

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

17,422

 

 

 

 

17,422

 

Indefinite

Total

$

126,569

 

$

(82,236)

 

$

44,333

 

  

December 31, 2022

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

Amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

85,847

$

(59,122)

 

$

26,725

 

11

Technology

 

15,629

 

 

(11,309)

 

 

4,320

 

8

Tradenames

 

6,484

 

 

(4,254)

 

 

2,230

 

4

Non-compete agreements

 

973

 

 

(973)

 

 

 

4

$

108,933

 

$

(75,658)

 

$

33,275

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

17,420

 

 

 

 

17,420

 

Indefinite

Total

$

126,353

 

$

(75,658)

 

$

50,695

 

  

Summary of estimated amortization expense for definite lived intangible assets

Remainder of 2023

    

$

1,477

2024

 

5,013

2025

 

3,053

2026

 

2,656

2027

 

2,479

Thereafter

 

12,233

Total

$

26,911

XML 37 R27.htm IDEA: XBRL DOCUMENT v3.23.3
DEBT (Tables)
9 Months Ended
Sep. 30, 2023
DEBT  
Schedule of company's debt

    

September 30, 2023

    

December 31, 2022

Short-term debt:

 

  

 

  

Insurance premium financing

$

3,251

$

2,211

Current portion of term loan

 

10,000

 

10,000

$

13,251

$

12,211

Long-term debt:

 

  

 

  

Revolver

 

 

Term loan

 

131,064

 

138,564

Other

 

509

 

512

$

131,573

$

139,076

Unamortized debt discount and debt issuance costs

 

(1,264)

 

(1,600)

Total long-term debt, net

$

130,309

$

137,476

Summary of aggregate principal payments of long-term debt

Remainder of 2023

    

$

2,500

2024

 

10,127

2025

 

10,127

2026

 

118,691

2027

 

128

Total principal payments

$

141,573

Schedule of Interest rate swaps

Effective Date

    

Notional Amount

    

Fixed Rate

September 30, 2021 through July 23, 2026

$

100,000

0.812

%

May 31, 2023 through July 23, 2026

    

$

50,000

    

3.905

%

Schedule of fair value swap agreement

Balance Sheet Accounts

    

September 30, 2023

    

December 31, 2022

Other current assets

$

4,550

$

3,619

Other assets

$

4,753

$

5,366

XML 38 R28.htm IDEA: XBRL DOCUMENT v3.23.3
LEASES (Tables)
9 Months Ended
Sep. 30, 2023
LEASES  
Schedule of operating leases

The amount of assets and liabilities related to our operating leases were as follows:

Balance Sheet Accounts

    

September 30, 2023

    

December 31, 2022

Assets:

Operating lease assets

Operating lease assets

$

6,643

$

8,489

Liabilities:

Current:

Operating lease liabilities

Accrued liabilities

$

3,192

$

3,773

Long-term:

Operating lease liabilities

Long-term operating lease liabilities

3,603

4,965

Total lease liabilities

$

6,795

$

8,738

The components of lease expense are recorded to cost of sales and selling, general and administration expenses in the condensed consolidated statements of operations and comprehensive income. The components of lease expense were as follows:

Three Months Ended September 30, 

Nine Months Ended September 30, 

    

2023

    

2023

Fixed operating lease costs(1)

$

954

$

3,019

Variable operating lease costs

 

511

 

1,267

Total

$

1,465

$

4,286

(1) Includes short-term leases, which are immaterial.

The weighted average remaining lease term and weighted average discount rate is as follows:

    

September 30, 2023

    

December 31, 2022

Weighted average remaining lease term (years):

 

 

Operating leases

2.30

2.62

Weighted average discount rate:

Operating leases

3.06%

2.96%

Summary of future minimum lease payments required under operating leases

The approximate future minimum lease payments under operating leases as of September 30, 2023 are as follows:

Remainder of 2023

$

1,090

2024

 

3,250

2025

 

1,835

2026

 

768

2027

 

134

Thereafter

 

8

Total future lease payments

7,085

Less: Amount representing interest

(290)

Present value of lease liabilities

$

6,795

Schedule of supplemental cash flow information related leases

    

September 30, 2023

Cash paid for amounts included in the measurement of lease liabilities:

 

Operating cash flows - operating leases

$

3,063

Right-of-use assets obtained in exchange for lease liabilities:

Operating leases

$

XML 39 R29.htm IDEA: XBRL DOCUMENT v3.23.3
SEGMENT DATA (Tables)
9 Months Ended
Sep. 30, 2023
SEGMENT DATA  
Summary of segment data

    

Three Months Ended September 30, 2023

Reconciling

    

Product

Distribution

 Items(1)

    

Total

Net sales

    

$

108,495

    

$

24,208

    

$

(7,589)

    

$

125,114

Cost of goods sold

60,380

18,724

(7,593)

71,511

Gross profit

$

48,115

$

5,484

$

4

$

53,603

    

Three Months Ended September 30, 2022

Reconciling

    

Product

    

Distribution

    

 Items(1)

    

Total

Net sales

    

$

92,718

    

$

26,012

    

$

(7,176)

    

$

111,554

Cost of goods sold

54,125

20,859

(7,170)

67,814

Gross profit

$

38,593

$

5,153

$

(6)

$

43,740

    

Nine Months Ended September 30, 2023

Reconciling

    

    Product    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

305,057

    

$

74,594

    

$

(21,702)

    

$

357,949

Cost of goods sold

171,204

57,200

(21,423)

206,981

Gross profit

$

133,853

$

17,394

$

(279)

$

150,968

    

Nine Months Ended September 30, 2022

Reconciling

    

    Product    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

277,941

    

$

73,836

$

(17,585)

    

$

334,192

Cost of goods sold

166,192

$

58,437

$

(17,587)

207,042

Gross profit

$

111,749

$

15,399

$

2

$

127,150

(1) Reconciling items consist primarily of intercompany eliminations and items not directly attributable to operating segments.

XML 40 R30.htm IDEA: XBRL DOCUMENT v3.23.3
SIGNIFICANT ACCOUNTING POLICIES - Additional Information (Details)
$ / shares in Units, $ in Thousands
9 Months Ended
Jul. 14, 2022
USD ($)
$ / shares
shares
Jun. 09, 2022
USD ($)
$ / shares
shares
Sep. 30, 2023
item
Sep. 30, 2022
USD ($)
Nature of Operations and Basis of Presentation        
Number of manufacturing plants | item     16  
Stock Split        
Net proceeds from the sale of shares   $ 46,988    
Underwriter discounts and commissions, fees and expenses   2,715    
Kanders & Company, Inc        
Stock Split        
Underwriter discounts and commissions, fees and expenses   $ 2,000   $ 2,000
Secondary Offering        
Stock Split        
Number of shares issued | shares   2,250,000    
Issue price | $ / shares   $ 23.50    
Over-Allotment Option        
Stock Split        
Number of shares issued | shares 300,000      
Issue price | $ / shares $ 23.50      
Net proceeds from the sale of shares $ 6,627      
Underwriter discounts and commissions, fees and expenses $ 423      
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.23.3
SIGNIFICANT ACCOUNTING POLICIES - Assets and liabilities measured at fair value on a recurring basis (Details) - Recurring - Interest Rate Swaps - USD ($)
$ in Thousands
Sep. 30, 2023
Dec. 31, 2022
Carrying amount    
Assets:    
Assets $ 9,303 $ 8,985
Fair value | Level 2    
Assets:    
Assets $ 9,303 $ 8,985
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.23.3
SIGNIFICANT ACCOUNTING POLICIES - Transfers of assets or liabilities (Details) - USD ($)
$ in Thousands
9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
SIGNIFICANT ACCOUNTING POLICIES    
Transfers between fair value measurement levels, amount $ 0 $ 0
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.23.3
SIGNIFICANT ACCOUNTING POLICIES - Accrued warranties and related costs (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Sep. 30, 2023
Sep. 30, 2022
Changes in the Company's accrued warranties and related costs        
Beginning accrued warranty expense $ 1,567 $ 1,427 $ 1,234 $ 1,256
Current period claims (451) (311) (802) (398)
Provision for current period sales 590 81 1,274 339
Ending accrued warranty expense $ 1,706 $ 1,197 $ 1,706 $ 1,197
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.23.3
SIGNIFICANT ACCOUNTING POLICIES - Weighted average shares outstanding and net income (loss) per share (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Sep. 30, 2023
Sep. 30, 2022
Numerator for basic and diluted earnings per share:        
Net income (loss) $ 11,053 $ 4,941 $ 29,047 $ (779)
Weighted average shares outstanding:        
Weighted average shares outstanding - basic 37,586,031 37,289,880 37,515,976 35,697,891
Effect of dilutive securities:        
Stock-based awards 344,857 457,734 314,814  
Weighted average shares outstanding - diluted 37,930,888 37,747,614 37,830,790 35,697,891
Net income (loss) per share:        
Basic $ 0.29 $ 0.13 $ 0.77 $ (0.02)
Diluted $ 0.29 $ 0.13 $ 0.77 $ (0.02)
Anti-dilutive instruments excluded       7,363
XML 45 R35.htm IDEA: XBRL DOCUMENT v3.23.3
ACQUISITIONS - Summary - Radar (Details) - USD ($)
$ in Thousands
9 Months Ended 12 Months Ended
Jan. 11, 2022
Sep. 30, 2022
Dec. 31, 2022
Total consideration, net of cash acquired:      
Total consideration, net   $ 55,039  
Radar      
ACQUISITIONS      
Total acquisition-related costs     $ 627
Acquisition-related costs incurred during the period     $ 204
Percentage acquired 100.00%    
Total consideration, net of cash acquired:      
Cash paid $ 20,844    
Less: cash acquired (1,479)    
Total consideration, net $ 19,365    
XML 46 R36.htm IDEA: XBRL DOCUMENT v3.23.3
ACQUISITIONS - Purchase Price Consideration and Fair Value - Radar (Details) - USD ($)
$ in Thousands
9 Months Ended
Jan. 11, 2022
Sep. 30, 2022
Sep. 30, 2023
Jun. 30, 2023
Mar. 31, 2023
Dec. 31, 2022
Total purchase price consideration and preliminary fair value amounts recognized            
Total consideration, net   $ 55,039        
Goodwill     $ 81,212 $ 81,560 $ 81,292 $ 81,576
Radar            
Total purchase price consideration and preliminary fair value amounts recognized            
Total consideration, net $ 19,365          
Accounts receivable 2,347          
Inventories 1,874          
Prepaid expenses 682          
Other current assets 665          
Property and equipment 3,053          
Intangible assets 10,200          
Goodwill 7,101          
Total assets acquired 25,922          
Accounts payable 1,120          
Deferred tax liabilities 2,787          
Accrued liabilities 2,106          
Long-term debt 544          
Total liabilities assumed 6,557          
Net assets acquired $ 19,365          
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.23.3
ACQUISITIONS - Intangible Assets - Radar (Details) - Radar
$ in Thousands
Jan. 11, 2022
USD ($)
ACQUISITIONS  
Gross $ 10,200
Goodwill, non-deductible for tax purposes 7,101
Customer relationships  
ACQUISITIONS  
Gross $ 9,300
Average Useful Life 15 years
Technology  
ACQUISITIONS  
Gross $ 600
Average Useful Life 10 years
Trademarks  
ACQUISITIONS  
Gross $ 300
Average Useful Life 7 years
XML 48 R38.htm IDEA: XBRL DOCUMENT v3.23.3
ACQUISITIONS - Summary - Cyalume (Details) - USD ($)
$ in Thousands
9 Months Ended 12 Months Ended
May 04, 2022
Sep. 30, 2022
Dec. 31, 2022
Total consideration, net of cash acquired:      
Total consideration, net   $ 55,039  
Cyalume      
ACQUISITIONS      
Acquisition-related costs incurred during the period     $ 3,546
Percentage acquired 100.00%    
Total consideration, net of cash acquired:      
Cash paid $ 38,012    
Less: cash acquired (1,834)    
Total consideration, net $ 36,178    
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.23.3
ACQUISITIONS - Purchase Price Consideration and Fair Value - Cyalume (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
May 04, 2022
Jun. 30, 2023
Mar. 31, 2023
Sep. 30, 2023
Sep. 30, 2022
Dec. 31, 2022
ACQUISITIONS            
Measurement period adjustments   $ 200 $ (593)      
Total purchase price consideration and preliminary fair value amounts recognized            
Total consideration, net         $ 55,039  
Goodwill   $ 81,560 $ 81,292 $ 81,212   $ 81,576
Cyalume            
ACQUISITIONS            
Measurement period adjustments       $ (393)    
Total purchase price consideration and preliminary fair value amounts recognized            
Total consideration, net $ 36,178          
Accounts receivable 3,302          
Inventories 10,908          
Prepaid expenses 255          
Other current assets 10          
Property and equipment 12,492          
Intangible assets 8,100          
Goodwill 8,708          
Total assets acquired 43,775          
Accounts payable 1,080          
Deferred tax liabilities 4,652          
Accrued liabilities 1,577          
Other long-term liabilities 288          
Total liabilities assumed 7,597          
Net assets acquired $ 36,178          
XML 50 R40.htm IDEA: XBRL DOCUMENT v3.23.3
ACQUISITIONS - Intangible Assets - Cyalume (Details) - Cyalume
$ in Thousands
May 04, 2022
USD ($)
ACQUISITIONS  
Gross $ 8,100
Goodwill, non-deductible for tax purposes 8,708
Customer relationships  
ACQUISITIONS  
Gross $ 3,700
Average Useful Life 15 years
Technology  
ACQUISITIONS  
Gross $ 3,600
Average Useful Life 10 years
Trademarks  
ACQUISITIONS  
Gross $ 800
XML 51 R41.htm IDEA: XBRL DOCUMENT v3.23.3
REVENUE RECOGNITION - Net sales by channel and geography (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Sep. 30, 2023
Sep. 30, 2022
Revenue Recognition        
Net sales $ 125,114 $ 111,554 $ 357,949 $ 334,192
U.S. state and local agencies        
Revenue Recognition        
Net sales 75,584 64,359 212,965 188,724
Commercial        
Revenue Recognition        
Net sales 9,525 11,211 30,834 33,572
U.S. federal agencies        
Revenue Recognition        
Net sales 13,355 16,652 42,484 34,014
International        
Revenue Recognition        
Net sales 25,821 18,264 69,194 74,789
Other        
Revenue Recognition        
Net sales $ 829 $ 1,068 $ 2,472 $ 3,093
XML 52 R42.htm IDEA: XBRL DOCUMENT v3.23.3
REVENUE RECOGNITION - Includes all Distribution sales (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Sep. 30, 2023
Sep. 30, 2022
Revenue Recognition        
Net sales $ 125,114 $ 111,554 $ 357,949 $ 334,192
United States        
Revenue Recognition        
Net sales 99,293 93,290 288,755 259,403
International.        
Revenue Recognition        
Net sales $ 25,821 $ 18,264 $ 69,194 $ 74,789
XML 53 R43.htm IDEA: XBRL DOCUMENT v3.23.3
REVENUE RECOGNITION - Contract Liabilities (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2023
Dec. 31, 2022
REVENUE RECOGNITION      
Contract liabilities, current $ 3,893 $ 3,893 $ 4,615
Revenue recognized from amounts included in contract liabilities $ 407 $ 2,752  
XML 54 R44.htm IDEA: XBRL DOCUMENT v3.23.3
REVENUE RECOGNITION - Additional information (Details)
$ in Thousands
Sep. 30, 2023
USD ($)
Revenue Recognition  
Remaining performance obligations $ 17,620
Percentage of remaining performance obligations expect to recognize 58.00%
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-10-01  
Revenue Recognition  
Expected timing of satisfaction 12 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-10-01  
Revenue Recognition  
Expected timing of satisfaction 2 years
XML 55 R45.htm IDEA: XBRL DOCUMENT v3.23.3
INVENTORIES (Details) - USD ($)
$ in Thousands
Sep. 30, 2023
Dec. 31, 2022
INVENTORIES    
Finished goods $ 30,701 $ 25,208
Work-in-process 9,004 7,466
Raw materials and supplies 42,841 37,599
Total $ 82,546 $ 70,273
XML 56 R46.htm IDEA: XBRL DOCUMENT v3.23.3
GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of changes in goodwill (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2023
Jun. 30, 2023
Mar. 31, 2023
Sep. 30, 2023
Summary of changes in goodwill        
Balance at beginning of period $ 81,560 $ 81,292 $ 81,576 $ 81,576
Measurement period adjustments   200 (593)  
Foreign currency translation adjustments (348) 68 309  
Balance at end of period 81,212 81,560 81,292 81,212
Product.        
Summary of changes in goodwill        
Balance at beginning of period 78,944 78,676 78,960 78,960
Measurement period adjustments   200 (593)  
Foreign currency translation adjustments (348) 68 309  
Balance at end of period 78,596 78,944 78,676 78,596
Distribution        
Summary of changes in goodwill        
Balance at beginning of period 2,616 2,616 2,616 2,616
Balance at end of period $ 2,616 $ 2,616 $ 2,616 $ 2,616
XML 57 R47.htm IDEA: XBRL DOCUMENT v3.23.3
GOODWILL AND OTHER INTANGIBLE ASSETS - Impairment of Goodwill (Details) - USD ($)
$ in Thousands
Sep. 30, 2023
Dec. 31, 2022
GOODWILL AND OTHER INTANGIBLE ASSETS    
Gross goodwill $ 88,797 $ 89,161
Accumulated impairment losses $ 7,585 $ 7,585
XML 58 R48.htm IDEA: XBRL DOCUMENT v3.23.3
GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of intangible assets (Details) - USD ($)
$ in Thousands
Sep. 30, 2023
Dec. 31, 2022
Summary of intangible assets    
Definite lived intangibles, Gross $ 109,147 $ 108,933
Definite lived intangibles, Accumulated amortization (82,236) (75,658)
Definite lived intangibles, Net 26,911 33,275
Indefinite lived intangibles 126,569 126,353
Indefinite lived intangibles, Net 44,333 50,695
Tradenames    
Summary of intangible assets    
Indefinite lived intangibles 17,422 17,420
Indefinite lived intangibles, Net 17,422 17,420
Customer relationships    
Summary of intangible assets    
Definite lived intangibles, Gross 85,680 85,847
Definite lived intangibles, Accumulated amortization (64,337) (59,122)
Definite lived intangibles, Net $ 21,343 $ 26,725
Weighted Average Useful Life 11 years 11 years
Technology    
Summary of intangible assets    
Definite lived intangibles, Gross $ 15,974 $ 15,629
Definite lived intangibles, Accumulated amortization (11,793) (11,309)
Definite lived intangibles, Net $ 4,181 $ 4,320
Weighted Average Useful Life 8 years 8 years
Tradenames    
Summary of intangible assets    
Definite lived intangibles, Gross $ 6,513 $ 6,484
Definite lived intangibles, Accumulated amortization (5,126) (4,254)
Definite lived intangibles, Net $ 1,387 $ 2,230
Weighted Average Useful Life 4 years 4 years
Non-compete agreements    
Summary of intangible assets    
Definite lived intangibles, Gross $ 980 $ 973
Definite lived intangibles, Accumulated amortization $ (980) $ (973)
Weighted Average Useful Life 4 years 4 years
XML 59 R49.htm IDEA: XBRL DOCUMENT v3.23.3
GOODWILL AND OTHER INTANGIBLE ASSETS - Additional information (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Sep. 30, 2023
Sep. 30, 2022
GOODWILL AND OTHER INTANGIBLE ASSETS        
Amortization expense $ 2,155 $ 2,274 $ 6,308 $ 6,671
Amortization expense included in cost of goods sold $ 55 $ 134 $ 372 $ 314
XML 60 R50.htm IDEA: XBRL DOCUMENT v3.23.3
GOODWILL AND OTHER INTANGIBLE ASSETS - Amortization expense for definite lived intangible assets (Details) - USD ($)
$ in Thousands
Sep. 30, 2023
Dec. 31, 2022
Estimated amortization expense for finite-lived intangible assets    
Remainder of 2023 $ 1,477  
2024 5,013  
2025 3,053  
2026 2,656  
2027 2,479  
Thereafter 12,233  
Total $ 26,911 $ 33,275
XML 61 R51.htm IDEA: XBRL DOCUMENT v3.23.3
DEBT - Schedule of company's debt (Details) - USD ($)
$ in Thousands
Sep. 30, 2023
Dec. 31, 2022
Debt    
Short-term debt $ 13,251 $ 12,211
Long-term debt 131,573 139,076
Unamortized debt discount and debt issuance costs (1,264) (1,600)
Total long-term debt, net 130,309 137,476
Term loan    
Debt    
Long-term debt 131,064 138,564
Other.    
Debt    
Long-term debt 509 512
Insurance premium financing    
Debt    
Short-term debt 3,251 2,211
Current portion of term loan    
Debt    
Short-term debt $ 10,000 $ 10,000
XML 62 R52.htm IDEA: XBRL DOCUMENT v3.23.3
DEBT - Summary of aggregate principal payment of long-term debt (Details)
$ in Thousands
Sep. 30, 2023
USD ($)
DEBT  
Remainder of 2023 $ 2,500
2024 10,127
2025 10,127
2026 118,691
2027 128
Total principal payments $ 141,573
XML 63 R53.htm IDEA: XBRL DOCUMENT v3.23.3
DEBT - 2021 Credit Facility (Details)
$ in Thousands
4 Months Ended 9 Months Ended
Aug. 20, 2021
USD ($)
Sep. 30, 2023
USD ($)
Sep. 30, 2023
USD ($)
Dec. 31, 2022
USD ($)
Debt        
Outstanding borrowings   $ 131,573 $ 131,573 $ 139,076
2021 Credit Facility        
Debt        
Increase in total net leverage ratio     0.50  
2021 Credit Facility | Minimum        
Debt        
Commitment Fee   0.175% 0.175%  
2021 Credit Facility | Maximum        
Debt        
Commitment Fee   0.25% 0.25%  
2021 Credit Facility | Each quarter starting with the quarter ended December 31, 2021        
Debt        
Minimum fixed charge coverage ratio     1.25  
2021 Credit Facility | From the Quarter Ended December 31, 2022 until the quarter ended September 30, 2023        
Debt        
Total net leverage ratio     3.75  
2021 Credit Facility | Period after the quarter ended September 30, 2023 | Maximum        
Debt        
Total net leverage ratio     3.50  
2021 Credit Facility | Base Rate | Minimum        
Debt        
Applicable margin (as a percent)   0.50%    
2021 Credit Facility | Base Rate | Maximum        
Debt        
Applicable margin (as a percent)   1.50%    
2021 Credit Facility | SOFR | Minimum        
Debt        
Applicable margin (as a percent)   1.60%    
2021 Credit Facility | SOFR | Maximum        
Debt        
Applicable margin (as a percent)   2.60%    
2021 Credit Facility | Revolving credit facility.        
Debt        
Maximum borrowing capacity $ 100,000      
Outstanding borrowings   $ 0 $ 0 $ 0
Available borrowing capacity   97,387 97,387  
2021 Credit Facility | Term loan        
Debt        
Aggregate principal amount per quarter (in percent) 1.25%      
Outstanding borrowings $ 200,000      
2021 Credit Facility | Letter of credit        
Debt        
Maximum borrowing capacity 15,000      
Outstanding letters of credit   $ 2,613 $ 2,613  
2021 Credit Facility | Swing line loans        
Debt        
Maximum borrowing capacity $ 10,000      
XML 64 R54.htm IDEA: XBRL DOCUMENT v3.23.3
DEBT - Canadian Credit Facility (Details) - Canadian Credit Facility
$ in Thousands, $ in Thousands
9 Months Ended
Sep. 30, 2023
USD ($)
Dec. 31, 2022
USD ($)
Oct. 14, 2021
USD ($)
Oct. 14, 2021
CAD ($)
Minimum        
Debt        
Unused line fee (as a percent) 0.175%      
Maximum        
Debt        
Unused line fee (as a percent) 0.25%      
Base Rate | Minimum        
Debt        
Applicable margin (as a percent) 0.50%      
Base Rate | Maximum        
Debt        
Applicable margin (as a percent) 1.50%      
LIBOR | Minimum        
Debt        
Applicable margin (as a percent) 1.50%      
LIBOR | Maximum        
Debt        
Applicable margin (as a percent) 2.50%      
Revolving credit facility.        
Debt        
Maximum borrowing capacity       $ 10,000
Amount outstanding $ 0 $ 0    
Upfront Fee 0.25%      
Letter of credit        
Debt        
Maximum borrowing capacity     $ 3,000  
XML 65 R55.htm IDEA: XBRL DOCUMENT v3.23.3
DEBT - Schedule of interest rate swaps (Details) - USD ($)
9 Months Ended
Sep. 30, 2023
May 31, 2023
Interest Rate Swaps    
Interest Rate Swaps    
Variable rate 5.32%  
Interest Rate Swap, One    
Interest Rate Swaps    
Debt instrument, start maturity date Sep. 30, 2021  
Debt instrument, end maturity date Jul. 23, 2026  
Notional amount $ 100,000,000 $ 100,000
Fixed rate 0.812%  
Interest Rate Swap, Two    
Interest Rate Swaps    
Debt instrument, start maturity date May 31, 2023  
Debt instrument, end maturity date Jul. 23, 2026  
Notional amount $ 50,000,000 $ 50,000
Fixed rate 3.905%  
XML 66 R56.htm IDEA: XBRL DOCUMENT v3.23.3
DEBT - Schedule of fair value swap agreement (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Sep. 30, 2023
Sep. 30, 2022
Dec. 31, 2022
Interest Rate Swaps          
Cumulative gain, net of tax reflected in accumulated other comprehensive income (loss) $ 6,755   $ 6,755   $ 6,739
Gain recognized in other comprehensive income (loss) 1,131 $ 2,350 2,281 $ 6,414  
Amount reclassified from accumulated other comprehensive income to earnings 884 $ 252 2,266 $ 106  
Amount reclassified from AOCI into interest expense within next twelve months 4,449   4,449    
Interest Rate Swaps | Other current assets          
Interest Rate Swaps          
Derivative asset $ 4,550   $ 4,550   $ 3,619
Derivative Asset, Statement of Financial Position [Extensible Enumeration] Other Assets, Current   Other Assets, Current   Other Assets, Current
Interest Rate Swaps | Other assets          
Interest Rate Swaps          
Derivative asset $ 4,753   $ 4,753   $ 5,366
Derivative Asset, Statement of Financial Position [Extensible Enumeration] Other Assets, Noncurrent   Other Assets, Noncurrent   Other Assets, Noncurrent
XML 67 R57.htm IDEA: XBRL DOCUMENT v3.23.3
COMMITMENTS AND CONTINGENCIES - Legal Proceedings (Details)
$ in Thousands
1 Months Ended
Sep. 30, 2021
USD ($)
COMMITMENTS AND CONTINGENCIES  
Damage awarded $ 7,500
XML 68 R58.htm IDEA: XBRL DOCUMENT v3.23.3
INCOME TAXES (Details)
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Sep. 30, 2023
Sep. 30, 2022
INCOME TAXES.        
Effective tax rate 28.00% 28.40% 28.30% 76.50%
XML 69 R59.htm IDEA: XBRL DOCUMENT v3.23.3
COMPENSATION PLANS - Long-Term Incentive Plan (Details) - Long-Term Incentive Plan
$ in Thousands
3 Months Ended 9 Months Ended
Mar. 31, 2021
installment
Sep. 30, 2023
USD ($)
Sep. 30, 2022
USD ($)
Sep. 30, 2023
USD ($)
Sep. 30, 2022
USD ($)
Compensation Plans          
Number of equal installments | installment 3        
Vesting period for awards granted under the cash-based long-term incentive plan 3 years        
Compensation expense related to the cash-based long-term incentive plan | $   $ 185 $ 375 $ 489 $ 933
XML 70 R60.htm IDEA: XBRL DOCUMENT v3.23.3
COMPENSATION PLANS - Executive Compensation Plan (Details) - Executive Compensation Plan - USD ($)
$ / shares in Units, $ in Thousands
9 Months Ended
Mar. 09, 2022
Sep. 30, 2023
Mar. 18, 2022
Compensation Plans      
Number of awards granted under cash-based executive compensation plan   1,433,500  
Grant date fair value per share of common stock of all vested and unvested units under the cash-based executive compensation plan $ 23.45    
Number of units expected to vest under cash-based executive compensation plan     632,500
Number of unvested units under cash-based executive compensation plan     801,000
Share based compensation expense   $ 22,100  
Unrecognized compensation expense $ 11,516    
XML 71 R61.htm IDEA: XBRL DOCUMENT v3.23.3
LEASES - Schedule of operating assets and liabilities (Details) - USD ($)
$ in Thousands
Sep. 30, 2023
Dec. 31, 2022
Leases    
Operating lease assets $ 6,643 $ 8,489
Current operating lease liabilities $ 3,192 $ 3,773
Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Accrued Liabilities, Current Accrued Liabilities, Current
Long-term operating lease liabilities $ 3,603 $ 4,965
Total lease liabilities $ 6,795 $ 8,738
Maximum    
Leases    
Remaining contractual terms 5 years  
Optional lease extension terms 5 years  
XML 72 R62.htm IDEA: XBRL DOCUMENT v3.23.3
LEASES - Components of lease expense (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2023
LEASES    
Fixed operating lease costs $ 954 $ 3,019
Variable operating lease costs 511 1,267
Total $ 1,465 $ 4,286
XML 73 R63.htm IDEA: XBRL DOCUMENT v3.23.3
LEASES - Weighted average remaining lease term and discount rate (Details)
Sep. 30, 2023
Dec. 31, 2022
LEASES    
Operating leases weighted average remaining lease term (years): 2 years 3 months 18 days 2 years 7 months 13 days
Operating leases weighted average discount rate 3.06% 2.96%
XML 74 R64.htm IDEA: XBRL DOCUMENT v3.23.3
LEASES - Future minimum lease payments under operating leases (Details) - USD ($)
$ in Thousands
Sep. 30, 2023
Dec. 31, 2022
LEASES    
Remainder of 2023 $ 1,090  
2024 3,250  
2025 1,835  
2026 768  
2027 134  
Thereafter 8  
Total future lease payments 7,085  
Less: Amount representing interest (290)  
Present value of lease liabilities $ 6,795 $ 8,738
XML 75 R65.htm IDEA: XBRL DOCUMENT v3.23.3
LEASES - Supplemental cash flow information related to leases (Details)
$ in Thousands
9 Months Ended
Sep. 30, 2023
USD ($)
LEASES  
Operating cash flows - operating leases $ 3,063
Operating leases
XML 76 R66.htm IDEA: XBRL DOCUMENT v3.23.3
RELATED PARTY TRANSACTIONS (Details)
$ in Thousands
3 Months Ended 9 Months Ended
Jun. 09, 2022
USD ($)
Sep. 30, 2023
USD ($)
Sep. 30, 2022
USD ($)
Sep. 30, 2023
USD ($)
warehouse
Sep. 30, 2022
USD ($)
Related Party Transactions          
Number of distribution warehouses and retail stores | warehouse       4  
Rent expense   $ 116 $ 112 $ 379 $ 346
Direct offering costs $ 2,715        
Kanders & Company, Inc          
Related Party Transactions          
Related party, acquisition costs         1,000
Direct offering costs $ 2,000       $ 2,000
XML 77 R67.htm IDEA: XBRL DOCUMENT v3.23.3
SEGMENT DATA - Other (Details)
9 Months Ended
Sep. 30, 2023
segment
SEGMENT DATA  
Number of reportable segments 2
XML 78 R68.htm IDEA: XBRL DOCUMENT v3.23.3
SEGMENT DATA - asset information or operating expenses by segment (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2023
Sep. 30, 2022
Sep. 30, 2023
Sep. 30, 2022
Segment Data        
Net sales $ 125,114 $ 111,554 $ 357,949 $ 334,192
Cost of goods sold 71,511 67,814 206,981 207,042
Gross profit 53,603 43,740 150,968 127,150
Reconciling Items        
Segment Data        
Net sales (7,589) (7,176) (21,702) (17,585)
Cost of goods sold (7,593) (7,170) (21,423) (17,587)
Gross profit 4 (6) (279) 2
Product. | Operating segments        
Segment Data        
Net sales 108,495 92,718 305,057 277,941
Cost of goods sold 60,380 54,125 171,204 166,192
Gross profit 48,115 38,593 133,853 111,749
Distribution | Operating segments        
Segment Data        
Net sales 24,208 26,012 74,594 73,836
Cost of goods sold 18,724 20,859 57,200 58,437
Gross profit $ 5,484 $ 5,153 $ 17,394 $ 15,399
XML 79 cdre-20230930x10q_htm.xml IDEA: XBRL DOCUMENT 0001860543 us-gaap:CommonStockMember 2023-01-01 2023-03-31 0001860543 us-gaap:CommonStockMember 2022-01-01 2022-03-31 0001860543 us-gaap:CommonStockMember 2022-07-01 2022-09-30 0001860543 cdre:SecondaryOfferingMember 2022-06-09 2022-06-09 0001860543 us-gaap:CommonStockMember 2022-04-01 2022-06-30 0001860543 us-gaap:RetainedEarningsMember 2023-09-30 0001860543 us-gaap:AdditionalPaidInCapitalMember 2023-09-30 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-09-30 0001860543 us-gaap:RetainedEarningsMember 2023-06-30 0001860543 us-gaap:AdditionalPaidInCapitalMember 2023-06-30 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-06-30 0001860543 us-gaap:RetainedEarningsMember 2023-03-31 0001860543 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-03-31 0001860543 us-gaap:RetainedEarningsMember 2022-12-31 0001860543 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0001860543 us-gaap:RetainedEarningsMember 2022-09-30 0001860543 us-gaap:AdditionalPaidInCapitalMember 2022-09-30 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-09-30 0001860543 us-gaap:RetainedEarningsMember 2022-06-30 0001860543 us-gaap:AdditionalPaidInCapitalMember 2022-06-30 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-06-30 0001860543 us-gaap:RetainedEarningsMember 2022-03-31 0001860543 us-gaap:AdditionalPaidInCapitalMember 2022-03-31 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-03-31 0001860543 2022-03-31 0001860543 us-gaap:RetainedEarningsMember 2021-12-31 0001860543 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-12-31 0001860543 cdre:InsurancePremiumFinancingMember 2023-09-30 0001860543 cdre:CurrentPortionOfTermLoanMember 2023-09-30 0001860543 cdre:InsurancePremiumFinancingMember 2022-12-31 0001860543 cdre:CurrentPortionOfTermLoanMember 2022-12-31 0001860543 us-gaap:OverAllotmentOptionMember 2022-07-14 0001860543 cdre:SecondaryOfferingMember 2022-06-09 0001860543 cdre:RadarLeatherDivisionS.r.lMember 2023-01-01 2023-09-30 0001860543 2024-10-01 2023-09-30 0001860543 2023-10-01 2023-09-30 0001860543 us-gaap:NonUsMember 2023-07-01 2023-09-30 0001860543 country:US 2023-07-01 2023-09-30 0001860543 cdre:U.s.stateAndLocalAgenciesMember 2023-07-01 2023-09-30 0001860543 cdre:U.s.FederalAgenciesMember 2023-07-01 2023-09-30 0001860543 cdre:OtherMember 2023-07-01 2023-09-30 0001860543 cdre:InternationalMember 2023-07-01 2023-09-30 0001860543 cdre:CommercialMember 2023-07-01 2023-09-30 0001860543 us-gaap:NonUsMember 2023-01-01 2023-09-30 0001860543 country:US 2023-01-01 2023-09-30 0001860543 cdre:U.s.stateAndLocalAgenciesMember 2023-01-01 2023-09-30 0001860543 cdre:U.s.FederalAgenciesMember 2023-01-01 2023-09-30 0001860543 cdre:OtherMember 2023-01-01 2023-09-30 0001860543 cdre:InternationalMember 2023-01-01 2023-09-30 0001860543 cdre:CommercialMember 2023-01-01 2023-09-30 0001860543 us-gaap:NonUsMember 2022-07-01 2022-09-30 0001860543 country:US 2022-07-01 2022-09-30 0001860543 cdre:U.s.stateAndLocalAgenciesMember 2022-07-01 2022-09-30 0001860543 cdre:U.s.FederalAgenciesMember 2022-07-01 2022-09-30 0001860543 cdre:OtherMember 2022-07-01 2022-09-30 0001860543 cdre:InternationalMember 2022-07-01 2022-09-30 0001860543 cdre:CommercialMember 2022-07-01 2022-09-30 0001860543 us-gaap:NonUsMember 2022-01-01 2022-09-30 0001860543 country:US 2022-01-01 2022-09-30 0001860543 cdre:U.s.stateAndLocalAgenciesMember 2022-01-01 2022-09-30 0001860543 cdre:U.s.FederalAgenciesMember 2022-01-01 2022-09-30 0001860543 cdre:OtherMember 2022-01-01 2022-09-30 0001860543 cdre:InternationalMember 2022-01-01 2022-09-30 0001860543 cdre:CommercialMember 2022-01-01 2022-09-30 0001860543 2022-06-30 0001860543 cdre:KandersCompanyIncMember 2022-06-09 2022-06-09 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-07-01 2023-09-30 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-04-01 2023-06-30 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-03-31 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-07-01 2022-09-30 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-04-01 2022-06-30 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-03-31 0001860543 2021-09-01 2021-09-30 0001860543 srt:MinimumMember cdre:CanadianCreditFacilityMember 2023-01-01 2023-09-30 0001860543 srt:MaximumMember cdre:CanadianCreditFacilityMember 2023-01-01 2023-09-30 0001860543 us-gaap:RevolvingCreditFacilityMember cdre:CanadianCreditFacilityMember 2021-10-14 0001860543 us-gaap:LetterOfCreditMember cdre:CanadianCreditFacilityMember 2021-10-14 0001860543 us-gaap:RevolvingCreditFacilityMember cdre:NewCreditAgreementAugust2021Member 2021-08-20 0001860543 us-gaap:LetterOfCreditMember cdre:NewCreditAgreementAugust2021Member 2021-08-20 0001860543 cdre:SwingLineLoansMember cdre:NewCreditAgreementAugust2021Member 2021-08-20 0001860543 us-gaap:RevolvingCreditFacilityMember cdre:CanadianCreditFacilityMember 2022-12-31 0001860543 us-gaap:LetterOfCreditMember cdre:NewCreditAgreementAugust2021Member 2023-09-30 0001860543 srt:MaximumMember 2023-09-30 0001860543 us-gaap:TradeNamesMember 2023-09-30 0001860543 us-gaap:TradeNamesMember 2022-12-31 0001860543 cdre:CyalumeAcquisitionMember 2023-01-01 2023-09-30 0001860543 cdre:ProductsMember 2023-07-01 2023-09-30 0001860543 cdre:ProductsMember 2023-04-01 2023-06-30 0001860543 cdre:ProductsMember 2023-01-01 2023-03-31 0001860543 cdre:ProductsMember 2023-09-30 0001860543 cdre:DistributionServicesMember 2023-09-30 0001860543 cdre:ProductsMember 2023-06-30 0001860543 cdre:DistributionServicesMember 2023-06-30 0001860543 2023-06-30 0001860543 cdre:ProductsMember 2023-03-31 0001860543 cdre:DistributionServicesMember 2023-03-31 0001860543 2023-03-31 0001860543 cdre:ProductsMember 2022-12-31 0001860543 cdre:DistributionServicesMember 2022-12-31 0001860543 cdre:CyalumeAcquisitionMember us-gaap:TrademarksMember 2022-05-04 2022-05-04 0001860543 us-gaap:TradeNamesMember 2023-09-30 0001860543 us-gaap:TechnologyBasedIntangibleAssetsMember 2023-09-30 0001860543 us-gaap:NoncompeteAgreementsMember 2023-09-30 0001860543 us-gaap:CustomerRelationshipsMember 2023-09-30 0001860543 us-gaap:TradeNamesMember 2022-12-31 0001860543 us-gaap:TechnologyBasedIntangibleAssetsMember 2022-12-31 0001860543 us-gaap:NoncompeteAgreementsMember 2022-12-31 0001860543 us-gaap:CustomerRelationshipsMember 2022-12-31 0001860543 us-gaap:RetainedEarningsMember 2023-07-01 2023-09-30 0001860543 us-gaap:RetainedEarningsMember 2023-04-01 2023-06-30 0001860543 us-gaap:RetainedEarningsMember 2023-01-01 2023-03-31 0001860543 us-gaap:RetainedEarningsMember 2022-07-01 2022-09-30 0001860543 us-gaap:RetainedEarningsMember 2022-04-01 2022-06-30 0001860543 us-gaap:RetainedEarningsMember 2022-01-01 2022-03-31 0001860543 us-gaap:InterestRateSwapMember 2023-09-30 0001860543 cdre:InterestRateSwapTwoMember 2023-05-31 0001860543 cdre:InterestRateSwapOneMember 2023-05-31 0001860543 cdre:InterestRateSwapTwoMember 2023-09-30 0001860543 cdre:InterestRateSwapOneMember 2023-09-30 0001860543 us-gaap:OtherCurrentAssetsMember us-gaap:InterestRateSwapMember 2023-09-30 0001860543 us-gaap:OtherAssetsMember us-gaap:InterestRateSwapMember 2023-09-30 0001860543 us-gaap:OtherCurrentAssetsMember us-gaap:InterestRateSwapMember 2022-12-31 0001860543 us-gaap:OtherAssetsMember us-gaap:InterestRateSwapMember 2022-12-31 0001860543 cdre:ExecutiveCompensationPlanMember 2022-03-09 2022-03-09 0001860543 cdre:InterestRateSwapTwoMember 2023-01-01 2023-09-30 0001860543 cdre:InterestRateSwapOneMember 2023-01-01 2023-09-30 0001860543 cdre:TermLoanMember cdre:NewCreditAgreementAugust2021Member 2021-08-20 2021-08-20 0001860543 us-gaap:RevolvingCreditFacilityMember cdre:NewCreditAgreementAugust2021Member 2023-09-30 0001860543 cdre:TermLoanMember 2023-09-30 0001860543 cdre:OtherLongTermDebtMember 2023-09-30 0001860543 us-gaap:RevolvingCreditFacilityMember cdre:NewCreditAgreementAugust2021Member 2022-12-31 0001860543 cdre:TermLoanMember 2022-12-31 0001860543 cdre:OtherLongTermDebtMember 2022-12-31 0001860543 cdre:TermLoanMember cdre:NewCreditAgreementAugust2021Member 2021-08-20 0001860543 srt:MinimumMember cdre:NewCreditAgreementAugust2021Member us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2023-05-31 2023-09-30 0001860543 srt:MinimumMember cdre:NewCreditAgreementAugust2021Member us-gaap:BaseRateMember 2023-05-31 2023-09-30 0001860543 srt:MaximumMember cdre:NewCreditAgreementAugust2021Member us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2023-05-31 2023-09-30 0001860543 srt:MaximumMember cdre:NewCreditAgreementAugust2021Member us-gaap:BaseRateMember 2023-05-31 2023-09-30 0001860543 srt:MinimumMember cdre:CanadianCreditFacilityMember us-gaap:BaseRateMember 2023-01-01 2023-09-30 0001860543 srt:MinimumMember cdre:CanadianCreditFacilityMember cdre:LondonInterbankOfferedRateMember 2023-01-01 2023-09-30 0001860543 srt:MaximumMember cdre:CanadianCreditFacilityMember us-gaap:BaseRateMember 2023-01-01 2023-09-30 0001860543 srt:MaximumMember cdre:CanadianCreditFacilityMember cdre:LondonInterbankOfferedRateMember 2023-01-01 2023-09-30 0001860543 us-gaap:OperatingSegmentsMember cdre:ProductsMember 2023-07-01 2023-09-30 0001860543 us-gaap:OperatingSegmentsMember cdre:DistributionServicesMember 2023-07-01 2023-09-30 0001860543 us-gaap:MaterialReconcilingItemsMember 2023-07-01 2023-09-30 0001860543 us-gaap:OperatingSegmentsMember cdre:ProductsMember 2023-01-01 2023-09-30 0001860543 us-gaap:OperatingSegmentsMember cdre:DistributionServicesMember 2023-01-01 2023-09-30 0001860543 us-gaap:MaterialReconcilingItemsMember 2023-01-01 2023-09-30 0001860543 us-gaap:OperatingSegmentsMember cdre:ProductsMember 2022-07-01 2022-09-30 0001860543 us-gaap:OperatingSegmentsMember cdre:DistributionServicesMember 2022-07-01 2022-09-30 0001860543 us-gaap:MaterialReconcilingItemsMember 2022-07-01 2022-09-30 0001860543 us-gaap:OperatingSegmentsMember cdre:ProductsMember 2022-01-01 2022-09-30 0001860543 us-gaap:OperatingSegmentsMember cdre:DistributionServicesMember 2022-01-01 2022-09-30 0001860543 us-gaap:MaterialReconcilingItemsMember 2022-01-01 2022-09-30 0001860543 us-gaap:CommonStockMember 2023-09-30 0001860543 us-gaap:CommonStockMember 2023-06-30 0001860543 us-gaap:CommonStockMember 2023-03-31 0001860543 us-gaap:CommonStockMember 2022-12-31 0001860543 us-gaap:CommonStockMember 2022-09-30 0001860543 us-gaap:CommonStockMember 2022-06-30 0001860543 us-gaap:CommonStockMember 2022-03-31 0001860543 us-gaap:CommonStockMember 2021-12-31 0001860543 2022-09-30 0001860543 2021-12-31 0001860543 cdre:CyalumeAcquisitionMember 2022-05-04 2022-05-04 0001860543 cdre:RadarLeatherDivisionS.r.lMember 2022-01-11 2022-01-11 0001860543 cdre:CyalumeAcquisitionMember 2022-01-01 2022-12-31 0001860543 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member us-gaap:EstimateOfFairValueFairValueDisclosureMember us-gaap:FairValueMeasurementsRecurringMember 2023-09-30 0001860543 us-gaap:InterestRateSwapMember us-gaap:CarryingReportedAmountFairValueDisclosureMember us-gaap:FairValueMeasurementsRecurringMember 2023-09-30 0001860543 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member us-gaap:EstimateOfFairValueFairValueDisclosureMember us-gaap:FairValueMeasurementsRecurringMember 2022-12-31 0001860543 us-gaap:InterestRateSwapMember us-gaap:CarryingReportedAmountFairValueDisclosureMember us-gaap:FairValueMeasurementsRecurringMember 2022-12-31 0001860543 us-gaap:AdditionalPaidInCapitalMember 2023-07-01 2023-09-30 0001860543 us-gaap:AdditionalPaidInCapitalMember 2023-04-01 2023-06-30 0001860543 2023-04-01 2023-06-30 0001860543 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-03-31 0001860543 2023-01-01 2023-03-31 0001860543 us-gaap:AdditionalPaidInCapitalMember 2022-07-01 2022-09-30 0001860543 us-gaap:AdditionalPaidInCapitalMember 2022-04-01 2022-06-30 0001860543 2022-04-01 2022-06-30 0001860543 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-03-31 0001860543 2022-01-01 2022-03-31 0001860543 cdre:CyalumeAcquisitionMember us-gaap:TechnologyBasedIntangibleAssetsMember 2022-05-04 2022-05-04 0001860543 cdre:CyalumeAcquisitionMember us-gaap:CustomerRelationshipsMember 2022-05-04 2022-05-04 0001860543 cdre:RadarLeatherDivisionS.r.lMember us-gaap:TrademarksMember 2022-01-11 2022-01-11 0001860543 cdre:RadarLeatherDivisionS.r.lMember us-gaap:TechnologyBasedIntangibleAssetsMember 2022-01-11 2022-01-11 0001860543 cdre:RadarLeatherDivisionS.r.lMember us-gaap:CustomerRelationshipsMember 2022-01-11 2022-01-11 0001860543 2023-11-03 0001860543 cdre:KandersCompanyIncMember 2022-01-01 2022-09-30 0001860543 2022-07-01 2022-09-30 0001860543 us-gaap:OverAllotmentOptionMember 2022-07-14 2022-07-14 0001860543 2022-06-09 2022-06-09 0001860543 srt:MinimumMember cdre:NewCreditAgreementAugust2021Member 2023-09-30 0001860543 srt:MaximumMember cdre:NewCreditAgreementAugust2021Member 2023-09-30 0001860543 2023-07-01 2023-09-30 0001860543 2023-09-30 0001860543 2022-12-31 0001860543 srt:MaximumMember cdre:ScenarioPeriodThreeMember cdre:NewCreditAgreementAugust2021Member 2023-01-01 2023-09-30 0001860543 cdre:ScenarioPeriodTwoMember cdre:NewCreditAgreementAugust2021Member 2023-01-01 2023-09-30 0001860543 us-gaap:RevolvingCreditFacilityMember cdre:CanadianCreditFacilityMember 2023-09-30 0001860543 cdre:NewCreditAgreementAugust2021Member 2023-01-01 2023-09-30 0001860543 cdre:ScenarioPeriodOneMember cdre:NewCreditAgreementAugust2021Member 2023-01-01 2023-09-30 0001860543 2023-01-01 2023-09-30 0001860543 cdre:LongTermIncentivePlanMember 2021-03-31 2021-03-31 0001860543 cdre:LongTermIncentivePlanMember 2023-07-01 2023-09-30 0001860543 cdre:LongTermIncentivePlanMember 2023-01-01 2023-09-30 0001860543 cdre:LongTermIncentivePlanMember 2022-07-01 2022-09-30 0001860543 cdre:LongTermIncentivePlanMember 2022-01-01 2022-09-30 0001860543 cdre:ExecutiveCompensationPlanMember 2023-01-01 2023-09-30 0001860543 cdre:ExecutiveCompensationPlanMember 2022-03-18 0001860543 cdre:ExecutiveCompensationPlanMember 2022-03-09 0001860543 cdre:CyalumeAcquisitionMember 2022-05-04 0001860543 cdre:RadarLeatherDivisionS.r.lMember 2022-01-11 0001860543 cdre:RadarLeatherDivisionS.r.lMember 2022-01-01 2022-12-31 0001860543 2022-01-01 2022-09-30 iso4217:USD iso4217:USD shares shares pure cdre:warehouse cdre:installment cdre:item iso4217:CAD cdre:segment 0001860543 --12-31 2023 Q3 false 0 0 37332271 http://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrent http://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrent http://fasb.org/us-gaap/2023#OtherAssetsCurrent http://fasb.org/us-gaap/2023#OtherAssetsCurrent http://fasb.org/us-gaap/2023#OtherAssetsNoncurrent http://fasb.org/us-gaap/2023#OtherAssetsNoncurrent P3Y 37586031 10-Q true 2023-09-30 false 001-40698 CADRE HOLDINGS, INC. DE 38-3873146 13386 International Pkwy Jacksonville, FL 32218 904 741-5400 Common Stock, par value $0.0001 per share CDRE NYSE Yes Yes Accelerated Filer false true false false 37586031 69412000 45286000 819000 924000 61261000 64557000 82546000 70273000 14667000 10091000 8836000 6811000 236722000 197018000 48994000 42694000 43657000 45285000 6643000 8489000 2299000 2255000 44333000 50695000 81212000 81576000 5639000 6634000 420505000 391952000 30733000 23406000 38673000 38720000 7049000 4584000 13251000 12211000 89706000 78921000 130309000 137476000 3603000 4965000 5047000 3508000 1843000 1192000 230508000 226062000 0.0001 0.0001 10000000 10000000 0 0 0.0001 0.0001 190000000 190000000 37586031 37332271 4000 4000 210543000 206540000 2143000 2087000 -22693000 -42741000 189997000 165890000 420505000 391952000 125114000 111554000 357949000 334192000 71511000 67814000 206981000 207042000 53603000 43740000 150968000 127150000 36314000 31732000 105615000 118431000 439000 1578000 1132000 3380000 116000 112000 379000 1346000 36869000 33422000 107126000 123157000 16734000 10318000 43842000 3993000 1073000 1567000 3727000 4496000 -315000 -1851000 395000 -2812000 -1388000 -3418000 -3332000 -7308000 15346000 6900000 40510000 -3315000 4293000 1959000 11463000 -2536000 11053000 4941000 29047000 -779000 0.29 0.13 0.77 -0.02 0.29 0.13 0.77 -0.02 37586031 37289880 37515976 35697891 37930888 37747614 37830790 35697891 11053000 4941000 29047000 -779000 1131000 2350000 2281000 6414000 884000 252000 2266000 106000 247000 2098000 15000 6308000 -850000 -2839000 41000 -5237000 -603000 -741000 56000 1071000 10450000 4200000 29103000 292000 377000 783000 760000 2138000 295000 84000 755000 35000 -170000 -916000 55000 -934000 29047000 -779000 12385000 11319000 359000 554000 3055000 1317000 -2755000 7060000 28988000 98000 37000 245000 243000 -3006000 -296000 -3429000 3271000 12229000 7187000 3131000 -986000 8623000 -4660000 46260000 29501000 4248000 2938000 206000 55039000 -4042000 -57977000 43000000 43000000 7500000 7514000 3949000 3989000 2909000 3878000 26000 2725000 6216000 56329000 2953000 8999000 8521000 -18184000 31210000 92000 -241000 24126000 2493000 45286000 33857000 69412000 36350000 7923000 710000 7389000 3860000 24000 272000 37332271 4000 206540000 2087000 -42741000 165890000 7002000 7002000 0.08 2986000 2986000 2636000 2636000 395837 -142077 -2725000 -2725000 706000 706000 -1073000 -1073000 37586031 4000 206451000 1720000 -38725000 169450000 10992000 10992000 0.08 3007000 3007000 2041000 2041000 185000 185000 841000 841000 37586031 4000 208492000 2746000 -30740000 180502000 11053000 11053000 0.08 3006000 3006000 2051000 2051000 -850000 -850000 247000 247000 37586031 4000 210543000 2143000 -22693000 189997000 34383350 3000 127606000 -1917000 -37052000 88640000 -10165000 -10165000 0.08 2750000 2750000 22436000 22436000 580990 1152000 1152000 -182069 -6216000 -6216000 -360000 -360000 3208000 3208000 34782271 3000 144978000 931000 -49967000 95945000 4445000 4445000 2250000 1000 46987000 46988000 0.08 2783000 2783000 2739000 2739000 -2038000 -2038000 1002000 1002000 37032271 4000 194704000 -105000 -48305000 146298000 4941000 4941000 300000 6389000 6389000 2988000 2988000 2661000 2661000 -2839000 -2839000 2098000 2098000 37332271 4000 203754000 -846000 -46352000 156560000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 6pt 0pt;">1.    SIGNIFICANT ACCOUNTING POLICIES</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 6pt 0pt;">Nature of Operations and Basis of Presentation</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;">Cadre Holdings, Inc., D/B/A The Safariland Group (the “Company”, “Cadre”, “we”, “us”, and “our”), a Delaware corporation, began operations on April 12, 2012. The Company, headquartered in Jacksonville, Florida, is a global leader in manufacturing and distributing safety and survivability products and other related products for the law enforcement, first responder and military markets. The business operates through 16 manufacturing plants within the U.S., Mexico, Canada, the United Kingdom, Italy, France, and Lithuania, and sells its products worldwide through its direct sales force, distribution channel and distribution partners, online stores, and third-party resellers.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 6pt 0pt;">Principles of Consolidation</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;">The accompanying condensed consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP" or “U.S. GAAP”) and applicable rules and regulations of the Securities and Exchange Commission (“SEC”) regarding interim financial reporting, and include the accounts of the Company, its wholly owned subsidiaries, and other entities consolidated as required by GAAP. Accordingly, they do not include all of the information and footnotes required by GAAP for annual audited financial statements. The unaudited condensed consolidated interim financial statements have been prepared on a basis consistent with the audited consolidated financial statements and include all adjustments, which are normal and recurring in nature, necessary for fair financial statement presentation. These condensed consolidated interim financial statements and notes thereto should be read in conjunction with the Company’s most recently completed annual consolidated financial statements. All adjustments considered necessary for a fair presentation have been included. All intercompany balances and transactions have been eliminated in consolidation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 6pt 0pt;"><span style="font-style:italic;font-weight:bold;background:#ffffff;">Secondary Offering</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;"><span style="background:#ffffff;">On June 9, 2022, the Company completed a secondary offering in which the Company issued and sold </span><span style="background:#ffffff;">2,250,000</span><span style="background:#ffffff;"> shares of common stock at a price of </span><span style="background:#ffffff;">$23.50</span><span style="background:#ffffff;"> per share. The Company’s net proceeds from the sale of shares were </span><span style="background:#ffffff;">$46,988</span><span style="background:#ffffff;"> after underwriter discounts and commissions, fees and expenses of </span><span style="background:#ffffff;">$2,715</span><span style="background:#ffffff;">, of which </span><span style="background:#ffffff;">$2,000</span><span style="background:#ffffff;"> was paid to Kanders &amp; Company, Inc., a company controlled by Warren Kanders, our Chief Executive Officer</span>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;"><span style="background:#ffffff;">On July 14, 2022, the underwriters exercised a portion of their over-allotment option and purchased an additional </span><span style="background:#ffffff;">300,000</span><span style="background:#ffffff;"> shares of common stock at a price of </span><span style="background:#ffffff;">$23.50</span><span style="background:#ffffff;"> per share, resulting in net proceeds to the Company of </span><span style="background:#ffffff;">$6,627</span><span style="background:#ffffff;"> after underwriter discounts and commissions, fees and expenses of </span><span style="background:#ffffff;">$423</span><span style="background:#ffffff;">.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 6pt 0pt;">Emerging Growth Company</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;">We are an “emerging growth company,” as defined in the Jumpstart Our Business Startups Act of 2012 (the “JOBS Act”). As such, we are eligible for exemptions from various reporting requirements applicable to other public companies that are not emerging growth companies, including, but not limited to, presenting only two years of audited financial statements, not being required to comply with the auditor attestation requirements of Section 404 of the Sarbanes-Oxley Act of 2002, reduced disclosure obligations regarding executive compensation, and an exemption from the requirements to obtain a non-binding advisory vote on executive compensation or golden parachute arrangements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">In addition, an emerging growth company can take advantage of an extended transition period for complying with new or revised accounting standards. This provision allows an emerging growth company to delay the adoption of certain accounting standards until those standards would otherwise apply to private companies. We have elected to avail ourselves of this provision of the JOBS Act. As a result, we will not be subject to new or revised accounting standards at the same time as other public companies that are not emerging growth companies. Therefore, our condensed consolidated financial statements may not be comparable to those of companies that comply with new or revised accounting pronouncements as of public company effective dates.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Use of Estimates</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The preparation of these condensed consolidated financial statements 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 revenue and expenses during the reporting period. Actual results could differ from these estimates.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Fair Value Measurements</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company follows the guidance of Accounting Standards Codification (“ASC”) Topic 820, <i style="font-style:italic;">Fair Value Measurements and Disclosures,</i> which defines fair value, establishes a framework for measuring fair value and expands disclosures about fair value measurements. This guidance also establishes the following three-level hierarchy based upon the transparency of inputs to the valuation of an asset or liability on the measurement date:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 54pt;">Level 1: Observable inputs that reflect unadjusted quoted prices for identical assets or liabilities traded in active markets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 54pt;">Level 2: Inputs other than quoted prices included within Level 1 that are observable for the asset or liability, either directly or indirectly, for substantially the full term of the asset or liability.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 54pt;">Level 3: Unobservable inputs that reflect assumptions about what market participants would use in pricing assets or liabilities based on the best information available.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company’s financial instruments consist principally of cash, accounts receivable, prepaid expenses, other current assets, accounts payable, accrued liabilities, income tax payable and debt. The carrying amounts of certain of these financial instruments, including cash, accounts receivable, prepaid expenses, other current assets, accounts payable, accrued liabilities and income tax payable approximate their current fair value due to the relatively short-term nature of these accounts.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">The following table presents our fair value hierarchy for those assets and liabilities measured at fair value on a recurring basis:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:27.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:27.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Carrying </b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:20.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Fair Value</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Carrying </b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:20.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 3</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Assets:</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Interest rate swaps (Note 6)</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,303</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,303</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,985</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,985</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Liabilities:</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Interest rate swaps (Note 6)</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">There were no transfers of assets or liabilities between levels during the nine months ended September 30, 2023 and 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">There have not been material changes in the fair value of debt (Level 2), as compared to the carrying value, as of September 30, 2023 and December 31, 2022<span style="background:#ffffff;">.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Revenue Recognition</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">The Company derives revenue primarily from the sale of physical products. The Company recognizes revenue when a contract exists with a customer that specifies the goods and services to be provided at an agreed upon sales price and when the performance obligation is satisfied by transferring the goods or service to the customer. The performance obligation is considered satisfied when control transfers, which is generally determined when products are shipped or delivered to the customer but could be delayed until the receipt </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">of customer acceptance, depending on the terms of the contract. Sales are made on normal and customary short-term credit terms or upon delivery for point of sale transactions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company enters into contractual arrangements primarily with customers in the form of individual customer orders which specify the goods, quantity, pricing, and associated order terms. The Company has some long-term contracts that may contain research and development performance obligations that are satisfied over time. The Company invoices the customer once the billing milestone is reached and collects under customary short-term credit terms. For long-term contracts, the Company recognizes revenue using the input method based on costs incurred, as this method is an appropriate measure of progress toward the complete satisfaction of the performance obligation. Due to uncertainties inherent in the estimation process, it is possible that estimates of costs to complete a performance obligation will be revised in the near-term. For those performance obligations for which revenue is recognized using a cost-to-cost input method, changes in total estimated costs, and related progress towards complete satisfaction of the performance obligation, are recognized on a cumulative catch-up basis in the period in which the revisions to the estimates are made. When the current estimate of total costs for a performance obligation indicates a loss, a provision for the entire estimated loss on the unsatisfied performance obligation is made in the period in which the loss becomes evident. Revenue related to contracts recognized over time do not represent a material portion of the Company’s overall revenue.  </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">At the time of revenue recognition, the Company also provides for estimated sales returns and miscellaneous claims from customers as reductions to revenues. The estimates are based on historical rates of product returns and claims. The Company accrues for such estimated returns and claims with an estimated accrual and associated reduction of revenue. Additionally, the Company records inventory that it expects to be returned as part of inventories, with a corresponding reduction to cost of goods sold.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Charges for shipping and handling fees billed to customers are included in net sales and the corresponding shipping and handling expenses are included in cost of goods sold in the accompanying condensed consolidated statements of operations and comprehensive income. We consider our costs related to shipping and handling after control over a product has transferred to a customer to be a cost of fulfilling the promise to transfer the product to the customer.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Sales commissions paid to employees as compensation are expensed as incurred for contracts with service periods less than a year. For contracts with service periods greater than a year, these costs have historically been immaterial and are capitalized and amortized over the life of the contract. Commission costs are recorded in selling, general and administrative expenses in the Company’s condensed consolidated statements of operations and comprehensive income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Product Warranty</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Some of the Company’s manufactured products carry limited warranty provisions for defects in quality and workmanship. A warranty reserve is established at the time of sale to cover estimated costs based on the Company’s history of warranty repairs and replacements, and is recorded in cost of goods sold in the Company’s condensed consolidated statements of operations and comprehensive income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The following table sets forth the changes in the Company’s accrued warranties, which is recorded in accrued liabilities in the condensed consolidated balance sheets:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Beginning accrued warranty expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,567</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,427</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,256</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Current period claims</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (451)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (311)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (802)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (398)</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Provision for current period sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 590</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 81</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,274</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 339</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Ending accrued warranty expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,706</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,197</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,706</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,197</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Net Income (Loss) per Share</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Basic income or loss per share is computed by dividing net income (loss) by the weighted average number of common shares outstanding during the periods presented. <span style="background:#ffffff;">Diluted income or loss per share is calculated by adjusting weighted average shares outstanding for the dilutive effect of potential common shares, determined using the treasury-stock method.</span> The calculation of weighted average shares outstanding and net income (loss) per share are as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income (loss)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,053</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,941</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 29,047</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (779)</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average shares outstanding - basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,586,031</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,289,880</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,515,976</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 35,697,891</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Effect of dilutive securities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Stock-based awards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 344,857</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 457,734</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 314,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average shares outstanding - diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,930,888</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,747,614</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,830,790</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 35,697,891</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income (loss) per share:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.29</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.13</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (0.02)</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.29</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.13</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (0.02)</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">For the nine months ended September 30, 2022, 7,363 restricted stock awards were excluded from diluted weighted average shares outstanding because the impact would be anti-dilutive due to a net loss in the period. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Recent Accounting Pronouncements</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Recently Adopted Accounting Pronouncements</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">In June 2016, the FASB issued ASU 2016-13, <i style="font-style:italic;">Financial Instruments — Credit Losses (Topic 326)</i>: <i style="font-style:italic;">Measurement of Credit Losses on Financial Instruments. </i>ASU 2016-13 includes an impairment model (known as the current expected credit loss model) that is based on expected losses rather than incurred losses. Under the new guidance, an entity recognizes as an allowance its estimate of expected credit losses, which the FASB believes will result in more timely recognition of such losses. The use of forecasted information is intended to incorporate more timely information in the estimate of expected credit loss. In November 2019, the FASB issued additional guidance which extends the effective date of ASU 2016-13 for emerging growth companies to begin in fiscal years beginning after December 15, 2022. The Company adopted this standard on January 1, 2023. T<span style="background:#ffffff;">he adoption of this ASU did not have a material impact on our </span>condensed <span style="background:#ffffff;">consolidated financial statements and disclosures</span>.   </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">In March 2020, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update (“ASU”) 2020-04, Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting and related amendments. This ASU provides temporary optional expedients and exceptions to existing guidance on contract modifications and hedge accounting to facilitate the market transition from existing reference rates, such as the London Inter-Bank Offered Rate (“LIBOR”) which began to be phased out in 2021, to alternate reference rates, such as the Secured Overnight Financing Rate (“SOFR”). On May 31, 2023, we amended our 2021 credit agreement and interest rate swap agreements to affect the transition from LIBOR to SOFR. <span style="background:#ffffff;">In connection with these amendments, the Company adopted ASU 2020-04 in the second quarter of 2023. In doing so, the Company elected to adopt the suite of optional expedients when analyzing the amendment to the credit agreement and related interest swaps.  As such, the amendments to the Company’s 2021 credit agreement and swap agreements, and the adoption of this ASU did not have a material impact on our </span>condensed <span style="background:#ffffff;">consolidated financial statements and disclosures</span>.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 6pt 0pt;">Nature of Operations and Basis of Presentation</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;">Cadre Holdings, Inc., D/B/A The Safariland Group (the “Company”, “Cadre”, “we”, “us”, and “our”), a Delaware corporation, began operations on April 12, 2012. The Company, headquartered in Jacksonville, Florida, is a global leader in manufacturing and distributing safety and survivability products and other related products for the law enforcement, first responder and military markets. The business operates through 16 manufacturing plants within the U.S., Mexico, Canada, the United Kingdom, Italy, France, and Lithuania, and sells its products worldwide through its direct sales force, distribution channel and distribution partners, online stores, and third-party resellers.</p> 16 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 6pt 0pt;">Principles of Consolidation</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;">The accompanying condensed consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP" or “U.S. GAAP”) and applicable rules and regulations of the Securities and Exchange Commission (“SEC”) regarding interim financial reporting, and include the accounts of the Company, its wholly owned subsidiaries, and other entities consolidated as required by GAAP. Accordingly, they do not include all of the information and footnotes required by GAAP for annual audited financial statements. The unaudited condensed consolidated interim financial statements have been prepared on a basis consistent with the audited consolidated financial statements and include all adjustments, which are normal and recurring in nature, necessary for fair financial statement presentation. These condensed consolidated interim financial statements and notes thereto should be read in conjunction with the Company’s most recently completed annual consolidated financial statements. All adjustments considered necessary for a fair presentation have been included. All intercompany balances and transactions have been eliminated in consolidation.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 6pt 0pt;"><span style="font-style:italic;font-weight:bold;background:#ffffff;">Secondary Offering</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;"><span style="background:#ffffff;">On June 9, 2022, the Company completed a secondary offering in which the Company issued and sold </span><span style="background:#ffffff;">2,250,000</span><span style="background:#ffffff;"> shares of common stock at a price of </span><span style="background:#ffffff;">$23.50</span><span style="background:#ffffff;"> per share. The Company’s net proceeds from the sale of shares were </span><span style="background:#ffffff;">$46,988</span><span style="background:#ffffff;"> after underwriter discounts and commissions, fees and expenses of </span><span style="background:#ffffff;">$2,715</span><span style="background:#ffffff;">, of which </span><span style="background:#ffffff;">$2,000</span><span style="background:#ffffff;"> was paid to Kanders &amp; Company, Inc., a company controlled by Warren Kanders, our Chief Executive Officer</span>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;"><span style="background:#ffffff;">On July 14, 2022, the underwriters exercised a portion of their over-allotment option and purchased an additional </span><span style="background:#ffffff;">300,000</span><span style="background:#ffffff;"> shares of common stock at a price of </span><span style="background:#ffffff;">$23.50</span><span style="background:#ffffff;"> per share, resulting in net proceeds to the Company of </span><span style="background:#ffffff;">$6,627</span><span style="background:#ffffff;"> after underwriter discounts and commissions, fees and expenses of </span><span style="background:#ffffff;">$423</span><span style="background:#ffffff;">.</span></p> 2250000 23.50 46988000 2715000 2000000 300000 23.50 6627000 423000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 6pt 0pt;">Emerging Growth Company</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;">We are an “emerging growth company,” as defined in the Jumpstart Our Business Startups Act of 2012 (the “JOBS Act”). As such, we are eligible for exemptions from various reporting requirements applicable to other public companies that are not emerging growth companies, including, but not limited to, presenting only two years of audited financial statements, not being required to comply with the auditor attestation requirements of Section 404 of the Sarbanes-Oxley Act of 2002, reduced disclosure obligations regarding executive compensation, and an exemption from the requirements to obtain a non-binding advisory vote on executive compensation or golden parachute arrangements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">In addition, an emerging growth company can take advantage of an extended transition period for complying with new or revised accounting standards. This provision allows an emerging growth company to delay the adoption of certain accounting standards until those standards would otherwise apply to private companies. We have elected to avail ourselves of this provision of the JOBS Act. As a result, we will not be subject to new or revised accounting standards at the same time as other public companies that are not emerging growth companies. Therefore, our condensed consolidated financial statements may not be comparable to those of companies that comply with new or revised accounting pronouncements as of public company effective dates.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Use of Estimates</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The preparation of these condensed consolidated financial statements 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 revenue and expenses during the reporting period. Actual results could differ from these estimates.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 12pt 0pt;">Fair Value Measurements</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company follows the guidance of Accounting Standards Codification (“ASC”) Topic 820, <i style="font-style:italic;">Fair Value Measurements and Disclosures,</i> which defines fair value, establishes a framework for measuring fair value and expands disclosures about fair value measurements. This guidance also establishes the following three-level hierarchy based upon the transparency of inputs to the valuation of an asset or liability on the measurement date:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 54pt;">Level 1: Observable inputs that reflect unadjusted quoted prices for identical assets or liabilities traded in active markets.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 54pt;">Level 2: Inputs other than quoted prices included within Level 1 that are observable for the asset or liability, either directly or indirectly, for substantially the full term of the asset or liability.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 54pt;">Level 3: Unobservable inputs that reflect assumptions about what market participants would use in pricing assets or liabilities based on the best information available.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company’s financial instruments consist principally of cash, accounts receivable, prepaid expenses, other current assets, accounts payable, accrued liabilities, income tax payable and debt. The carrying amounts of certain of these financial instruments, including cash, accounts receivable, prepaid expenses, other current assets, accounts payable, accrued liabilities and income tax payable approximate their current fair value due to the relatively short-term nature of these accounts.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">The following table presents our fair value hierarchy for those assets and liabilities measured at fair value on a recurring basis:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:27.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:27.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Carrying </b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:20.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Fair Value</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Carrying </b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:20.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 3</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Assets:</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Interest rate swaps (Note 6)</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,303</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,303</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,985</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,985</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Liabilities:</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Interest rate swaps (Note 6)</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">There were no transfers of assets or liabilities between levels during the nine months ended September 30, 2023 and 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">There have not been material changes in the fair value of debt (Level 2), as compared to the carrying value, as of September 30, 2023 and December 31, 2022<span style="background:#ffffff;">.</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:27.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:27.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Carrying </b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:20.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Fair Value</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Carrying </b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="8" style="vertical-align:bottom;white-space:nowrap;width:20.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 3</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:6.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amount</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 1</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 2</b></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Assets:</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Interest rate swaps (Note 6)</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,303</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,303</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,985</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,985</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Liabilities:</p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:41.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Interest rate swaps (Note 6)</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.4%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.92%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr></table> 9303000 9303000 8985000 8985000 0 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Revenue Recognition</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">The Company derives revenue primarily from the sale of physical products. The Company recognizes revenue when a contract exists with a customer that specifies the goods and services to be provided at an agreed upon sales price and when the performance obligation is satisfied by transferring the goods or service to the customer. The performance obligation is considered satisfied when control transfers, which is generally determined when products are shipped or delivered to the customer but could be delayed until the receipt </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">of customer acceptance, depending on the terms of the contract. Sales are made on normal and customary short-term credit terms or upon delivery for point of sale transactions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company enters into contractual arrangements primarily with customers in the form of individual customer orders which specify the goods, quantity, pricing, and associated order terms. The Company has some long-term contracts that may contain research and development performance obligations that are satisfied over time. The Company invoices the customer once the billing milestone is reached and collects under customary short-term credit terms. For long-term contracts, the Company recognizes revenue using the input method based on costs incurred, as this method is an appropriate measure of progress toward the complete satisfaction of the performance obligation. Due to uncertainties inherent in the estimation process, it is possible that estimates of costs to complete a performance obligation will be revised in the near-term. For those performance obligations for which revenue is recognized using a cost-to-cost input method, changes in total estimated costs, and related progress towards complete satisfaction of the performance obligation, are recognized on a cumulative catch-up basis in the period in which the revisions to the estimates are made. When the current estimate of total costs for a performance obligation indicates a loss, a provision for the entire estimated loss on the unsatisfied performance obligation is made in the period in which the loss becomes evident. Revenue related to contracts recognized over time do not represent a material portion of the Company’s overall revenue.  </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">At the time of revenue recognition, the Company also provides for estimated sales returns and miscellaneous claims from customers as reductions to revenues. The estimates are based on historical rates of product returns and claims. The Company accrues for such estimated returns and claims with an estimated accrual and associated reduction of revenue. Additionally, the Company records inventory that it expects to be returned as part of inventories, with a corresponding reduction to cost of goods sold.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Charges for shipping and handling fees billed to customers are included in net sales and the corresponding shipping and handling expenses are included in cost of goods sold in the accompanying condensed consolidated statements of operations and comprehensive income. We consider our costs related to shipping and handling after control over a product has transferred to a customer to be a cost of fulfilling the promise to transfer the product to the customer.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Sales commissions paid to employees as compensation are expensed as incurred for contracts with service periods less than a year. For contracts with service periods greater than a year, these costs have historically been immaterial and are capitalized and amortized over the life of the contract. Commission costs are recorded in selling, general and administrative expenses in the Company’s condensed consolidated statements of operations and comprehensive income.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Product Warranty</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Some of the Company’s manufactured products carry limited warranty provisions for defects in quality and workmanship. A warranty reserve is established at the time of sale to cover estimated costs based on the Company’s history of warranty repairs and replacements, and is recorded in cost of goods sold in the Company’s condensed consolidated statements of operations and comprehensive income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The following table sets forth the changes in the Company’s accrued warranties, which is recorded in accrued liabilities in the condensed consolidated balance sheets:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Beginning accrued warranty expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,567</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,427</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,256</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Current period claims</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (451)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (311)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (802)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (398)</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Provision for current period sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 590</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 81</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,274</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 339</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Ending accrued warranty expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,706</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,197</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,706</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,197</p></td></tr></table> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Beginning accrued warranty expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,567</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,427</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,256</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Current period claims</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (451)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (311)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (802)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (398)</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Provision for current period sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 590</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 81</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,274</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 339</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Ending accrued warranty expense</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,706</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,197</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,706</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,197</p></td></tr></table> 1567000 1427000 1234000 1256000 451000 311000 802000 398000 590000 81000 1274000 339000 1706000 1197000 1706000 1197000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Net Income (Loss) per Share</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Basic income or loss per share is computed by dividing net income (loss) by the weighted average number of common shares outstanding during the periods presented. <span style="background:#ffffff;">Diluted income or loss per share is calculated by adjusting weighted average shares outstanding for the dilutive effect of potential common shares, determined using the treasury-stock method.</span> The calculation of weighted average shares outstanding and net income (loss) per share are as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income (loss)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,053</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,941</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 29,047</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (779)</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average shares outstanding - basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,586,031</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,289,880</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,515,976</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 35,697,891</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Effect of dilutive securities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Stock-based awards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 344,857</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 457,734</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 314,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average shares outstanding - diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,930,888</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,747,614</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,830,790</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 35,697,891</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income (loss) per share:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.29</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.13</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (0.02)</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.29</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.13</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (0.02)</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">For the nine months ended September 30, 2022, 7,363 restricted stock awards were excluded from diluted weighted average shares outstanding because the impact would be anti-dilutive due to a net loss in the period. </p> <table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.25%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.73%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.71%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.61%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income (loss)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,053</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,941</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 29,047</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (779)</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average shares outstanding - basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,586,031</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,289,880</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,515,976</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 35,697,891</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Effect of dilutive securities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Stock-based awards</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 344,857</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 457,734</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 314,814</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average shares outstanding - diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,930,888</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,747,614</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 37,830,790</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 35,697,891</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net income (loss) per share:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Basic</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.29</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.13</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (0.02)</p></td></tr><tr><td style="vertical-align:bottom;width:50.11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Diluted</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.29</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.13</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.77</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.03%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.25%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (0.02)</p></td></tr></table> 11053000 4941000 29047000 -779000 37586031 37289880 37515976 35697891 344857 457734 314814 37930888 37747614 37830790 35697891 0.29 0.13 0.77 -0.02 0.29 0.13 0.77 -0.02 7363 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;text-align:justify;margin:0pt 0pt 12pt 0pt;">Recent Accounting Pronouncements</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Recently Adopted Accounting Pronouncements</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">In June 2016, the FASB issued ASU 2016-13, <i style="font-style:italic;">Financial Instruments — Credit Losses (Topic 326)</i>: <i style="font-style:italic;">Measurement of Credit Losses on Financial Instruments. </i>ASU 2016-13 includes an impairment model (known as the current expected credit loss model) that is based on expected losses rather than incurred losses. Under the new guidance, an entity recognizes as an allowance its estimate of expected credit losses, which the FASB believes will result in more timely recognition of such losses. The use of forecasted information is intended to incorporate more timely information in the estimate of expected credit loss. In November 2019, the FASB issued additional guidance which extends the effective date of ASU 2016-13 for emerging growth companies to begin in fiscal years beginning after December 15, 2022. The Company adopted this standard on January 1, 2023. T<span style="background:#ffffff;">he adoption of this ASU did not have a material impact on our </span>condensed <span style="background:#ffffff;">consolidated financial statements and disclosures</span>.   </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">In March 2020, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update (“ASU”) 2020-04, Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting and related amendments. This ASU provides temporary optional expedients and exceptions to existing guidance on contract modifications and hedge accounting to facilitate the market transition from existing reference rates, such as the London Inter-Bank Offered Rate (“LIBOR”) which began to be phased out in 2021, to alternate reference rates, such as the Secured Overnight Financing Rate (“SOFR”). On May 31, 2023, we amended our 2021 credit agreement and interest rate swap agreements to affect the transition from LIBOR to SOFR. <span style="background:#ffffff;">In connection with these amendments, the Company adopted ASU 2020-04 in the second quarter of 2023. In doing so, the Company elected to adopt the suite of optional expedients when analyzing the amendment to the credit agreement and related interest swaps.  As such, the amendments to the Company’s 2021 credit agreement and swap agreements, and the adoption of this ASU did not have a material impact on our </span>condensed <span style="background:#ffffff;">consolidated financial statements and disclosures</span>.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">2.    ACQUISITIONS</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;">Radar Acquisition</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">On January 11, 2022, Safariland, LLC, a wholly-owned subsidiary of the Company, completed the acquisition of <span style="background:#ffffff;">Radar Leather Division S.r.l.</span> (“Radar”), a premier family-owned duty gear business based in Italy that specializes in the production of high-quality holsters, belts, duty belts, and other accessories. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">The acquisition was accounted for as a business combination. Total acquisition-related costs for the acquisition of Radar were </span><span style="background:#ffffff;">$627</span><span style="background:#ffffff;">, of which </span><span style="background:#ffffff;">$204</span><span style="background:#ffffff;"> was incurred and recognized during 2022.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 10pt 0pt;">Total consideration, net of cash acquired, was $19,365 for 100% of the equity interests in Radar. The total consideration was as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cash paid</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20,844</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: cash acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,479)</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total consideration, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 19,365</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;background:#ffffff;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">The following table summarizes the total purchase price consideration and the amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. The excess of purchase consideration over the assets acquired and liabilities assumed is recorded as goodwill. Goodwill for the Radar acquisition is included in the Product segment and reflects synergies and additional legacy growth and profitability expected from this acquisition through expansion into new markets and customers.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total consideration, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 19,365</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,347</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventories</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,874</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Prepaid expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 682</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 665</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Property and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,053</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,200</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,101</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total assets acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 25,922</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts payable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,120</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred tax liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,787</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,106</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 544</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total liabilities assumed</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,557</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net assets acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 19,365</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;background:#ffffff;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;background:#ffffff;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">In connection with the acquisition, the Company acquired exclusive rights to Radar’s trademarks, customer relationships, and product technologies. The amounts assigned to each class of intangible asset and the related average useful lives are as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:10.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,300</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">15</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Technology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 600</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">10</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trademarks</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 300</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">7</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,200</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;background:#ffffff;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;"><span style="background:#ffffff;">The full amount of goodwill of </span><span style="background:#ffffff;">$7,101</span><span style="background:#ffffff;"> is expected to be non-deductible for tax purposes. No pre-existing relationships existed between the Company and Radar prior to the acquisition. Radar revenue and cost of goods sold are included in the Product segment from the date of acquisition. The acquisition was not material to our </span>condensed <span style="background:#ffffff;">consolidated financial statements and consequently we have not included any pro-forma information.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 6pt 0pt;"><i style="font-style:italic;background:#ffffff;">Cyalume Acquisition</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;">On May 4, 2022, Safariland, LLC, a wholly-owned subsidiary of the Company, completed the acquisition of <span style="background:#ffffff;">Cyalume Technologies, Inc, CT SAS Holdings, Inc. and Cyalume Technologies SAS (collectively “Cyalume”)</span>. Cyalume is <span style="background:#ffffff;">engaged in the design and manufacture of proprietary chemical illumination solutions for a diverse range of products, including light sticks, infrared products, safety markings and non-pyrophoric training ammunition</span>. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 6pt 0pt;"><span style="background:#ffffff;">The acquisition was accounted for as a business combination. Acquisition-related costs for the acquisition of Cyalume were </span>$3,546, all of which<span style="background:#ffffff;"> was incurred and recognized during 2022</span>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 10pt 0pt;">Total consideration, net of cash acquired, was $36,178 for 100% of the equity interests in Cyalume. The total consideration was as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cash paid</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 38,012</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: cash acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,834)</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total consideration, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 36,178</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;background:#ffffff;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">The following table summarizes the total purchase price consideration and the amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. Since December 31, 2022, we have decreased goodwill by </span><span style="background:#ffffff;">$393</span><span style="background:#ffffff;"> for changes in assumptions used to fair value property, equipment, and customer relationships, and deferred income taxes for certain book and tax basis differences as we complete the tax return filings for the pre-acquisition period. The excess of purchase consideration over the assets acquired and liabilities assumed is recorded as goodwill. Goodwill for the Cyalume acquisition is included in the Product segment and reflects synergies and additional legacy growth and profitability expected from this acquisition through expansion into new markets and customers.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total consideration, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 36,178</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,302</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventories</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,908</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Prepaid expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 255</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Property and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,492</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,100</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,708</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total assets acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,775</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts payable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,080</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred tax liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,652</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,577</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other long-term liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 288</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total liabilities assumed</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,597</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net assets acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 36,178</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;background:#ffffff;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">In connection with the acquisition, the Company acquired exclusive rights to Cyalume’s trademarks, customer relationships, and product technologies. The amounts assigned to each class of intangible asset and the related average useful lives are as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:10.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,700</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">15</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Technology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,600</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">10</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trademarks</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 800</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Indefinite</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,100</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;background:#ffffff;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">The full amount of goodwill of </span><span style="background:#ffffff;">$8,708</span> <span style="background:#ffffff;">is expected to be non-deductible for tax purposes. No pre-existing relationships existed between the Company and Cyalume prior to the acquisition. Cyalume revenue and cost of goods sold are included in the Product segment from the date of acquisition. The acquisition was not material to our </span>condensed <span style="background:#ffffff;">consolidated financial statements and consequently we have not included any pro-forma information.</span></p> 627000 204000 19365000 1 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cash paid</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20,844</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: cash acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,479)</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total consideration, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 19,365</p></td></tr></table> 20844000 1479000 19365000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total consideration, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 19,365</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,347</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventories</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,874</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Prepaid expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 682</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 665</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Property and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,053</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,200</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,101</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total assets acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 25,922</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts payable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,120</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred tax liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,787</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,106</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Long-term debt</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 544</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total liabilities assumed</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,557</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net assets acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 19,365</p></td></tr></table> 19365000 2347000 1874000 682000 665000 3053000 10200000 7101000 25922000 1120000 2787000 2106000 544000 6557000 19365000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:10.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,300</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">15</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Technology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 600</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">10</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trademarks</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 300</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">7</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,200</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr></table> 9300000 P15Y 600000 P10Y 300000 P7Y 10200000 7101000 3546000 36178000 1 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cash paid</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 38,012</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: cash acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,834)</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total consideration, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 36,178</p></td></tr></table> 38012000 1834000 36178000 -393000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total consideration, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 36,178</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts receivable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,302</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Inventories</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,908</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Prepaid expenses</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 255</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Property and equipment</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,492</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Intangible assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,100</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Goodwill</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,708</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total assets acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,775</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accounts payable</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,080</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Deferred tax liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,652</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,577</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other long-term liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 288</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total liabilities assumed</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,597</p></td></tr><tr><td style="vertical-align:bottom;width:85.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net assets acquired</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.55%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 36,178</p></td></tr></table> 36178000 3302000 10908000 255000 10000 12492000 8100000 8708000 43775000 1080000 4652000 1577000 288000 7597000 36178000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;width:10.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,700</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">15</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Technology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,600</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">10</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Trademarks</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 800</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Indefinite</p></td></tr><tr><td style="vertical-align:bottom;width:74.38%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,100</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td></tr></table> 3700000 P15Y 3600000 P10Y 800000 8100000 8708000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">3.    REVENUE RECOGNITION</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The following tables disaggregate net sales by channel and geography:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">U.S. state and local agencies (a)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 75,584</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 64,359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 212,965</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 188,724</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Commercial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,525</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,211</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 30,834</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 33,572</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">U.S. federal agencies</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,355</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 16,652</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 42,484</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 34,014</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">International</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 25,821</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,264</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 69,194</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 74,789</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 829</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,068</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,472</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,093</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 125,114</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 111,554</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 357,949</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 334,192</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">(a) Includes all Distribution sales</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 99,293</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 93,290</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 288,755</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 259,403</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">International</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 25,821</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,264</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 69,194</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74,789</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 125,114</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 111,554</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 357,949</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 334,192</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Contract Liabilities</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Contract liabilities are recorded as a component of other liabilities when customers remit cash payments in advance of the Company satisfying performance obligations. Contract liabilities are reversed into revenue when the performance obligation is satisfied. Contract liabilities are included in accrued liabilities in the Company’s condensed consolidated balance sheets and totaled $3,893 and $4,615 as of September 30, 2023 and December 31, 2022, respectively. Revenue recognized during the three and nine months ended September 30, 2023 from amounts included in contract liabilities as of December 31, 2022 was $407 and $2,752, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Remaining Performance Obligations</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">As of September 30, 2023, we had $17,620 of remaining unfulfilled performance obligations, which included amounts that will be invoiced and recognized in future periods. The remaining performance obligations are limited only to arrangements that meet the definition of a contract under ASC Topic 606, <i style="font-style:italic;">Revenue from Contracts with Customers</i>, as of September 30, 2023. We expect to recognize approximately 58% of this balance over the next twelve months and expect the remainder to be recognized in the following two years.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:23.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.52%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">U.S. state and local agencies (a)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 75,584</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 64,359</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 212,965</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 188,724</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Commercial</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 9,525</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 11,211</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 30,834</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 33,572</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">U.S. federal agencies</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,355</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 16,652</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 42,484</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 34,014</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">International</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 25,821</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,264</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 69,194</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 74,789</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 829</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,068</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,472</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,093</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.36%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 125,114</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.23%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.17%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 111,554</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 357,949</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.13%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.28%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.98%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 334,192</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">(a) Includes all Distribution sales</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:29.12%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="5" style="vertical-align:bottom;white-space:nowrap;width:28.09%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.17%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.69%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">United States</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 99,293</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 93,290</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 288,755</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 259,403</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">International</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 25,821</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 18,264</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 69,194</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 74,789</p></td></tr><tr><td style="vertical-align:bottom;width:39.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.7%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.46%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 125,114</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.68%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.48%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 111,554</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 357,949</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.69%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.07%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 334,192</p></td></tr></table> 75584000 64359000 212965000 188724000 9525000 11211000 30834000 33572000 13355000 16652000 42484000 34014000 25821000 18264000 69194000 74789000 829000 1068000 2472000 3093000 125114000 111554000 357949000 334192000 99293000 93290000 288755000 259403000 25821000 18264000 69194000 74789000 125114000 111554000 357949000 334192000 3893000 4615000 407000 2752000 17620000 0.58 P12M P2Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">4.    INVENTORIES</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The following table sets forth a summary of inventories stated at lower of cost or net realizable value, as of September 30, 2023 and December 31, 2022:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:65.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Finished goods</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,701</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 25,208</p></td></tr><tr><td style="vertical-align:bottom;width:65.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Work-in-process</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,004</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,466</p></td></tr><tr><td style="vertical-align:bottom;width:65.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Raw materials and supplies</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.76%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 42,841</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37,599</p></td></tr><tr><td style="vertical-align:bottom;width:65.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.76%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 82,546</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 70,273</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:65.84%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:15.48%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:14.96%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Finished goods</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,701</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 25,208</p></td></tr><tr><td style="vertical-align:bottom;width:65.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Work-in-process</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,004</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,466</p></td></tr><tr><td style="vertical-align:bottom;width:65.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Raw materials and supplies</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.76%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 42,841</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 37,599</p></td></tr><tr><td style="vertical-align:bottom;width:65.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.72%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.76%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 82,546</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.29%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 70,273</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p> 30701000 25208000 9004000 7466000 42841000 37599000 82546000 70273000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">5.    GOODWILL AND OTHER INTANGIBLE ASSETS</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Goodwill</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The following table summarizes the changes in goodwill for the three and nine months ended September 30, 2023:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Product</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance, December 31, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 78,960</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,616</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 81,576</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Measurement period adjustments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (593)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (593)</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign currency translation adjustments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 309</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 309</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance, March 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 78,676</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,616</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 81,292</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Measurement period adjustments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 200</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 200</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign currency translation adjustments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 68</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 68</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance, June 30, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 78,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,616</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 81,560</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign currency translation adjustments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (348)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (348)</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance, September 30, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 78,596</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,616</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 81,212</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Gross goodwill and accumulated impairment losses was $88,797 and $7,585, respectively, as of September 30, 2023 and $89,161 and $7,585, respectively, as of December 31, 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Intangible Assets</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Intangible assets such as certain customer relationships and patents on core technologies and product technologies are amortizable over their estimated useful lives. Certain trade names and trademarks which provide exclusive and perpetual rights to manufacture and sell their respective products are deemed indefinite-lived and are therefore not subject to amortization.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Intangible assets consisted of the following as of September 30, 2023 and December 31, 2022:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="10" style="vertical-align:bottom;white-space:nowrap;width:41.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted </b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Accumulated </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average </b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Definite lived intangibles:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 85,680</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (64,337)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,343</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">11</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Technology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,974</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (11,793)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,181</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">8</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Tradenames</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,513</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (5,126)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,387</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 980</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (980)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 109,147</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (82,236)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Indefinite lived intangibles:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Tradenames</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,422</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,422</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Indefinite</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 24pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 126,569</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (82,236)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 44,333</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:9pt;margin-bottom:12pt;visibility:hidden;background:#ffff00;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="10" style="vertical-align:bottom;white-space:nowrap;width:41.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted </b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Accumulated </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average </b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Definite lived intangibles:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 85,847</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (59,122)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,725</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">11</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Technology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,629</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (11,309)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,320</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">8</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Tradenames</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,484</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4,254)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,230</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 973</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (973)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 108,933</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (75,658)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 33,275</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Indefinite lived intangibles:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Tradenames</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Indefinite</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 24pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 126,353</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (75,658)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 50,695</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:1pt;margin-bottom:12pt;visibility:hidden;background:#ffff00;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;background:#ffff00;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company recorded amortization expense of $2,155 and $2,274 for the three months ended September 30, 2023 and 2022, respectively, of which $55 and $134 was included in cost of goods sold in the condensed consolidated statements of operations and comprehensive income for the respective periods. Amortization expense for the nine months ended September 30, 2023 and 2022 was $6,308 and $6,671, respectively, of which $372 and $314 was included in cost of goods sold in the condensed consolidated statements of operations and comprehensive income for the respective periods.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The estimated amortization expense for definite-lived intangible assets for the remaining three months of 2023, the next four years and thereafter is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Remainder of 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,477</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,013</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,053</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,656</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,479</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,233</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,911</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Product</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance, December 31, 2022</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 78,960</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,616</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 81,576</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Measurement period adjustments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (593)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (593)</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign currency translation adjustments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 309</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 309</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance, March 31, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 78,676</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,616</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 81,292</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Measurement period adjustments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 200</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 200</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign currency translation adjustments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 68</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 68</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance, June 30, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 78,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,616</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 81,560</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Foreign currency translation adjustments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (348)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (348)</p></td></tr><tr><td style="vertical-align:bottom;width:65.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Balance, September 30, 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.93%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 78,596</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.26%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.41%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,616</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.94%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.18%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 81,212</p></td></tr></table> 78960000 2616000 81576000 -593000 -593000 309000 309000 78676000 2616000 81292000 200000 200000 68000 68000 78944000 2616000 81560000 -348000 -348000 78596000 2616000 81212000 88797000 7585000 89161000 7585000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="10" style="vertical-align:bottom;white-space:nowrap;width:41.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted </b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Accumulated </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average </b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Definite lived intangibles:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 85,680</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (64,337)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 21,343</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">11</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Technology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,974</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (11,793)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,181</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">8</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Tradenames</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,513</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (5,126)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,387</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 980</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:9pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (980)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 109,147</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (82,236)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Indefinite lived intangibles:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Tradenames</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,422</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,422</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Indefinite</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 24pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 126,569</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (82,236)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 44,333</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:9pt;margin-bottom:12pt;visibility:hidden;background:#ffff00;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="10" style="vertical-align:bottom;white-space:nowrap;width:41.66%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Weighted </b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Accumulated </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Average </b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Amortization</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Net</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Definite lived intangibles:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Customer relationships</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 85,847</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (59,122)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,725</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">11</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Technology</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,629</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (11,309)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,320</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">8</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Tradenames</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,484</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (4,254)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,230</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Non-compete agreements</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 973</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (973)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 108,933</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (75,658)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 33,275</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Indefinite lived intangibles:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Tradenames</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Indefinite</p></td></tr><tr><td style="vertical-align:bottom;width:56.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 24pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.65%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:0.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 126,353</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.76%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (75,658)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 50,695</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr></table> 85680000 64337000 21343000 P11Y 15974000 11793000 4181000 P8Y 6513000 5126000 1387000 P4Y 980000 980000 P4Y 109147000 82236000 26911000 17422000 17422000 126569000 82236000 44333000 85847000 59122000 26725000 P11Y 15629000 11309000 4320000 P8Y 6484000 4254000 2230000 P4Y 973000 973000 P4Y 108933000 75658000 33275000 17420000 17420000 126353000 75658000 50695000 2155000 2274000 55000 134000 6308000 6671000 372000 314000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Remainder of 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,477</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,013</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,053</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,656</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,479</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,233</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,911</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> 1477000 5013000 3053000 2656000 2479000 12233000 26911000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">6.    DEBT</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company’s debt is as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Short-term debt:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 18pt;">Insurance premium financing</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,251</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,211</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 18pt;">Current portion of term loan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,000</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,251</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,211</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Long-term debt:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 18pt;">Revolver</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 18pt;">Term loan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 131,064</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 138,564</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 18pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 509</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 512</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 131,573</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 139,076</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Unamortized debt discount and debt issuance costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,264)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,600)</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total long-term debt, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 130,309</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 137,476</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The following summarizes the aggregate principal payments of our long-term debt, excluding debt discount and debt issuance costs, for the remaining three months of 2023, the next four years and thereafter:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Remainder of 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,500</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,127</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,127</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 118,691</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 128</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total principal payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 141,573</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">2021 Credit Facility</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">On August 20, 2021 (the “Closing Date”), the Company refinanced its existing credit facilities and entered into a new credit agreement whereby Safariland, LLC, as borrower (the “Borrower”), the Company and certain domestic subsidiaries of the Borrower, as guarantors (the “Guarantors”), closed on and received funding under a credit agreement (initially entered into on July 23, 2021), pursuant to a First Amendment to Credit Agreement (collectively, the “2021 Credit Agreement”) with PNC Bank, National Association (“PNC”), as administrative agent, and the several lenders from time to time party thereto (together with PNC, the “Lenders”) pursuant to which the Borrower (i) borrowed $200,000 under a term loan (the “Term Loan”), and (ii) may borrow up to $100,000 under a revolving credit facility (including up to $15,000 for letters of credit and up to $10,000 for swing line loans) (the “Revolving Loan”). Each of the Term Loan and the Revolving Loan mature on July 23, 2026. Commencing December 31, 2021, the Term Loan requires scheduled quarterly payments in amounts equal to 1.25% per quarter of the original aggregate principal amount of the Term Loan, with the balance due at maturity. The 2021 Credit Agreement is guaranteed, jointly and severally, by the Guarantors and, subject to certain exceptions, secured by a first-priority security interest in substantially all of the assets of the Borrower and the Guarantors pursuant to a Security and Pledge Agreement and a Guaranty and Suretyship Agreement, each dated as of the Closing Date. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">There were no amounts outstanding under the Revolving Loan as of September 30, 2023 and December 31, 2022. As of September 30, 2023, there were $2,613 in outstanding letters of credit and $97,387 of availability. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">The Borrower may elect to have the Revolving Loan and Term Loan under the 2021 Credit Agreement bear interest at a base rate or LIBOR, in each case, plus an applicable margin. However, in connection with the market transition away from applicable LIBOR rates to SOFR, on May 31, 2023, the Company, the Borrowers and the Lenders entered into the third amendment to the 2021 Credit Agreement (the “Third Amendment”) pursuant to which the 2021 Credit Agreement was amended to implement the SOFR rates. The applicable margin for these borrowings ranges from 0.50% to 1.50% per annum, in the case of base rate borrowings, and 1.60% to 2.60% per annum, in the case of SOFR (and prior to May 31, 2023, on LIBOR) borrowings, in each case based upon the level of the Company’s consolidated total net leverage ratio. The 2021 Credit Agreement also requires the Borrower to pay a commitment fee on the unused portion of the loan commitments. Such commitment fee ranges between 0.175% and 0.25% per annum, and is also based upon the level of the Company’s consolidated total net leverage ratio. The 2021 Credit Agreement also contains customary representations and warranties, and affirmative and negative covenants, including limitations on additional indebtedness, dividends, and other distributions, entry into new lines of business, use of loan proceeds, capital expenditures, restricted payments, restrictions on liens on the assets of the Borrowers or any Guarantor, transactions with affiliates, amendments to organizational documents, accounting changes, sale and leaseback transactions, dispositions, and mandatory prepayments in connection with certain liquidity events. The 2021 Credit Agreement contains certain restrictive debt covenants, which require us to: (i) maintain a minimum fixed charge coverage ratio of 1.25 to 1.00, starting with the quarter ended December 31, 2021, which is to be determined for each quarter end on a trailing four quarter basis and (ii) maintain a quarterly maximum consolidated total net leverage ratio of 3.75 to 1.00 from the quarter ended December 31, 2022 until the quarter ended September 30, 2023, and thereafter 3.50 to 1.00, which is in each case to be determined on a trailing four quarter basis; provided that under certain circumstances and subject to certain limitations, in the event of a material acquisition, we may temporarily increase the consolidated total net leverage ratio by up to 0.50 to 1.00 for four fiscal quarters following such acquisition. The 2021 Credit Agreement contains customary events of default that include, among others, non-payment of principal, interest or fees, violation of covenants, inaccuracy of representations and warranties, failure to make payment on, or defaults with respect to, certain other material </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">indebtedness, bankruptcy and insolvency events, material judgments and change of control provisions. Upon the occurrence of an event of default, and after the expiration of any applicable grace period, payment of any outstanding loans under the 2021 Credit Agreement may be accelerated and the Lenders could foreclose on their security interests in the assets of the Borrowers and the Guarantors.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Canadian Credit Facility</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">On October 14, 2021, Med-Eng Holdings ULC and Pacific Safety Products Inc., the Company’s Canadian subsidiaries, as borrowers (the “Canadian Borrowers”), and Safariland, LLC, as guarantor (the “Canadian Guarantor”), closed on a line of credit pursuant to a Loan Agreement (the “Canadian Loan Agreement”) and a Revolving Line of Credit Note (the “Note”) with PNC Bank Canada Branch (“PNC Canada”), as lender pursuant to which the Canadian Borrowers may borrow up to CDN$10,000 under a revolving line of credit (including up to $3,000 for letters of credit) (the “Revolving Canadian Loan”). The Revolving Canadian Loan matures on July 23, 2026. The Canadian Loan Agreement is guaranteed by the Canadian Guarantor pursuant to a Guaranty and Suretyship Agreement (the “Canadian Guaranty Agreement”).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Canadian Borrowers may elect to have borrowings either in United States dollars or Canadian dollars under the Canadian Loan Agreement, which will bear interest at a base rate or LIBOR, in each case, plus an applicable margin, in the case of borrowings in United States dollars, or at a Canadian Prime Rate (as announced from time to time by PNC Canada) or a Canadian deposit offered rate (“CDOR”) as determined from time to time by PNC Canada in accordance with the Canadian Loan Agreement. The applicable margin for these borrowings range from 0.50% to 1.50% per annum, in the case of base rate borrowings and Canadian Prime Rate borrowings, and 1.50% to 2.50% per annum, in the case of LIBOR borrowings and CDOR borrowings. The Canadian Loan Agreement also requires the Canadian Borrowers to pay (i) an unused line fee on the unused portion of the loan commitments in an amount ranging between 0.175% and 0.25% per annum, based upon the level of the Company’s consolidated total net leverage ratio, and (ii) an upfront fee equal to 0.25% of the principal amount of the Note.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">There were no amounts outstanding under the Revolving Canadian Loan as of September 30, 2023 and December 31, 2022.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Canadian Loan Agreement also contains customary representations and warranties, and affirmative and negative covenants, including, among others, limitations on additional indebtedness, entry into new lines of business, entry into guarantee agreements, making of any loans or advances to, or investments in, any other person, restrictions on liens on the assets of the Canadian Borrowers and mergers, transfers of assets and acquisitions. The Canadian Loan Agreement and Note also contain customary events of default that include, among others, non-payment of principal, interest or fees, violation of covenants, inaccuracy of representations and warranties, failure to make payment on, or defaults with respect to, certain other material indebtedness, bankruptcy and insolvency events, material judgments and change of control provisions.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">Upon the occurrence of an event of default, and after the expiration of any applicable grace period, payment of any outstanding loans under the Canadian Loan Agreement may be accelerated.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Interest Rate Swaps</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">We entered into interest rate swap agreements to hedge forecasted monthly interest rate payments on our floating rate debt. As of September 30, 2023, we had the following interest rate swap agreements (the “Swap Agreements”):</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Effective Date</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Notional Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Fixed Rate</b></p></td></tr><tr><td style="vertical-align:bottom;width:74.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">September 30, 2021 through July 23, 2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 100,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.812</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:74.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">May 31, 2023 through July 23, 2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 50,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3.905</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">On May 31, 2023, concurrent with the third amendment to the 2021 Credit Agreement, we amended our $100,000 notional amount swap agreement to reflect the change from LIBOR to SOFR. In addition, we entered into an additional $50,000 notional amount interest </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">rate swap to further mitigate our interest rate exposure on our floating rate debt. Under the terms of the Swap Agreements, we receive payments based on the 1-month SOFR (5.32% as of September 30, 2023).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">During the nine months ended September 30, 2023, there were no interest rate swap agreements that expired.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">We designated the Swap Agreements as cash flow hedges. A portion of the amount included in accumulated other comprehensive income is reclassified into interest expense, net as a yield adjustment as interest is either paid or received on the hedged debt. The fair value of our Swap Agreements is based upon Level 2 inputs. We have considered our own credit risk and the credit risk of the counterparties when determining the fair value of our Swap Agreements.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">It is our policy to execute such instruments with creditworthy banks and not to enter into derivative financial instruments for speculative purposes. We believe our interest rate swap counterparty will be able to fulfill their obligations under our agreements, and we believe we will have debt outstanding through the expiration date of the swap agreements such that the occurrence of future cash flow hedges remains probable.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The estimated fair value of our Swap Agreements in the condensed consolidated balance sheets was as follows:</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Balance Sheet Accounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="-sec-ix-hidden:Hidden_8Q-f1F1Sf0qOyOEcLMZP8g;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Other current assets</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,550</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,619</p></td></tr><tr><td style="vertical-align:bottom;width:72.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="-sec-ix-hidden:Hidden_grNBhet860-FHAaK6etMzg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Other assets</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,753</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,366</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">A cumulative gain, net of tax, of $6,755 and $6,739 as of September 30, 2023 and December 31, 2022, respectively, is recorded in accumulated other comprehensive income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The amount of gain, net of tax, recognized in other comprehensive (loss) income for the three months ended September 30, 2023 and 2022 was $1,131 and $2,350, respectively. There was a gain, net of tax, of $884 and $252 reclassified from accumulated other comprehensive income into earnings for the three months ended September 30, 2023 and 2022, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The amount of gain, net of tax, recognized in other comprehensive (loss) income for the nine months ended September 30, 2023 and 2022 was $2,281 and $6,414, respectively. There was a gain, net of tax, of $2,266 and $106 reclassified from accumulated other comprehensive income into earnings for the nine months ended September 30, 2023 and 2022, respectively.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">As of September 30, 2023, approximately $4,449 is expected to be reclassified from accumulated other comprehensive income into interest expense over the next 12 months.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Short-term debt:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 18pt;">Insurance premium financing</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,251</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,211</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 18pt;">Current portion of term loan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,000</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 13,251</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 12,211</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Long-term debt:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">  </p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 18pt;">Revolver</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 18pt;">Term loan</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 131,064</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 138,564</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 18pt;">Other</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 509</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 512</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 131,573</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 139,076</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Unamortized debt discount and debt issuance costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,264)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (1,600)</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total long-term debt, net</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 130,309</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 137,476</p></td></tr></table> 3251000 2211000 10000000 10000000 13251000 12211000 131064000 138564000 509000 512000 131573000 139076000 1264000 1600000 130309000 137476000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:80%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Remainder of 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2,500</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,127</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 10,127</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 118,691</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;background:#cceeff;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 128</p></td></tr><tr><td style="vertical-align:bottom;width:85.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total principal payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.55%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.56%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.54%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 141,573</p></td></tr></table> 2500000 10127000 10127000 118691000 128000 141573000 200000000 100000000 15000000 10000000 0.0125 0 0 2613000 97387000 0.0050 0.0150 0.0160 0.0260 0.00175 0.0025 1.25 3.75 3.50 0.50 10000000 3000000 0.0050 0.0150 0.0150 0.0250 0.00175 0.0025 0.0025 0 0 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:74.24%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:74.24%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Effective Date</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Notional Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.6%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Fixed Rate</b></p></td></tr><tr><td style="vertical-align:bottom;width:74.24%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">September 30, 2021 through July 23, 2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 100,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 0.812</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr><tr><td style="vertical-align:bottom;width:74.24%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">May 31, 2023 through July 23, 2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.57%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 50,000</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.08%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3.905</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.54%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">%</p></td></tr></table> 2021-09-30 2026-07-23 100000000 0.00812 2023-05-31 2026-07-23 50000000 0.03905 100000 50000 0.0532 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:72.67%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.44%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:72.67%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">Balance Sheet Accounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:72.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="-sec-ix-hidden:Hidden_8Q-f1F1Sf0qOyOEcLMZP8g;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Other current assets</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,550</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,619</p></td></tr><tr><td style="vertical-align:bottom;width:72.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="-sec-ix-hidden:Hidden_grNBhet860-FHAaK6etMzg;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Other assets</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,753</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5,366</p></td></tr></table> 4550000 3619000 4753000 5366000 6755000 6739000 1131000 2350000 884000 252000 2281000 6414000 2266000 106000 4449000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">7.    COMMITMENTS AND CONTINGENCIES</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Legal Proceedings</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="letter-spacing:0.2pt;">In September 2021, Safariland, LLC, a wholly-owned subsidiary of the Company, received a jury verdict awarding </span><span style="letter-spacing:0.2pt;">$7,500</span><span style="letter-spacing:0.2pt;"> </span><span style="background:#ffffff;">to a plaintiff relating to a personal injury case wherein the plaintiff alleged various product liability claims against Safariland, LLC. The plaintiff in the proceeding, Mr. David Hakim, instituted the proceeding on July 24, 2015, through the filing of a complaint with the United States District Court, Northern District of Illinois, Eastern Division. In the proceeding, the plaintiff, a SWAT officer with the DuPage County Sheriff’s Office (“DCSO”), alleged that he suffered injuries during a training exercise conducted by DCSO in which a Defense Technology Shotgun Breaching TKO round was deployed and passed through a door and lower-floor ceiling causing a fragment to strike plaintiff’s back resulting in injury. Prior to the jury rendering its verdict, the court deferred ruling on Safariland, LLC’s Motion for Judgment as a Matter of Law (“JMOL”). On November 8, 2021, Safariland, LLC filed its post-trial motions, including a supplemental JMOL, motion for new trial and remittitur. On April 18, 2022, the court denied Safariland, LLC’s JMOL, motion for new trial and remittitur and, accordingly, entered a judgment in favor of plaintiff, David Hakim, as to the Third Claim. In response, Safariland, LLC </span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">timely filed its notice of appeal with the United States Court of Appeals for the Seventh Circuit (the “Seventh Circuit”).  Safariland and Plaintiff have filed their appeal briefs, and oral arguments were held on October 25, 2022. On August 21, 2023, the Seventh Circuit affirmed the judgment of the district court. In accordance with the Company’s applicable insurance policies, the Company was fully indemnified. The insurer satisfied the judgment and a release of the judgment was entered on September 11, 2023. Accordingly, this matter is now closed</span>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company is also involved in various legal disputes and other legal proceedings and claims that arise from time to time in the ordinary course of business. The Company vigorously defends itself against all lawsuits and evaluates the amount of reasonably possible losses that the Company could incur as a result of these matters. While any litigation contains an element of uncertainty, the Company believes that the reasonably possible losses that the Company could incur in excess of insurance coverage would not have a material adverse effect on the Company’s consolidated financial position, results of operations, or liquidity.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">Insurance</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company has various insurance policies, including product liability insurance, covering risks and in amounts it considers adequate. There can be no assurance that the insurance coverage maintained by the Company is sufficient or will be available in adequate amounts or at a reasonable cost.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">International</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">As an international company, we are, from time to time, the subject of investigations relation to the Company’s international operations, including under U.S. export control laws (such as ITAR), the FCPA and other similar U.S. and international laws. To the best of the Company’s knowledge, there are not any potential or pending investigations at this time.</p> 7500000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">8.    INCOME TAXES</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company and its subsidiaries file income tax returns in the U.S. federal, various state and local, and certain foreign jurisdictions. As of September 30, 2023, the Company’s tax years subsequent to 2016 are subject to examination by tax authorities with few exceptions. The 2018 and 2019 tax returns of a Canadian subsidiary of the Company are currently under examination by the Canadian Revenue Agency.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company’s effective tax rate was 28.0% and 28.4% for the three months ended September 30, 2023 and 2022, respectively, and 28.3% and 76.5% for the nine months ended September 30, 2023 and 2022, respectively.  Our effective tax rate for the three and nine months ended September 30, 2023 and 2022 differs from our statutory rate primarily due to <span style="letter-spacing:0.2pt;">state taxes and executive compensation, partially offset by research and development tax credits</span>.</p> 0.280 0.284 0.283 0.765 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">9.     COMPENSATION PLANS</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;background:#ffffff;">Long-Term Incentive Plan</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">In March 2021, the Company initiated a cash-based long-term incentive plan. Each award granted under the plan shall be eligible to vest in </span><span style="background:#ffffff;">three</span><span style="background:#ffffff;"> equal annual installments over a period of </span><span style="-sec-ix-hidden:Hidden_PK99bojlwUeIoa09aaR8Qw;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;background:#ffffff;">three</span></span><span style="background:#ffffff;"> consecutive one-year performance periods, with each installment of the award vesting on the last day of the applicable performance period, subject to the achievement of the performance metrics established by the board of directors for the applicable annual performance period. Compensation expense related to this plan was </span><span style="background:#ffffff;">$185</span><span style="background:#ffffff;"> and </span><span style="background:#ffffff;">$375</span><span style="background:#ffffff;"> for the three months ended September 30, 2023 and 2022, respectively, and </span><span style="background:#ffffff;">$489</span><span style="background:#ffffff;"> and </span><span style="background:#ffffff;">$933</span><span style="background:#ffffff;"> for the nine months ended September 30, 2023 and 2022, respectively, and is </span>included in selling, general and administrative in the Company’s condensed consolidated statements of operations and comprehensive income<span style="background:#ffffff;">.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">On March 9, 2022, the Company’s board of directors approved the common stock settlement of vested awards of the long-term incentive plan. The board of directors also approved the future settlement of unvested awards in common stock. Modification accounting was not applied as this change did not affect the fair value of the awards, vesting conditions, or the liability classification of the awards.</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;"><i style="font-style:italic;background:#ffffff;">Executive Compensation Plan</i></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">The Company maintains a cash-based executive compensation plan for certain employees. The Company’s board of directors awarded </span><span style="background:#ffffff;">1,433,500 </span><span style="background:#ffffff;">interests in the plan (“units”). Each unit represents an unfunded and unsecured right, subject to certain conditions as set forth by the plan. One-third of the units granted to any holder vest on each of the first, second, and third anniversaries of March 18, 2021 during the term of such holder’s employment with the Company. Payment of a holder’s vested balance is dependent upon a transaction or series of related transactions constituting a qualifying exit event, as defined by the executive compensation plan. The plan will expire on March 18, 2025, at which time the plan and all awarded units will be terminated for no consideration if a qualifying exit event has not occurred before that date. If a qualifying exit event becomes probable, the fair value of the units would be the closing stock price of the Company on the day the qualifying exit event becomes probable and compensation expense would be recognized at that time</span>.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">On March 9, 2022, the Company’s board of directors modified the performance condition, specifically the definition of a qualifying exit event, in the cash-based executive compensation plan. In addition, the board of directors approved the settlement of the majority of vested and unvested units in common stock rather than cash, which resulted in a change in classification of those outstanding units from liability to equity. As a result, modification of the units occurred on March 9, 2022 with a grant date fair value of </span><span style="background:#ffffff;">$23.45</span><span style="background:#ffffff;">, the closing stock price of the Company on the date of modification. There were </span><span style="background:#ffffff;">632,500</span><span style="background:#ffffff;"> units that vested on March 18, 2022 and </span><span style="background:#ffffff;">801,000</span><span style="background:#ffffff;"> units that vest in equal amounts on the second and third anniversaries of the plan. The Company recognized compensation expense of </span><span style="background:#ffffff;">$22,100</span><span style="background:#ffffff;"> in selling, general and administrative in the </span>Company’s condensed consolidated statements of operations and comprehensive income<span style="background:#ffffff;"> on the modification date. Unrecognized compensation expense related to the unvested units was </span><span style="background:#ffffff;">$11,516</span><span style="background:#ffffff;"> as of the modification date.  </span></p> 3 185000 375000 489000 933000 1433500 23.45 632500 801000 22100000 11516000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">10.     LEASES</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company leases certain manufacturing and office space, retail locations, and equipment. Operating lease assets and liabilities are recognized at the commencement date based on the present value of lease payments over the lease term. <span style="background:#ffffff;">The Company has elected not to recognize a lease liability or right-of-use (“ROU”) asset for short-term leases (leases with a term of twelve months or less).</span> The Company uses its incremental borrowing rate based on the information available at the commencement date in determining the present value of lease payments. <span style="background:#ffffff;">The Company’s incremental borrowing rate is the rate for collateralized borrowings based on the current economic environment, credit history, credit rating, value of leases, currency in which the lease obligation is satisfied, rate sensitivity, lease term and materiality. </span>Our operating leases have remaining contractual terms of up to five years, some of which include options to extend the leases for up to five years.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The amount of assets and liabilities related to our operating leases were as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:46.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:46.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Balance Sheet Accounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Assets:</b></p></td><td style="vertical-align:bottom;width:46.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating lease assets</p></td><td style="vertical-align:bottom;width:46.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Operating lease assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,643</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,489</p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:46.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Liabilities:</b></p></td><td style="vertical-align:bottom;width:46.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current:</p></td><td style="vertical-align:bottom;width:46.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating lease liabilities</p></td><td style="vertical-align:bottom;width:46.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_umxhs4cor02-cn4D5nF6ew;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Accrued liabilities</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,192</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,773</p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Long-term:</p></td><td style="vertical-align:bottom;width:46.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating lease liabilities</p></td><td style="vertical-align:bottom;width:46.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Long-term operating lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,603</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,965</p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Total lease liabilities</p></td><td style="vertical-align:bottom;width:46.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,795</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,738</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The components of lease expense are recorded to cost of sales and selling, general and administration expenses in the condensed consolidated statements of operations and comprehensive income. The components of lease expense were as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:20.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:23.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:22.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:23.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:22.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Fixed operating lease costs<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:20.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 954</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,019</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Variable operating lease costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:20.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 511</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,267</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:20.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,465</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.57%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,286</p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1px;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt 0pt 12pt 0pt;">(1) Includes short-term leases, which are immaterial.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The weighted average remaining lease term and weighted average discount rate is as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average remaining lease term (years):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.30</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.62</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average discount rate:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">3.06%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">2.96%</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The approximate future minimum lease payments under operating leases as of September 30, 2023 are as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Remainder of 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,090</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,250</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,835</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 768</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 134</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total future lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,085</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: Amount representing interest </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (290)</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Present value of lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,795</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">Supplemental cash flow information related to leases is as follows:</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cash paid for amounts included in the measurement of lease liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating cash flows - operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,063</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Right-of-use assets obtained in exchange for lease liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_o8dThhFAIkSVElnYEbR6-w;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> —</span></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> P5Y P5Y <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The amount of assets and liabilities related to our operating leases were as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;width:46.91%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:46.91%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Balance Sheet Accounts</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Assets:</b></p></td><td style="vertical-align:bottom;width:46.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating lease assets</p></td><td style="vertical-align:bottom;width:46.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Operating lease assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,643</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,489</p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;"><span style="margin-left:0pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;width:46.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Liabilities:</b></p></td><td style="vertical-align:bottom;width:46.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Current:</p></td><td style="vertical-align:bottom;width:46.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating lease liabilities</p></td><td style="vertical-align:bottom;width:46.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_umxhs4cor02-cn4D5nF6ew;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">Accrued liabilities</span></span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,192</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,773</p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Long-term:</p></td><td style="vertical-align:bottom;width:46.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating lease liabilities</p></td><td style="vertical-align:bottom;width:46.91%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">Long-term operating lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,603</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,965</p></td></tr><tr><td style="vertical-align:bottom;width:25.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Total lease liabilities</p></td><td style="vertical-align:bottom;width:46.91%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.39%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.99%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,795</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.35%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.62%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8,738</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The components of lease expense are recorded to cost of sales and selling, general and administration expenses in the condensed consolidated statements of operations and comprehensive income. The components of lease expense were as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:20.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.89%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:19.57%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:23.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:22.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:23.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:22.47%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Fixed operating lease costs<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:20.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 954</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.89%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.57%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,019</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Variable operating lease costs</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:20.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 511</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.89%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.57%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,267</p></td></tr><tr><td style="vertical-align:bottom;width:51.26%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 12pt;">Total</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:20.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,465</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.48%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.89%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.57%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4,286</p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1px;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt 0pt 12pt 0pt;">(1) Includes short-term leases, which are immaterial.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The weighted average remaining lease term and weighted average discount rate is as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.97%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">December 31, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average remaining lease term (years):</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.30</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2.62</p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Weighted average discount rate:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.71%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.37%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">3.06%</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.63%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;">2.96%</p></td></tr></table> 6643000 8489000 3192000 3773000 3603000 4965000 6795000 8738000 954000 3019000 511000 1267000 1465000 4286000 P2Y3M18D P2Y7M13D 0.0306 0.0296 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The approximate future minimum lease payments under operating leases as of September 30, 2023 are as follows:</p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Remainder of 2023</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,090</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2024</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,250</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 1,835</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2026</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 768</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2027</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 134</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Thereafter</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 8</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Total future lease payments</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 7,085</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Less: Amount representing interest </p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (290)</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Present value of lease liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 6,795</p></td></tr></table> 1090000 3250000 1835000 768000 134000 8000 7085000 290000 6795000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;min-height:0.0pt;margin:0pt;"><span style="font-size:0pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-style:italic;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:13.81%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">September 30, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cash paid for amounts included in the measurement of lease liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating cash flows - operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 3,063</p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Right-of-use assets obtained in exchange for lease liabilities:</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:83.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Operating leases</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.53%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:12.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"><span style="-sec-ix-hidden:Hidden_o8dThhFAIkSVElnYEbR6-w;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;"> —</span></span></p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p> 3063000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">11.     RELATED PARTY TRANSACTIONS</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The Company leases 4 distribution warehouses and retail stores from certain employees. The Company recorded rent expense related to these leases of $116 and $112 for the three months ended September 30, 2023 and 2022, respectively, and $379 and $346 for the nine months ended September 30, 2023 and 2022, respectively. Rent expense related to these leases is included in related party expense in the Company’s condensed consolidated statements of operations and comprehensive income.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="letter-spacing:0.2pt;background:#ffffff;">During the nine months ended September 30, 2022, the Company made the following payments to Kanders &amp; Company, Inc., a company controlled by Warren Kanders, our Chief Executive Officer:</span></p><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:12pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">●</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;letter-spacing:0.2pt;background:#ffffff;">$1,000</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;letter-spacing:0.2pt;background:#ffffff;"> for services related to the acquisition of Cyalume,</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;background:#ffffff;"> which is included in related party expense in the Company’s </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">condensed </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;background:#ffffff;">consolidated statements of operations and comprehensive income.</span></td></tr></table><table style="border-collapse:collapse;font-family:'Times New Roman','Times','serif';font-size:10pt;margin-bottom:0pt;margin-top:0pt;table-layout:fixed;text-align:justify;width:100%;border:0pt;"><tr><td style="width:18pt;"></td><td style="font-family:'Times New Roman','Times','serif';font-size:10pt;vertical-align:text-top;white-space:nowrap;width:18pt;padding:0pt;">●</td><td style="padding:0pt;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;letter-spacing:0.2pt;background:#ffffff;">$2,000</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;letter-spacing:0.2pt;background:#ffffff;"> for services related to the Company’s secondary offering, which is included in direct offering costs and recorded against offering proceeds in additional paid in capital in the Company’s </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">condensed </span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;letter-spacing:0.2pt;background:#ffffff;">consolidated balance sheets</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;background:#ffffff;">.</span></td></tr></table><div style="margin-top:12pt;"></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="background:#ffffff;">There were no other payments made to Kanders &amp; Company for any other period presented.</span></p> 4 116000 112000 379000 346000 1000000 2000000 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">12.     SEGMENT DATA</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">Our operations are comprised of two reportable segments: Product and Distribution. Segment information is consistent with how the chief operating decision maker (“CODM”), our chief executive officer, reviews the business, makes investing and resource allocation decisions and assesses operating performance. The CODM is not provided asset information or operating expenses by segment.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:38.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Reconciling</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Product</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> Items</b><sup style="font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 108,495</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,208</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (7,589)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 125,114</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of goods sold</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 60,380</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,724</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (7,593)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 71,511</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 48,115</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,484</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 53,603</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:38.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Reconciling</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Product</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> Items</b><sup style="font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 92,718</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,012</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (7,176)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 111,554</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of goods sold</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 54,125</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20,859</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (7,170)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 67,814</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 38,593</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,153</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (6)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,740</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:38.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Reconciling</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    Product    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> Items</b><sup style="font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">      Total      </b></p></td></tr><tr><td style="vertical-align:bottom;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 305,057</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 74,594</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (21,702)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 357,949</p></td></tr><tr><td style="vertical-align:bottom;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of goods sold</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 171,204</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 57,200</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (21,423)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 206,981</p></td></tr><tr><td style="vertical-align:bottom;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 133,853</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,394</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (279)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 150,968</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:38.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Reconciling</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    Product    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> Items</b><sup style="font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">      Total      </b></p></td></tr><tr><td style="vertical-align:bottom;width:59.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 277,941</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 73,836</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:middle;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (17,585)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 334,192</p></td></tr><tr><td style="vertical-align:bottom;width:59.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of goods sold</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 166,192</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 58,437</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (17,587)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 207,042</p></td></tr><tr><td style="vertical-align:bottom;width:59.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 111,749</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,399</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 127,150</p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup> Reconciling items consist primarily of intercompany eliminations and items not directly attributable to operating segments. </p> 2 <table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:38.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Reconciling</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Product</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> Items</b><sup style="font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 108,495</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 24,208</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (7,589)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 125,114</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of goods sold</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 60,380</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 18,724</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (7,593)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 71,511</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 48,115</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,484</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 4</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 53,603</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="font-size:1pt;margin-bottom:12pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:38.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Three Months Ended September 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Reconciling</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Product</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> Items</b><sup style="font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 92,718</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 26,012</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (7,176)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 111,554</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of goods sold</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 54,125</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 20,859</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (7,170)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 67,814</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 38,593</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 5,153</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (6)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 43,740</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.2%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:38.94%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, 2023</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.28%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Reconciling</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    Product    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> Items</b><sup style="font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.38%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">      Total      </b></p></td></tr><tr><td style="vertical-align:bottom;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 305,057</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 74,594</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (21,702)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 357,949</p></td></tr><tr><td style="vertical-align:bottom;width:59.2%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of goods sold</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 171,204</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 57,200</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (21,423)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 206,981</p></td></tr><tr><td style="vertical-align:bottom;width:59.2%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 133,853</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 17,394</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.04%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.28%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (279)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.33%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 150,968</p></td></tr></table><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><span style="margin-bottom:12pt;visibility:hidden;">​</span></p><table style="border-collapse:collapse;font-size:16pt;height:max-content;margin-left:auto;margin-right:auto;padding-left:0pt;padding-right:0pt;width:100%;"><tr style="height:1pt;"><td style="vertical-align:bottom;width:59.21%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:middle;white-space:nowrap;width:7.3%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="position:absolute;top:50%;transform:translate(0,-50%);width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:7.34%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:59.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="11" style="vertical-align:bottom;white-space:nowrap;width:38.93%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Nine Months Ended September 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:59.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.29%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.37%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Reconciling</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;font-weight:bold;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:59.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">    Product    </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.35%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">Distribution</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.37%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;"> Items</b><sup style="font-size:6pt;font-weight:bold;line-height:100%;top:0pt;vertical-align:top;">(1)</sup></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td colspan="2" style="vertical-align:middle;white-space:nowrap;width:8.4%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><b style="font-weight:bold;">      Total      </b></p></td></tr><tr><td style="vertical-align:bottom;width:59.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Net sales</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 277,941</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 73,836</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:middle;white-space:nowrap;width:7.3%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (17,585)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;">    </p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 334,192</p></td></tr><tr><td style="vertical-align:bottom;width:59.21%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">Cost of goods sold</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 166,192</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 58,437</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (17,587)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.34%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 207,042</p></td></tr><tr><td style="vertical-align:bottom;width:59.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Gross profit</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 111,749</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.05%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.29%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 15,399</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.75%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 2</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.85%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.06%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.34%;background:#cceeff;border-bottom:3px double #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 127,150</p></td></tr></table><div style="font-family:'Times New Roman','Times','serif';font-size:10.0pt;margin-bottom:0pt;min-height:1.19em;position:relative;width:100%;"><div style="background-color:#000000;height:1pt;position:relative;top:0.6em;width:25.0%;border:none;margin:0 auto 0 0;"></div></div><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt;"><sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">(1)</sup> Reconciling items consist primarily of intercompany eliminations and items not directly attributable to operating segments. </p> 108495000 24208000 -7589000 125114000 60380000 18724000 -7593000 71511000 48115000 5484000 4000 53603000 92718000 26012000 -7176000 111554000 54125000 20859000 -7170000 67814000 38593000 5153000 -6000 43740000 305057000 74594000 -21702000 357949000 171204000 57200000 -21423000 206981000 133853000 17394000 -279000 150968000 277941000 73836000 -17585000 334192000 166192000 58437000 -17587000 207042000 111749000 15399000 2000 127150000 EXCEL 80 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( +"":%<'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 " "P@FA7$XA;%NT K @ $0 &1O8U!R;W!S+V-O&ULS9+! M2L0P$(9?17)OIVE%)'1S43PI""XHWD(RNQMLTI",M/OVIG&WB^@#"+EDYL\W MWT!Z'80>(S[',6 DB^EJ=H-/0H<-.Q % 9#T 9U*=4[XW-R-T2G*U[B'H/2' MVB.T37,##DD910H68!56(I.]T4)'5#3&$][H%1\^XU!@1@,.Z-!3 EYS8'*9 M&([ST,,%L, (HTO?!30KL53_Q)8.L%-R3G9-3=-43UW)Y1TXO#T]OI1U*^L3 M*:\QOTI6T#'@AITGOW9W]]L')MNF[2K.J^9VVW*1#[]^7UQ_^%V$W6CLSOYC MX[.@[.'7OY!?4$L#!!0 ( +"":%>97)PC$ 8 )PG 3 >&PO=&AE M;64O=&AE;64Q+GAM;.U:6W/:.!1^[Z_0>&?V;0O&-H&VM!-S:7;;M)F$[4X? MA1%8C6QY9)&$?[]'-A#+E@WMDDVZFSP$+.G[SD5'Y^@X>?/N+F+HAHB4\GA@ MV2_;UKNW+][@5S(D$4$P&:>O\, *I4Q>M5II ,,X?+&A T%116F]?(+3E'S/X%/F7/Z3H=,H%N,!M8('_.;Z?D3EJ(X53"Q,!J9S]6:\?1 MTDB @LE]E 6Z2?:CTQ4(,@T[.IU8SG9\]L3MGXS*VG0T;1K@X_%X.+;+THMP M' 3@4;N>PIWT;+^D00FTHVG09-CVVJZ1IJJ-4T_3]WW?ZYMHG J-6T_3:W?= MTXZ)QJW0> V^\4^'PZZ)QJO0=.MI)B?]KFNDZ19H0D;CZWH2%;7E0-,@ %AP M=M;,T@.67BGZ=90:V1V[W4%<\%CN.8D1_L;%!-9ITAF6-$9RG9 %#@ WQ-%, M4'RO0;:*X,*2TER0UL\IM5 :")K(@?5'@B'%W*_]]9>[R:0S>IU].LYKE']I MJP&G[;N;SY/\<^CDGZ>3UTU"SG"\+ GQ^R-;88C'(CN]WV6'WV3T=N(]>IP+,BUY1&)$6?R"VZ MY!$XM4D-,A,_")V&F&I0' *D"3&6H8;XM,:L$> 3?;>^",C?C8CWJV^:/5>A M6$G:A/@01AKBG'/F<]%L^P>E1M'V5;SC MFED)O816:I^JAS0^J!XR"@7QN1X^Y7IX"C>6QKQ0KH)[ ?_1VC?"J_B"P#E_ M+GW/I>^Y]#VATK\>WZV22$KYI9+2,6D$N!LT$DN/R+RO JQ GH9%LE" M0AMNZ5/U2I77Y:^Y*+@\6^3IKZ%T/BS/^3Q?Y[3-"S-#MW)+ZK:4OK4F.$KT ML@'37[]EUVY".E,%.70[@:0KX#;;J=W#HXGIB1N0K3 M4I!OP_GIQ7@:XCG9!+E]F%=MY]C1T?OGP5&PH^\\EAW'B/*B(>ZAAIC/PT.' M>7M?F&>5QE T%&ULK"0L1K=@N-?Q+!3@9& MH >#KU$"\E)58#%;Q@,KD*)\ M3(Q%Z'#GEUQ?X]&2X]NF9;5NKREW&6TB4CG":9@39ZO*WF6QP54=SU5;\K"^ M:CVT%4[/_EFMR)\,$4X6"Q)(8Y07IDJB\QE3ON>;G*YZ(G;ZEW?! M8/+]<,E'#^4[YU_T74.N?O;=X_INDSM(3)QYQ1$!=$4"(Y4U#VT%SU&\Z.9X!ZSAW.;>KC"1:S_6-8>^3+?.7#;.MX#7N83 M+$.D?L%]BHJ $:MBOKJO3_DEG#NT>_&!()O\UMND]MW@#'S4JUJE9"L1/TL' M?!^2!F.,6_0T7X\48JVFL:W&VC$,>8!8\PRA9CC?AT6:&C/5BZPYC0IO0=5 MY3_;U UH]@TT')$%7C&9MC:CY$X*/-S^[PVPPL2.X>V+OP%02P,$% @ ML()H5]*_#[7V!0 [1\ !@ !X;"]W;W)KUWJ/;8VFPX>(U63$FT5L81,E5:R5E_,&R$G?%0IJ<\YA% M<&?!14@EG(JEE<2"42\+"@.+V';/"JD?M8:#[-I4# <\E8$?L:E 21J&5&RO M6< W5RW%_R\R#F3E-V)@'?_B>7%VU^BWDL05- _G,-Y_8SE!7Z;D\2+)?M,F? M[71:R$T3R<-=,)0@]*/\G[[M$G$80"H"R"Z ?!6 J][@[ *RS%EYR3);-U32 MX4#P#1+J:5!3!UENLFAPXT>J&F=2P%T?XN3PAKLIU(I$-/+0;21]N463*&\> M*LUME*RH8,G DO V%6.Y.^7K7)E4*%^BSSR2JP14/>:]C[>@E$51R;ZHU\0H M.&/Q.7+L,T1LXFC*,S:'/_#U.;(=7?B[XCA%YIQ,SVF8N;]&\T0*:*9_ZW*7 M:W?TVJKO?DABZK*K%G3.A(DU:PU_^ [W[)]UQK^1V+LT=(HT=$SJ91I>MC'3 M.36'8[O]I+-DC&IHJ5M8ZM:S])12(9D(MNB9Q5Q(G3VSE!2I+BEC8U1#>[W" M7J^>O2D3/E=MUT,P=F@KSZQ4],C*+FF,;^CSHO!Y4;-E"@K33M8IJ^O1K+6@ M0:*M2&-80X/]PF#?6*C=H'/G!PP]I.&<"9TQLX9MXW;'[EWV=>:,H0W-71;F M+NN8>V9+7PVC4(T/--2V4;/.>'3S?(L^/=[?3!X^SL[R\DT>QN1E)LX=_3YN&(^LVMSK$YJ*GE _K M=2R_T#J"=G M^P-T#\^AQTA?KV9)[#C]'C0:F*BB+'4T0-/7S5;KWBC5U'U)3-A((O]Q/U9G MT+)?^";2.C?+_4+=UX1':S\(V)G6[BG ")=DA,UL\][NKB,_"C05?.U'KKZR MS9)W]UJ?IZ E7.(2-D/.U]4ZY8F$1OBG'U>/569%AQ"LG9',<4V=EN2$S<"3 M-=@1?"Y7&S,+7-H=K:U3:>NVK06/'(!!)'1"XZN-WMV+;6WRDP M"9>A[^]P&GD(Q$_E7LS85IX J7%(5-N,0L+#G1TLTVX9S'F@S<(2G *>TOD[! M3J1D)V*FFWV=HMLW=T6C):O$Q2-"#U]F6G_FL*;^2E BM4!IG JA/FGR[YBL M(F%62;7+,T<4OV@7=<;FJ*8^2T BM0 IPYE\B4]]F]*]<:U/LV*5SU.@$"E1 MB-1"(?7M!F0/8+#D0CL@'=$9N2X#"1#P]C[?#E=4\D4DK4FS6G5MG@*&2 E#Q,PQ^]:Z8M!:3778<,7('-?47LE" MI-:B40XR:,QA!Q2:^UH#!.& +"=1!Y[0[\R?36:I13009FZ'?V.PRF@QRFAQS&SRIX& M[OQ$ ?P7!BAJ6LT](M=N8])6V=?L,)R"?IR2?APSJQ1+N8=.[^"B=AHY(E:U M5FT.:^JQ)!_'S"E?>]RMSE>[-,L]Z3V>@GJ<@RVS([0"!KW<9$"U8\P1@IT]YF6Z5BH)'HEVKE\ M_0XEQ[)%BD[0/+21Y)G1&7(XYY ZN9?ESVHAA$(/>594IX.%4LN/HU&5+$3. MJP]R*0KX92[+G"NX+>]&U;(4?%8[Y=F(8AR,RF')_(E27.9?9O.E.+TT$T0#,QYZM,?9?WG\4F M(5_'2V16U?^C^XTM'J!D52F9;YP!09X6S5_^L!F('0?B]3C0C0-]J0/;.+ Z MT099G=8%5WQ\4LI[5&IKB*8OZK&IO2&;M-#3.%$E_)J"GQJ??[N^N+R>7%X@ MN)I\^W)U<78+-Y_.OIQ=GU^BR>?+R]L).D8_)A?HW=%[=(32 MTNY*KBQ:PZ M&2G H".-DLW[/C7OHSWOFXCE!\3P$%%,F<7]W.U^(1)P)[4[W7;;].DV M?5K'8WWIK\I2% KQJA+*FD[C[]G]]2+[6"UY(DX'L(HJ4:[%8/S[;R3 ?]J2 M>Z-@>ZFR;:K,%7U\SJL%@DE#B;X0_ZW2-<\@=VO63:B@#J4[P7H3Z-@JW5'DYOB]-SXCQ+$KD"6- D$@$8IYD8H@(:FIPCGD';X44B$#0P M-).KJ9JO,N@%&QB5\4:AE^6J;!.@6^\,Z*^%W20F58AIB&S(PNVR (GLIM2+'DZ M0^(!V**RPPN,%Q,O",(./(L5QC&QPPNW\$(GO&]J(4IHCH>6;FB.8,2Z V@: M!1'I 1AM 49.@+=2\>P% "/CW90%(>TN,].,Q"$FD1UDO 49'YADT *E>JP7 MBVX'2V!GU2ZU)%GEJXPK,0-:A'Z4I+PA7C#GN2Q5^M0\T(O.BX9Q[#7KSJ-# M:!:'EUYLI.6QP.]6D,4*>HQOSYW@EO:PNX8@=X!?W*%,@ IP3-(FT%Z%!![K MP+1815X4]\#<86?BA'DAY@*J:(84?]A@K&?("I28Y43CN O49N7WC6?+H\3) M7=#,%"_N4FC6!V%23W@6K(B;K9J>IH#G,E$'L4^ M]KOP3#L6D]BG/0!;SB+!BZ1*^C>*MI^SBT1$C<3;K72 MDC]JH61-V&0XAD-SO9EFE'FXKZA;*B1N+@2(Y0H:V*%I,4F.14%HH+29A13W MH&RYD+C)\*I(9"[J+NL:2I.,0NP9"]!&65'/ J0M8U$W8SW7]U)3;T.[F2SN MCI4H,,0$B+=&: M9RLQ1 0/X9'^AZH%!Q2(K]1"ENF3F,%&03X_3:M*:P5=-'*E*MA2S'2/X_7) MSD0LE5,XC65]>N!]H_O6@' L+.R)GJ,%C*; MB;+ZPU%=S*DC7EM=;Q5M/^E603"W@M"]!,2.H[1B9VVQ<.A'P1 S4A<+W#)& MAS0D;UIR^X<=U@)DIFSQ.@W9:;(_?JVJ86Y552LF\OEP( M#K"U ?P^EZ"--C?ZZ][V:^[X?U!+ P04 " "P@FA7PR>2JET# "*"P M& 'AL+W=O3'(@U29S:#K3]]7N<9-)D)ERF6SZ G9SS^GG-\65R MX.)>Q@"*?$^33$Z-6*G\QC1E&$-*Y37/(<,W6RY2JK K=J;,!="H3$H3T[$L MSTPIRXQ@4CY;B6#""Y6P#%:"R")-J?AQ"PD_3 W;>'CPB>UBI1^8P22G.UB# M^I*O!/;,1B5B*622\8P(V$Z-F7TSMQV=4$9\97"0K3;15C:?(OBU0\-<8&B6!+ MBT1]XH=W4!L::KV0)[+\)HB&9?IO7"N!;QGFJ6#^\6ZQ MO%LO%P1;ZX\?WB]FG[%S._LPNYLOR?K=R@7U8OOAN9TQ"F!JXN"6(/1O#JA>U9;_L\_R&QS@RX MS0RXI]2#61CR(E,2%V4(;$\W"5P1FN#ZIED(!'<*$O%BH[9%@HNNBNV;D&H4 MKQQ%;Q[[8&S[EF5-S'W;ZM,PWQFTPSHF!HV)P4D3*X$;FU _",TB M\*EN-6 MHZXT<)$6"540X>+&V0L9K;8/C*,I%XK]+!_T.1H\01V,?7_PU%-/H./YQUT- M&U?#,ZY@"T(@.^X#X?T5R:D@>YH4T(=;:8U:%-8U(MB/8,^&=5"]!M5['JJ, M<*I+!46,LMV?:3CLZ2G(CJD?D/JGR2=\S3%Q75)M?J75>O9L ZG M;?TZ]JQGD%Y4K+5BIPC]_G*]*+1+WCJP[>>3'Z_76JV-XHZ&8\]R'T]U;Z3K M.L[HV&S_.F3MDR=8/_.9\JTE+P'OB^P%-UL7)7U+_8>*'Q,IFC)=E$#H WV\Y5P\=?1UKKM_!?U!+ P04 " "P M@FA7T'DA]-P' !I* & 'AL+W=OK&,A;XOEB&\*%L_+1NMT1"S+':WC)!N,S\MG]\7X/-^*-,G8?8'X=KV. MBQ]7+,V?+P9X\/K@(5FNA'HP&I]OXB6;,O%ERCQ9LXPG>88*MK@8 M7.*SB%+5H$1\3=@S/[A&RI6G//^N;J[G%P-+O1%+V4PH$['\V;$)2U-E2;[' MG[71P;Y/U?#P^M7ZI])YZ+>)N*A_SY,ZL=A[ M>[#K!O9[>W#J!J7KH\KWDK@P%O'XO,B?4:'0TIJZ*-DO6TN^DDP%RE04\K^) M;"?&D[O;,+J=1B&25].[WZ_#RT=Y,WV4/S?1[>,4W7U"=_?1P^7CM02@RUN% MO+E_B#[+9M=?(W1]*^\C-$1?IB$Z^?G#^4C(]U+61[/Z':ZJ=R =[T#139Z) M%4=1-F=SH'UH;A\8VH\D'WM2R"LI5\1H<,HVIXA:'Q&Q" 7>9_+^Y@1RY[_U M'OWKWEMDT'V$T-(>_9\C!(J+JF<;[EFMD6=\$\_8Q4 N@IP5.S88__(3=JU? MH4'ITUC8I[&H)V.MX;/WPV>;K(]O9;+A<I(ZGB!'6C("$!2&P?D$-GRV=G[[!A]GN1LKG8Z=U(':LP/5UIP$DD91;G4Y[>Z<]XQ)U MMV%%+))LB=B+5% <#G:OS\6F3V-AG\:BGHRU!L+?#X1OC+ZI%'QR&#ZB)> [P(C#R&I32 &="2V/$QT4B,( M2J@,J6X:2$,#,=+0K,Y)-LO7\. 3O7_7H\ 2 "$MBH'0!Y V]6T@^ $D#0+: M[7NCG;%9/-^)%2N,4=^K!.[56MBKM:@O:^V1:&0P-NO@ZTPP:5<8!\/6XF H M9PR@CD"DXWI % )(ZA$=&4%(VPX,*U&CA[%9$%=A>%*[_J&>B!]1QD"1B'5Y M.J1 \IQ 0.P[NN - 20-@'0,620^[A;&N%'&V"R-Z^7X<$9V,Z!KU2&FOK[* M3""DW,5 ZQ&$I% RAI R"OUN$AJEC(WZ3TX#-?+H))7;A _HB2WR@JGMPBXI M2W_RM@X.).*7CE3E =KC*&/6W.C(,J/IU.A VRK#2*-&1TH2V['9IJ;1KM@L M7D_N7VE0Q&1,[J#>QXWJ1B, 2M2>KI.01L!B MLX)5I8/D,%Y [P.@,F YD/F$=7$+*JO8I[,P!&HVOD' ML6"=DN H"$$4ID<1"*(\[RCZ -30.K5(1^PU@IF8!7.8I%L!%L*OZI9O.0FA M="IU'-\5^["CN,00A(_D#KJ.!9!F]@)//'^".D&Q4,C&K9-.\ ^2K)U.\[_O'/D-(S_9<;!_[#"%]:LG\=>PS M@#3[W(AB8A;%[\KQM8UWY'@ ">=X -B1XP&D.<:N2/$MC MSI-%,HNKTQ7S/[9+E#*=E1H9MNYY*T)"N):DWK%G<$YDZO 0]]'RC! M04#B 5($$AO?-B&ER$*2Q.2U(%3$0JJ/YWC3 M"C#P<[5>*B; DC6!<%8 E 0 (/2- H"YIG( ;=0T-:OI3W+[GRPS--L6!@M]8(: '94L Z "S"("I@G\W#P=G0(QB+;3%1G9/9/]^?B M+LO38$?/K_#9! //0WP65:?>&O/5(;R;N%BJ=3ME"]F5W'K)<2NJKE@\9X4"R/\O\ER\WJ@.]J<+QW\#4$L#!!0 ( +"":%<. MH8B#1@, (8* 8 >&PO=V]R:W-H965T&ULM59A;]HP M$/TK5C9-G;0V(8'0=A")DE1%6BF"=OOL)@=D66J_.;5O%2\BH.A$KX/C/7,B,:IS*A:U6 M$FB2DS)FNX[CVQE-N17T\K6)#'IBK5G*82*)6F<9E3\N@(EMWVI9NX5INEAJ MLV 'O15=P STW6HB<697*DF: 5>IX$3"O&\-6N>1;_ YX',*6[4W)F8G]T)\ M,Y-1TK<*=^F>\=]W)/%0P%^Y(F M>MFW3BV2P)RNF9Z*[164^^D8O5@PE?^2;8EU+!*OE1992<8,LI077_I0^K!' M0)UF@EL2W*>$]C,$KR1X+XW0+@GMET;HE(1\ZW:Q]]RXD&H:]*38$FG0J&8& MN?LY&_U*N;DG,RWQWQ1Y.AC>C,-H/(M"@J/9S:=1.+C%R>P6/]?1^'9&;B[) MS22:#FY'"""#L4%>3Z;1%=)&GR,R&N,\(D<3*H'K)>@TINP].29WLY ??HD=_'?V1&5YU8[Q/>FY3L?FP[E-<7"UQ2+7DGLT?&UJ^-K'U(/[CB6$Y;^ MA(0L!4M2OB ++"?J ^%8E<2<:/I X 'KD(*F(RK4_5S=%*%-X'6[CN/T[,V^ M^758]]2KP<(&F._48%$=YK:\TWW<(R\ZE1>=@UY,(694J72.3U91MI*O^.1B M&=2*8 TNG"$IC]D:7Q(<[$S")9'!G[PJHG?VTS[KU+VJPT[;=:OJJ&ZG+A;5 M85[G6:/\RBC_H%%8D['BZ&Q M2@:_ %!+ P04 " "P@FA7ZI_U^) ( "& M)P & 'AL+W=OMKC^7LG&]ERG+Z6"*QS;*X?+VB*7^^&+FCMPM_ ML/5&J@N3V7D1K^FHY*N+D:7[MFU-U4+M,2_&7T6 M>Y^1;I7VPI-Q>C<(26=!5O4_D'?_Z-U@[Y2E_"4Z'_HN=:UAFA9"LD MS^K%8$'&\NI__%)OQ-X"T&->@.L%N+O &UA Z@5$.UI9IMVZB64\.R_Y,RJ5 M-&A3'_3>Z-7@#RA%\9K).SZX?[F]O[^>T-@D_SA]^_W5P^P9?Y$_S[ M?GO_-$AIP[KI^ %XTK^,V5*VQ5.*?%5T2<+P@[F!CL MN?[XLS4<0)O1C!N16TW-'1[)__<*?.OTP^GTC9P0YXS0YX-NVS>ZA"+$]X M1M&GE OQV>1MI6*J5:B:LYOAR/&"\\ENWXV^U#@(HD;HP#R_,<^W!NAR^1\X M7U"2I$"20TU*>)ZPE**\:[?Z65U,5$B+DN\89"Q:O"+>Q#2VQ]0_94Q/I.Q@ MTZ;-IDVM,;VAH#1A<56#\R6*,UY*]E]]P>1YI<[?BYR+2>AWXFN0=RK>Y@QZ*P:ZSUGC]9:5S<^H2M/CVJ2JOY(M!5I"HQ%4A3/WUNA2K9E.WB M14J-+N)^VG;SQB"#O:&T:9'?M<+J# @FT,<S=L%H*3&D MKT>ZMO:E")#U 6-;D';M*/T@-[0T6N49K(JF7:NLVG\V1UH,=^T@?JTW6"@N MN@?&.NUU74]9O&"I!N8O&L-5 0H:I(VW&;?>DP'TJ;8=[U4*W M:\?NRP^>FSX8$P]W@\69UT[ MT#91+^)7%?(]B_<.A]'L/JJ&4]PK2P;L]:9[P'?8S+78B^W8>_]1PFTR'?=A MUIOB'AH;Q'#D.P-)C%LTQNY1O9]*:O&1W@^?"'%K]_X?^(U;_,;OX/>V!/P3 MFH] $"%T\E5G'X6J6ZC&R[@%?4@>>]CK@!<?*2(6&G T8$YD;;#76CY +;S@EZT:I<*!TD=:&D+L0P'S9A_K@6%2@".G MYX)!C(3! !Z3ED20=TA$97F%2 63X$Q*@508,\6NZ^C9N8EB#/!QLO=8P$XP MGM2@"^DF L HX7E>/]%Z9G*#:%:D_)52)-3H"4D(E(CU[V:'39.# '?'JR:Q M*7:'?&D9!+$SB,.C(=0$?1F70--7*PJYMV[(Q#9?TO*Y9'#0F[FKV:&3D@K2 M)Q7^E."A@]5R"F+G%,WP\LW1X:&Q7=/1#AG(!G0L9,"AEFN0=\;Z3+58.402 MHB-+MMA*,^DCAK8_C*)>-3")^7B@L2(M&R!V-M"0N4\UF_M\T!XVA>P=:D=, M4X30#;VN&X:1OXO= 10D+>(3.^+?0MI4$ZA5=U0([6TUY:SX-_09^H-J-G9Q M2H>.C6%TT"6J!IDQ]H9"TB(ZL2-Z-8'3M>PHB_MH#<;@;HMD%(L&\MUK,=VS M8_KUD*E?T(*N69ZK'%(-'YQN;CP(GF'"X..P:[]!C)#0'V@.O!;:/3NT6QR@ M:KYC-;T/U=,(]KYK>E^,3(D_D/Q>B^@>MO8U\VU1I%2!.F#Y#8!!RH&0Z"G! M7LOS+:_>40'D,S8YWDFA_E3:#K>DY02>G1-HOS4E4$\Z]I^(:00U^M^']"#J M#>=,4D/ER]M[KF^'_:ZY@.K041NM[ -P0,(N6ABD2#@T0?1:E/;LSP8LB7;/ M\['VHIW,J(WYJVGWM"+ MPBX:BWI]HX.W.;J8:I()<"?6D[TWFC):KO6+7@)ITZHW@IJKS&PO=V]R:W-H965T&ULS9UA;]NX&<>_BI -VQUPN4@4 M)4JW)$ ;D6B'N[9K>AN&82]4FXFUVE9.DI/KMQ_EN*%I/J+$^FEP;UHG>?0G MQ3\ID3\]HL\?ZN93NY"R"WY?+=?MQ2V[7^_>->JGLR>5>;62Z[:JUT$C M;RY.7D0_B8ST!VPC_EG)AW;O<]"?RL>Z_M3_\'I^<1+V-9)+.>MZB5+]=R^O MY'+9*ZEZ_+83/7DJLS]P__,7=;$]>74R'\M67M7+?U7S;G%QDIT$IEN_TW>-C%AB?!;--V]6IWL*K!JEH__E_^OFN(O0.B>. MLCN '!Q V, !\>Z ^. F@X<0'<'T,,2ALXAV1V0')X#'3@@W1V0;MO^L;&V M+5V477EYWM0/0=-'*[7^P]:N[=&J@:MUW[.NNT;]M5+'=9=7;]\4_,TU+P+U MZ?KMSZ^+%Q_4#](]?_7VYX*_O_YKP/_QZ^L/_PY. M@U^OB^"[/W]_?M:IBO1R9[-=H2\?"R5#A=:KE>I5UUT]^P04^^L5\7O6] MLEP&[\IJ?OIZ'5R5=U57+@&M8D1K-MNL-LNRD_/@;;>03:#JIH;HHA\[]S)X MO9[5*QE\]W/=MM")\NGRA;RI9E4'B BWR(?:.K4SY?*3U>3):K+5H0,Z+\ME MN9[)H.P"=:;!1WE;K=?5^K;_12%G/P9Q]$- 0A)!ACY*IUOI_FIU?QF'87A^ M=K_OFQT4$9:&J159V)&G41XQ*Y #@3$+$V)%"CLRRU(:[@<:S18_-5O\=Z*M*B7 M<]FTZD+WVZ;J/@?_>5\OEX&ZCSV4S?R_D+,4L5FN,,4*3#&.*2:0Q SWDR?W M$^>0?J-F;-7NRKX$0,,-]N0&<[JQ MO0:>]K/U>:"&B%K"M&4_W8(\<2KY>L*L$R*$QL#D ;-4CBDF)IR"X4GVY$GF M]&0W86Y[:X*J;3?*F\U:W:4"N;I;UI^E-*P*[M24I84,Z"^N;QB(D75W<= M? ?K3LVX7Z0D BZOJ.5R5#4QY2Q,3_= 2/2\GHX-Z%U]S E51L(T/QC2[HK[ MCFE4-8ZJ)K#4S"Z@ 4GD)B1JC2>KVW4PVS2-7,\^!UVC+LS+1S?+^?\V;=>; M#MY9W=+>HQ53K=BI&3UM.RLYI"VHQ8H)Q9I&:203N9G,U:)W2L"5R MKN8/$9I:ZO4??RF;)V!&0(_H%.BXBS(F<93FS&ZO @C-XPAH5SONE.9Y:O-) M 4DF.1U>%$<:4D1N2@&TV@%R'&]!>\T>4Y81PJ+#5D0E%*AJ'%5-8*F9KFK6 M$;EAQU$4?J<]-B)L-##$X8'0 1 /10Z0>"#4C>(CS28B-YQ @_&1O50?H/'N M&GF/#%1X@:HFL-1,;S7CB+)G9/(1*NI 52M0U3BJFL!2,SN!)B>1&YU,0O-N M#6]O49$)JAI'51.1S9!.&;.]7]Z0D%L@1L[D'"F"5V: &$GF;4GL=P M*)"F,9@G8(=&29HXUJ5D+\/"*\4"F+*/MZ&]:(Y9' -3=G==O'LZIAI'51-8 M:J:KFC:0K\P F;($VVF/9<[8:^^A12P0"BYB@;BA12PDZ5S$$KWT)UY+_\$) M^W@[V@OM@:6LNT;>XP(UA0)536"IF=YJ0$&29YRP$]2$"U2U E6-HZH)+#6S M$VB>0=P\8]*$W:WA[2UJ]@:J&BQ*M/LA9O9Z7S6?UQQO9J OQ#]OG6BIT^X#ZH:DZV03SJIW5&S5?#THU MA:F^",[J=F *SZR;G'U'NB(VH%*2@;,8YN1$$Q#B3O/X MQLZ-/9 D=CH$(4#JT97[-+P'("H-05436&IFA] TA+AIR+3,.+>(]]45%8>@ MJG$" S",GM"+:9$FNG@FG7$;M;ADR#GEO*U)K97_(3%N7W]1"V6HZJ)"2=A M&J.I1>RF%L= *+>TMU&H&1LQ #=(& ,/A%'+%5/*-:W2H"1V@Y+C'^"["_ V M#)6EQ#;#4=,AFT5QU&+%A&)-N_9>@?$B(#L>^/?-VLVR8IM] #PP!MA'3ED( M\$ @]#0*[=DUAP*INOH#$W&H>)J2W-'--?V(O1,?#KC'>!L"W(.%$ ]TU\6[ M#Z-R#U0U@:5FNJJY1_R\1_..[AKI&WOS992.,,FMZCXA%4-3'A)$Q_-1V) M_]!T)+;I2+^:M*T[4(%:+$=5$Q-.PC1&PQ'Z[>"(6]K; M*%0X0B%(D0%0C*.6*Z:4:UJEX0C]UG#$78"W8:APA-J4@H0Y +-0BQ43BC7M MTG"$?@T<&4WTH9/@"+7IQ%"R%! *)TM!@0/)4D#H2+(4W=N"XU@X,MZ&$!P! MDZ7<=?'NPZAP!%5-8*F9KFHX0KW>6AE\OP'V,YDT)NRW6DB8)M2>C!=@*/#$ MF0.!IY0P: 4+5#)*D^T29VA,:*I O_+M$,?[#7!+VLOLH9&!2A50U3BJFIC2 M)J9OFCU0]HQ(D*)B!52U E6-HZH)+#6S$VA 0=V 8A(2=&MX>XL*&U#5.+6! M"8.>@HE=8.H(-!W1B(!B( *WB+.%OSQ'%E$AS[RV-"!(\1."6 M\K4F@5;7T Y#J,5R5#4QX21,8S0B2#QVP,#:MB:QU\EQGF0Q.YB&N.OF.VQ0 MU3BJFL!2,UW6="$9H0O/L7>-NP[>XQ;82((P8C_,+U#+Y:AJ8LI9F)YJ!)&, M[(?QW'O7)% B!B4ALX8UZLX8J&H<54U@J9E=0-.4Q$U3CN&[;FGOT8J*6A(; M\3!@)P..6JH8+]6T:6_G43<>.9[MN@OP-@MW9U)PCU!FY^=RU'+%E')-PS21 M2;R(#+!W30RZ9._4 9"LQ"82)$QI CRU D(C1H ]G(# TSB#[I8"TDP?W_L; M:C=-1!*OG3I&=J^!VQ#8HX,E:@T2'S(L=UV\>S$JXD!5$UAJIJL:<21NQ'$4 MW4WL=3XT)H"W4 ;H+A@*T5T@<(CN I4@T=W$7IT/T%UWC;Q' M!BJ-0%434]K$W)Y:$XLT?$:ZFZ(R#52U E6-HZH)+#6S$V@ZDKKIR"2ZZ];P M]A:5B:"J<50UD=H[AY \I,-[F:2:=Z3?;E-/M[2WG:AY%*AJ'%5-I#;J<*3X MIIISI,>F6H 3R712JD4*I%I$84+MU4L!A@*!' @\)23-@3<6@4I&69[GCC&@ MX4"*F6H!MR&4:@%.QMUU\>[FJ*D6J&IB2IN8CFE.D'Y]&L7HPBF=E$:1@FD4 MX.(3"(47GT#@T.(3J.3(XC/=^T(1G#2*\9:$4@;@7H_[E2*XWRF"FD:!I69Z MJ\%"^IRI%BEJJ@6J6H&JQE'5!)::V0DTAT@14BW<&M[>HJ9:H*KQ%/@BDS#/ M@5R+*9&F)YINI!C)%FX1;U-0\0:J&D^!% HU[P/V7YL2:7Z7DT87#"_9PBWE M:PT#\A1"@+@5J,5R5#4QX21,8S1.8-_N?0RWM+=1J)2! =MK9L ;^JBEBO%2 M39LT/6#?^ET,=P'>9J$R!&:OTS-@B'+44L5XJ:99&@^P8[>I "?Y;!(>8-"; M&!D%;K(%%,J@-S& 0'7A9\"S#@&$1EF8.-(DF<8#[%@\,-Z&D_& NR[>/1@5 M#Z"J"2PUTU6-$-AS;E/!4-,.4-4*5#6.JB:PU,Q.H$D(0]BFPJWA[2TJ"4%5 MXPS(>(C"!,"Q4R)-3_:^8-6=&C%MH>06\38%E4R@JG%FYWGTRQ\@*WU*I&F* M)@K,312\%DJH8(%!60P0A44MEJ.JB0DG81JCL0)S8X6C%DJHL %5K6# HC\# M=EOEJ,6*"<6:7U&L44,V\J6H1R^5W 7XVH6J5F0 ":! JA%JJ6*\5-,LC1^R M8[_A YSF9Y.^X0.(&GJ2"H9"3U*!P*$GJ4#HR)/43/. #/,;/N VA+[A UPJ MN>OBW8-1$P90U<24-GET[*Q=2-D595=>GM^5M_*7LKE5EY5@*6_4H>&/_7R[ MJ6X73S]T]=W%B>H1'^NNJU?;CPM9JHM2'Z#^?E/7W9LBG B6S9HE8"IED/","%GUCT+X:=[1^ MH?"#P4;NS(F.Y)'S)RW<1'W#T@Y! J'2#!2'-8P@2301NO%<<1JU20WR.)+-I6N99!P)15/ M*S!ZD+*L'.E+E8<= /+L!]@5P'X+Z!P .!7 :0KH5(!.4\!%!;AH"NA6@&Z1 M^S)91:8]JJC;$WQ#A-9&-CTICJM 8X)9IB]6H 3N,L0I=S2Y]_S[P/<(SH+) M[8TWF*,0S'&X\^_G 9F,27 ]F/G7DUO/GP4?B?_]X6;^BYQ-J8!,Q:!82)-S M\IF\)R:1,:[*GJG0-VW!#"L_AJ4?]@$_''+'D4P2/XL@>HTW,:8Z,'L;V- ^ M2AA WB*.]8G8ENWL\6=T'/YME1V%>\?A=U0@O'T0[C>W;N^!CYM;MX_DTJDO MB5/P.8:?DFQ\(K)79]^IS[YSC-WUV)I%D$58KL,$WW9$SEA&(IZ@($D.HGSRY_O. MNF2^+)AUAUN[5LNZ[)GKW3-LHN0U4?*;*(W_H53FR-PIJ"F(9='Z) GY*E-E M":I7Z^XZ*)K*F_4A=MVR2?ZE*5LVOM$ERR1)8(&45NL+-@)1ML%24#PORO8C M5]@$BFF,?PX@M +N+SA76T$;J/]%W#]02P,$% @ L()H5Z=0N8B7%0 M,$( !@ !X;"]W;W)K-,U&P^0R0DH2$)%B2M:/_Z?0< @K+DN,=V=O=++((X M'M[Q>P? O-@8^Z5>*]6(KT5>UB^/UDU3/3LYJ=.U*F0],)4JX? M_2WM'?:RD+6Z-OEGG37KET>S(Y&II6SSYJ/9_%VY_9SB?*G):_I7;+CO9'PD MTK9N3.$& P6%+OFO_.KX$ V8#0\,&+L!8Z*;%R(J7\M&OGIAS498[ VSX0_: M*HT&XG2)0IDW%MYJ&->\FM_\\/[F[7U]>VG]S_?O/]!?+A]=W-] M\V;^XJ2!1;#K2>HFO.()QP01V42M[IXY>??^W MT=GP^0/D3@.YTX=F_SWD/CSA:""^,:=X+YO6*F&6XK925J+YU$*6F;B2M:ZQ M_0-NM&SHE;B6&?3^N\DS7:[J1-R4Z2 1KT^N3B[%SVLEYG(IK 38+9"EL M4Z@2GE(%N-DD8JEMW4#_NC(ETH%S%#@OX"]09+\H0'3:Y:*M04_JVC%$U3 A MR&JU%J.S'=HKD"0LNM'-&O:%ZWX:S$'@/ZFO.C4)J$,ID0_TIM1(Z3]@7&8* M4(U&YL#*MU:6J6*9O8-Y6EEJR8\ V'DM-"P0M@>XGF< BRK0A*\S;0'9@7&Y M(@[@?!U+09CI6I:ERG=X#2\JD&&I+&BJ(>L0@++ (UX?-F6S8^RR1<8!-=!S M JORU17N!:H_S7HB\E!VC0?\D^F*>L)%AJ4O8M@:UJ,%R M2$2U6,L[X+Y20)95L"RK%DYG,V02\9DX+%8*J)9YOL77JL(IL5];D@95'85/ MCGZXO/QP)$ MG$70>&ST=D%[E565ZU0N>FP@P%BFML=^6<.JO[8:6;S8$C<& MXI(8#72@6L+@KT)TR4$011.PV-*8!KJJ^_.218+VM;!3V6;Z MD/39]MK2]SF@./?9][ "(7T8JVCF .@^]&1%(@9WJWU#.6/1("-D]@N$)/0N M 5'H="T05TMD2^ZT!U3%LLQ%27XD$:5* 5H0D#;OX ;$G"-,\*X;P-5: MIFR\W7"5:P@='>,BLHG/8-S 8Z3C=KE4)+I;\&TMX.(%!5WC)&9.S 8 :S_6 M^+&P "M&/ 9 HB6^@)1>S MF9!+8"28'PAD _@&O\%/./!!6M. ;Z#N2^68K+Y6J)$U4Y:MID@!OP!G1\,OP#XDO0L4+6Y%$BEANP*U8<''V6G(W/ M_PQ93<<3,1!O"F57N#3$HALP?+_49T58!OMTKDSYCBONZ.24./^&_@32/UVR M52'5/[9%!=9O&W$+TKKR(=4_ 9JV[GRJ]T<.#CLO#]QE#UFU"VAS6]*$ ME"@SPO)&[-\Y.5E&(O+;$$U1;P07A(,&8C^'7S@68JNM:#9&;)6T)("'/&%" M4RU41#W9#J'-=L=W(5XV@.\.)WN[A77F+N.?#JJ&Q4C,>9N;SD83 MHFB_!HL4WC7RB\*E(9:7*S)3V@)$"IERCD1SM RX;C)2/!8&3DCR*-4&B;+J MCH&EBT5!,N@6,@IP-(7RT(= !5!F4S]$'+ I@P1GR^+.'!@APBC+W-NSCL"& M'(:86D6M&W+[I/(;H)%,@58 ;+H#U>LT>X#V3QZ3"D:L?/).PJ2 O) &W"D7 MD/:VX]3+&S 9KG3P1L:[@>30J3:&J[]@R@(S/X)U"*+LP HP7 W_ .#\(>LE MMVD52%*Q/_DM>4H!$G'[H FM!Q3F.7N F)S8<@]O%UA9PN_48Q4QN;>_K5 0 M6U#Q3B!]L W$R>'DN?C$"[^I@3V4LV)8P%&PC#S*62\FVA?LL MT&!46(J,'L(:C\0L J+4F3Z",6ZV"-D,]%?.7>6:$WR?4\7@LZ10 +B#*Q\: MPZO@-KP2'HR%#Y$#XE!EJ_J.,N,DOQM#4B(,P&RI:2EY0_W&:!;-*],8^P70 MJR,N#<1;C&K_*7-8YB>#CKZWA&HQ.N?X@(*X'8E-,A%AFT!:+## U\]D]:7,HP/#RXV< MX+0F6SFL7.XLX_, 7WQQ='?V;SKZ?5&(B(EI@=!3:5J!2RB83F.)RC\E-!1S M:V!ZHZG@0/K5 I1!X%5XA;L_L]_*Y)GX5)J'>1D;CUP8""8V^)J90C4:G>J* M2TVD9VV-$Q$KR&WN9?*"@E7#\=@"%+&?M2.@(T7[,XC.@G19-[:-TV80C2G5$E3J*8&GY*84PPU!'"TIHM7:W*'T3*0 M:%D)J<_6F1&ZN -(7#"R9 C)T0Q4@^FJ(52->18\U__KWSF6)8L%J(8_L0FO M7H,^\9L19ZGW!E][-?8-$7[_ECZ79 7AT8-D_WF\\SSYW<-(+?ZX:&^PJH. MA>5W46\D)(Q/WF-*ST#_7X7__[KC/@ M_WVC?)3FQ'\/2?*_N9U2%R[?E8;STZ6R<5B]&PFH9H/%SQSMM!?7EGCF4_ I M-:>[>V +81Y1RB5-G!MR J3P- _KSU@#II.0VE> 8@>P) \MGCC@P*/(VN5. MG%XVL>NF08E+@ [047 +'%DHSJTS=J=89<8YR;FW+E&..VX+(A+*M@$X;J&(MBT.FB>T -4_'! MV%X-C,H^G?9A*9^J17U"='EGV,AB[3$X(25*.L]1"PH-7Z"C*QNNE\1"7E6FE;M)P0@E-MTO5Q M6[DSP>4Q#NV)1,++4*[@?CL_8S/1WTG(I/VS&+C@]Q#_@*@)^69 MP3!0&6142/;5&BPA617Q$+MZ=&[+SM />R6"Z ?V3#,N%.;?$/_<4=FJBR.\ MH"*T[6E$ !A_4<(JET3#?D)8U#]BO%=HP4GP/H%3NH&XY'(FS1M5)FT7U/2! M0^:U\:$"\[WC&(<)5C6M==?6"EVG*L]EJ?"8+,VE+MS16>E^O#8X& MA^A]O0AH!,C3&$M!D_4F[+QXCP)>LX_)7!JI7;4-A--MX?Y0%U.542<:[WQP MY(S"+B)& H/#V:V[Z-+#8#1$BBG ME9W(K.HJHNX@F87OJ]Y]6O9/'RK?N]/=I]9;U6,N>T4U>)C#].]1XG"KUGBW M^4ZY6AB=0/F(TAW/U&1[P2#W;X!/QGW$2?8I@Q)B!!+B7G>J%07F)%D9MKIL M\Z4+!0@]P$3PV*SI$B[?3I/?"Y)ME0+KE M7;L[=\8!/X'82H>EX1CHMK?J.HL&X)* MOH13!'@CD\,+I;+2 /\$C-16(.YU,(EHJY?J?D =W9SC-;U'LT[Y\.(AA9HN M6^#I,T@6\"8CN[F@N4XM=U'VS]/,#T[@GRGH;K9B;@IU"-R[VZ+Q'55*=,-= M@8V?*'A 1H!,+0ER-)Y\2+H 2YF>L5]@6M1_@+)NM+MNC5X/;P. &ZS7G#K& MWH03#(0?%,I.>-(_,=C="VL!U?NC14&IK;\L6>4R]5<8J+!=]^1X&$3^<]+: M5^BF"@EPV%VCV"E;[-+BJ_9NSPSO/G^-M[>OO._F/+ ?=U]-T"<+_P7%MY_7 M5JG>-PL[U1??\3U6C1[1CZHU5)SI?EVIE2Y+ NL^9[?>B*-:ZR@Y/3OO/4_' M_>?Q9-I_/CT3URXV=1&?BQI\KR?3TU%7"WPR&<5/L^$X?GXH&'P6F:7]N M]K%^P.G%,/R>=>5RH.J\HW(RN4"F/9H#Y\.SWO/HXOS1[]]#&'##QTM/WD&L M^Y1NGLWQYAE]P)#ZPR?*4,&!A(MI7-,I(+OA@A'5"I!FC"S?-Y8RZ^TQ MW_GC?'#PEQGN;S;D/V+ [^\I0*1]HV1X&A^X3).+Z2AZ'E\DPVFLOT_.SR_V M5^;W_?W\"*$>4ZJ;=O9VGIS.SI+A9!0WC6<7R6PV[/4:G287YYTQ34Z3LXOS M9'8Q$F^"7@15J<.' /]YX)ZC5AVS=Y9<*]CM,IE.D]GI^;WVZ>EY-[3Q>$ X?_USJ9^WRR^X:W#F$>(6>ATY*.^NKR,LG8O@G,\FB3B;;BX<1/=2O$Z>\U55W1T^.4/WWZ:C,^>QE>>Z)NE M7D< ][WS#L3.K4LJKB(]F::O*C@[BDH]CJG8FZ\4/N*;DNZV&W'B)ZIZ@S(, M'2O"N+U7P*X,%F_]W2_D&_W$RU^>?_N&?:KHMEQW9^Q3&(9+'P^G"4APB35< MB$\_8M^/B@X.'%=GT]G39^*M3.D+NKB^Q5!)$?K^&7KL_ACNU<6540GLR<)7 M08[IH<0%W,-/%S$5J=P=?(R;,AUX"B:BJE"]HI,XN@0:+M25W3E=$5VBX]&0 M-JU4?#$3YECZG;+UN)M9T=5@,L:PD@T[IU)8PD4MR6<.[R ;@!%T5'U\)W'X-8..7@#S7=Z2!_C("WQ< X06RCA&PVAVGQ Y>'B:#O MV&#X+(8ZCV3XTP\ZKR23 MXUM.NR?S70<24W1A=)>OQ KL@\30W6X07ZGZGRS5*M*;G1*IQR#"$M)O#VC\ MV8YP'[/R3?CQA-;(#%7*3'^N^$XT3LNSM)I+X/LTDD^&H7'[+Q\O!D)#W6@? MR[PY!-;1?8;HBXC>5+L?C(0,]K!,=J20A&+A7XEZ^SX,/XF^XL6,!1\]>F1L/S_$_!#8RKZ/P$6 MIFE,03_7]*DR=H#W^&FC?\ %PG\2\>K?4$L#!!0 ( +"":%&PO=V]R:W-H965T, MFDEF8!$ 29&R)3$UV51VM/>PKGJ9;]OLP4MI3W4%97X9:;-4CH\ MFGG?5H9D[IF613^-XZ/^4JJR=W;BSSZ:LQ-=NT*5]-$(6R^7TJQ?4Z%7I[VD MUQY\4O.%XX/^V4DEYW1%[G/UT>"IWTG)U9)*JW0I#,U.>^?)R]=#IO<$?U>T MLEO?!5LRU?H+/USFI[V8%:*",L<2)#YNZ(**@@5!C=\:F;WN2F;<_MY*_YNW M';9,I:4+7?Q#Y6YQVIOT1$XS61?NDU[]3(T](Y:7Z<+ZOV(5:)-!3V2U=7K9 M,$.#I2K#I_S:^&&+81(_P) V#*G7.USDM7PCG3P[,7HE#%-#&G_QIGIN**=* M#LJ5,_A5@<^=G5_\^OGRZO+Z\L/[JY.^@T0^[V<-]^O G3[ ?2S>Z=(MK/AK MF5-^F[\/33IUTE:=U^FC J^H.A2#.!)IG X>D3?HS!MX>8-O-"]P#^_GYH1X M:2N9T6D/B+=D;JAW]OUWR5'\ZA'=AIUNP\>D/ZG;X]SIH=@6(#[)7!IQGOU6 M*ZL\X#^4XA=9UD@UD23>HVDDKN1,&E7(,H_$V[<7D9!BM=!%L7ZA5R7E2,ZI M5;EB)CT3;D'B0B\K6:XCD>%+00Y$?"RW;@)EN/XM2?QFQ!MUHWS:7AV:P^)0 M7.\PK*3%L5255+@Y@0S09#A$9"P&WU.W( M?TBBX?CXQX<-;0D/1&-;>\"*!^W874Y."VK*.]QHO=G!KJHVV0+%4U1&9;1C M)CO?!W#)@+#;@>AB:RTYNU&=60HEIZI O(F]A&M]!'R %_*&Q)2H%/"T6GJP M2,>2E!$SB3\WLJC)!M?3UXQ!ASAU:MY64-_0L]00*AAA>[% MP.<%S66V%G.4);?P/U9&SY0+ZJYA=@4![&2CE[A'V5MZN(71]7S!9#+T8$!7 M P\K]!_SQ?L!,D./(@-?[@O/!W%V!U\/?9Z'VN&]3.K&XVX#TC0:#,?BLKR! MK[1AS^SR)]%D/(1;R2<).Z*T]Y =35+QP1_WD+W';'1>#)FJ::F_ G*)#X2;W4Y?X'JM\38 M-+WKF1'*5+#GOI2ZX_)H-!J+]^0>M/Y!-%V6#+ZRF0M7"MFQTS^B[I" M<_XV;;(I@K!*S;DCXPZ2J&E9(4.14CO8Z>IGVQ91_ P&:E%;FM7LS1OVHZ%O MZB5/??YD--0Z;Z[\'*Y\JV9PW[WV;X4'T0'"[X!P)*Y;KZSOAGV+(XG%=>?O MNXEVC^QQ [ MB(0T>[)D<:.KD88A/!R&MJCS]X.0C:B@75%%V*8D2DPK*.0( MM8^7K_K(*O292EL.^7L-+- +^JK0J-!#;_O*'T/8E-R*N]DM5"+JH7N@I[)< MO8OBP^9W0ZB$-85RC9&IU1Z]0Q>Y1\93':=I$21R((SY;UUSWWA7:B>X\1H% M?T,W71M?\G6AQ^3I_T!JYW?76^H"'F0QJ\::O^4O/I14#E'VG5ARXF+AI>[Q.@_P\Y; M&Q\ON LP(<=&\6*O,C@>Z*V7S9S-6*@]\L(\+G)<;# *&12;5@1C LJ'0#!< M"ZZ#"*#*OOCSF9%<*#>D5LX(/9%3E WWJG%25&LHM$!WSKAFJI*%R>6R+H,W M?]?"#FE0$S3<52C@.X,L))3@_X0%#Z+A M3*5%<\K5#%P$PSQ\5M35LQ 1$!I"Q2A1G N?KJV;N4=M)PT45CK_[Z]/;>;^ MN4 U"]1.'G[; C7 8)8^OD#%T7$\>7J#2D>C_38HS')[+E!)&@V/TSTVJ EF MLD<6J$DTA@7[+5##030>C_99H.+),Q:H870T2O=:H))H-!XWGBRZ->K1E6LR M><8V-8Y&QT]M4SO0^K=N45MSS9][U'/W*(#SV7O4(-I_DYK<(_VR1 ?"V(;6 ML;M2A;S[O1M52,__^$;5-I2'=ZJ6XO]HJ[KO94=_ZYT3P#GW;]9X$$7<>WEEMR,.;OW<2[1>S44$SL,:'XU$OE(;VP>G*O\&::H=,\%\7!+@: M)L#O,ZU=^\ 7=*\TS_X%4$L#!!0 ( +"":%>;LGT%!@4 +\- 9 M>&PO=V]R:W-H965T[D&?YD5FVO-!J2[3S1C3WX%/UT4B.2[YJ5D&ER/4OP'] J/E^W?A M-/AP@F+244Q.H7\OQ=,@\9@/R3(P M3!,:IXN!(0HCNIBF TLXG]-9E)"5JBK0&4?TP^2"IE'O&H8T"L-NB+SG<;]6 M'--TMF>[@1STD&4'$2.= >*43M.H&R8130;LXX0&84)NI04MF7MC#JA%*9U' M/9EP3J-I'SI=T'#1#V<)G._ M$:_7_'\+77+K IS4AV5>+&B$.S PQ&@(AJ)V$DZ'HH[2!4V"^!\4S[\G@!66 M2V,O0'[E;,T%M^[$=$8Q,#(-V'9D2KO",AR33%6UDB M41NBO+Z' =L2Y/Z; M#=I@;,4MR9@I2?PGT=W"86DO^!2^2-]I] MY&O]*7- TAVCJCU&<.08^14W6E6$5:IIM[$O27:T;I[X7QB2+4Z<)<&L33+" MNE'VK\\I6[HKB-PYX;\;R",4'6;T"#>Z?)U=.*/*N: M9V0:3&DG K]_!XWC6>6V)*O#63W6OTT&337Z%/[JX&2-%6G[Z\[:W4ZNVJ:\ M=V^O-I^8+C@F*F"#H<%XEHZ(;J\+[<"JVK?H:V61D'\L\88%VCG@_$8I>QBX M!;H[V_)/4$L#!!0 ( +"":%>'P20&L@( $D& 9 >&PO=V]R:W-H M965T**X5ZT]V$I60KQ8XS:;>J$5A Q3;1F(679XB8Q9(B/CQX'3:U): M8'M?L]^XVDTM*Z+P4K!GFNE\Z@T]R'!-MDPOQ/XK'NKI6;Y4,.6>L*]BN[$' MZ59I41S 1D%!>;62U\-[: &&X2> Z "(G.XJD5-Y13293:38@[31ALUN7*D. M;<11;B]EJ:4YI0:G9[?W3]?WC]\6M]?+2: -H74'Z0$\K\#1)^ 1W FNDL5@90'U50'@&5Y@>O%WGC<9P>C*,POC\O]Q;K .3R!\F[VGB@=\;C>!1:,):N8>1WTOZ+<<@]*-!7#L^ M^K*"5GL7*#=NB"ES55NNJTYOO,VI.XF1BIWF&24A"0Q(J ,9QO[X' $5)UL5V MF\STH2^B".XNSB[V+!8XNA/RBYHRILFWNFK4\6"J]>S5<*B**:NI.A0SUN#+ M6,B::KS*R5#-)*.E5:JK8>C[Z;"FO!F<'-FQ#_+D2+2ZX@W[((EJZYK*^S-6 MB;OC03"8#WSDDZDV \.3HQF=L&NF/\T^2+P->RLEKUFCN&B(9./CP6GPZBPV M\E;@=\[NU-)_8CRY%>*+>;DLCP>^ <0J5FAC@>+QE9VSJC*& .//SN:@G](H M+O^?6__%^@Y?;JEBYZ+ZS$L]/1[D U*R,6TK_5'<_])O71R6%')_BT+8*806MYO(HKR@FIX<27%'I)&&-?/' MNFJU 8XW9E&NM<17#CU]\N;]^XO/EV_?DM.K"_+^YM?7'\GEUO MR>GU]>N;ZZ.AQDQ&?EAT5L^1U4[)R57\(A#W,< [S+-QI M\)K-#DGD>R3TPVB'O:AW.[+VHN_LMK,:;[9J"/1*S6C!C@=@B&+R*QN<_/0B M2/V?=V".>\SQ+NO_&/-NJ\DA>8IA\D:(\HY7%;F9,C(6%=C,FPG1]+9B':7Y M7TP1C<_%E#83_.<-F'Z0HVT*3"ZZTY+>MK14W0M.*G-&*-@7SR 4K.EB!A17VVGLD MR[U1ZB\-A%X:I$OO>> E64K>,:I:R5#/-)DQR45):/D'"&Y&U!JL_604'6P$ M'83K3CAIE"D4H09E0TK6%/=$2]JHBKKRMV&RR!]M-6V^]0%X1V4QG7L?K7J? M9NEN[\-1^%SOL:4\V7CQU8R6&3^&RF46M#;$)H615NW\ )4YO6, @] NC5 WHEHD.2P43&JT,]WV"S.2N:514SY3=O89G#3K@^4J ML)9$LV+:B$I,..L$NK*R^@&2M!92\[]LV11?F2V*7!*F-*]MY%K%QFU%*GBD M#LEYAP4)4C+2T+JS;]]1<[\@L%,.W)CP*X<(^U94K8*R@\'DC.D6Q4R:]@3E M6:![:-HQNJ%6.AFT2%6'8A',N0,.=,E 72PJJO28-URSEP9>Z5;=N#]E:*9, M(!JA$FN@=;@AY@:"B\,(4EDVO["P[,V%MA7_\1K'MN8-5SWU^ MMCTD@O%D &,HY!?4WWDB#"[ND%87I 8#3/2$RN1/.R$#6(@SR=2,96 M:_$(:/;Q<]#7W7C-JST2^*A5<69PYZ$71JG%G7HC@'XH?=GS:E?D-N /,B_N MNA&#HWM=,N<:F2540)"DHU54L8GK/\_:?_O;@80+.(? ^[ M?,S"9#N/TG!D>81FT/ H"OUM/(IS,"[VPB0^(":Q_"?P* /U\/,8C]!3(3N! M.P.@)#>XH\@+L^0[\\A?Y9'_&(^BY &JQ/?2T3HJ#TR'G)*AH./6R,8-KU"7MSZT$4VYZ, M-V@82ALL;,=*&U'3UJ$?$I4=M4_.72L$6^N3'OF>K4=M>GA\Z.=N82!;C+#)"_.,O.R('_B^=B5 M,;3@4N3YB1U:G$AP/DE2,Y0M#<79R,1KCK/GMRE)T1J+5[?C354I^YF;B'N[C=QAIYPY$#%QE#U#[-DX)KR^8L6,WM/ M=RLT*KK].V4H5=((X/M8"#U_,1/T%[&UL[5M;<]LXLOXK M**]GRZEB9%&R?,FMRG:2G3F5F:3B9.<9(B$)8XK0@*1E[:\_7S= D)0H7W:R M^W+.BRU"0*-OZ/ZZ";U9&WM;+)0JQ?TRRXNW!XNR7+TZ/BZ2A5K*8F!6*LN?E9=G0O02DQ7\ M5ZS=W'A\()*J*,W2+P8'2YV[__+>ZZ&UX'RX9\'(+Q@QWVXCYO*]+.6[-]:L MA:79H$8?6%1>#>9T3D:Y*2V^U5A7OGO_X>K;F^,2E.CY./&KKMRJT9Y5%^)7 MDY>+0GS(4Y5VUQ^#@\#&J&;C:O0@P1NU&HCQ,!*CX6C\ +UQ$&O,],;/%,NM M.NE?10?@5;&2B7I[ \OE+U3!^_^_K?X=/CZ 9Y. D\G#U'?R]/#JTX'@A:* M;PLEKLUR)?/-W_]V/HK/7A?POFDI="%D(68FP_DJ7@GZ&8F;A;'ERU+9)?.RN_LO>5%9F2=*0*%+72W%3.=XUOD\S#D4 MXV@TB5O/HV@4Q^*ZLE;EI5AA#SK 9B9XI\S(/$R.A]%P.-SWV)",M_>(W2:? M3#Y_2("OZLYD=Y"Y_44\>KWS_&V7-:AI>'K2>CZ/)GC^7"Y:]";#B^9S/.IE M/8XF9^/.R$4T/#L5WW.Y).7\2Z7.%U)=)*:"SF2>UMY15*S_Q!1E$6@LL.%*;A#HP1]L;"J[PX"Z3[(J)6)/$C/"[I8W@],A M,='"73$*6SKR;,G M3^".>#AINV@\.J.Q2<]8H\0X/H].+V(:/&L&1^?>1CW*:QGDI.LRH('S9%6J M2_%1)CK3Y49\SL5E-4>*P=>1FW)$^J!%H^'KZ\P4I#BD%<5#\>L73F$^#%%. MYL,,[]/87MWKHJ05B=MHYC;2RJD4+$*GF)J71DAH?5U/E' (12*(-:E]NA$W M<@:/R; L$I\^74<4X:;&(N!"NVTFK_Q@/X.T;:)L";.(U"P5V$O@CM-"IQKT M%3L"+:C)\$;S2B)DE0:NT-[J'V&XV2R!CB 2H0ML91$? 3%2,:MR=M:*O4'N MRGD$GRRUS+)-5RT@]#\5!LDUR2#88E59RC5.(%Z'M!F%^+0V 1[D07WZ[%E:*HV3-4T>,3XY,8+RMHO5")XN.3:'L%[7SI.(0:)531&V;)J6TCWX-XP43=59"QK*S:]D=@ M$1PM. WG[VTX$$=;M*WZL]+ 48)*B;3*H/X_<8@@(TB&J(6SB2Q6T4?,AY= MVG@PFOPD5J#M%]2,&ZOGFIRR+XLX,CLR1LZ+:&PJ,\X2:04?+9V4,,N ,U;O MZ2!XY0."4HA&?Q@0RH"L<):0 MI0J55'3VL5H"&.%HOX0TAEARW]$'S0$"IQZ+*7:5V,"%#ORIA95%H[.3=@N-P4"[UJYB$_DV^EL$9*P4#A"P^N='+L X)@Y'T6D\)J6V M>>@_@H<79]'X_(Q&Y9U$7IKR:79N$Y1-<8&K35+M0B(,]LD";S1S"! MR;]BKC?#N).)HXY;!H@E?"3O)D'ZHEQH"U]JY[G]6NH$;EX8$N0C.:*?WIH2 M&E$ 1YBNEZO,?4%+2%@GNC/_CI9K[ DSN2P!VQ=8D<^5SWS#P63XDPMS]&'% M!S6OEFP6VH/L2,[6V+JAY!)1/#AU)$;\83\)9O>(EG!DH25=*\%L;,X7G3W: M'L5L4!XRCG0&%PJ!9[LDA5<5)M,N%I2,5*EZR#A4SED:;1Z*MS(K3),Y.M$, MO"-K$)Y"$M(E3Y\ISE(TK\HKXK-=+BY9RN2VLQDI MLE@9%W&]+I?X(\'6AAHG;:RT';9K7)%I')F44CD M;KF%BY;^1,)8$/\58VJJ=GFUI,:D7G)SYQZ6@=QV[ERK\6RR ,$Z%_< F 62 MKF4]A?13@ST7>GOPI>-%LPFFQ"JA=[A1RD&7(U:+!OLN:1I&Q#9Y;J22>7Y!L/SH)\OLAY5*J1(&_)>F;V 9AN;P(;3H:-0H-V M.M%[1U6/:>4UG4(ZV+05,(<#*;6K)-K"UPDP);ZP[P&YK0 2,A*[)4,HPMW* M:D+L";S*^3W85PRA(#-".)7_%#: PE@(2FE/,@.PM*N8ABW=L'NPI#-=)%CH M!2XZ;2IHK,70TPY0B,+NU)%\_IV 4YX+JHKBA\$F'"*AD]SD+_VIIB6AAHD: MM$<<*XH>=]IDLDYIG7B-6%-9F6SHB\>RP SVII(.&EG*6R7"[M \MO),^\ ' M2BMGTBC8U$7W8+IN)IC*_-96JS)Q58(F2X'1I-9+U"S\HTKG+IIQ>X9CI),, MF<)DSOGHG0]"V/#AESP91+V@)FS<[JIUVG7=)EJ8'^3I-ECZ&G^A']=/ M*>BAMRWGVB1-.=3=OM56]K:;5>-]W>K]K6A M.IIL^E'?.L5Q5]VN_53T])^^M:7<,E^G55.W9';]9,L''FUO/.AVFUW7V&*R M:XIN@Z!5("K-\16'_WNN*83:P+3'I74F&"ML^P'-Q-V MB]5&EGU"<*;AC0._7RRU?[\2"T=4=N_3]_); #^@(L./V*72W M:3"IFP8/[^+Z.]L[O.^,/7P4=ZOXGO/@ZWFJ);@7QN4[1Z!G5_5LI[J1S)JE MH/*4VS]]U+#_C2;$ M-F)^:D_B\7Y#:T9(%\V[.8:JMZ1$CP<=!J1HD]ZYHH=0L:%0>H= 6KM?Y, C M!W&X5T&X^AF-B9[CP6T A4J:Q.=^PP^Y=I^'@/!Z) MGSKM_3U$#L7$K1T/+H83K*EI?-Y^AP.?3OPUK(!]GO-NAFU3OTLAPX9WY7FM M#)_UN@8BHE;-'%@F9+)HP))#)_Z]$[EI2 :\6_>>22=3'$[Z]^YQ%:R=5=9% M#"SG-\W$?W$Y #82I_]6E_;['L0(U'3C:E!@Y1%"E^)UD+/<\= M,-J5COC$^5^0@M8N)B X7FZCNF .3CFI!]_5LLJ8L O@0'U(% NZ%PQ58:X! MWD7I1ZT5)$8]TSO!B=\A4#5#:(VJ#+'1*H,/IW]4+H/3:/.B/51C*ZE32B[A M9H\W!4N0>@-3TD5RLN).9I6JK[!M:T 7;:CYB6'F"'NN*NK5_ZY<04@(4Z?L MOT3$K/.Z%+>ZN V]G_:8UQV_=5"6+M+0Q:8U%!3JG-H/'N42IXG%IZ]60+I( M?]"CNE=)14Y '5)DQM*ZEQW^!03SLH8E%QM.HRXOXHSQ6F+*F0-BZ3L'^/PE M4,["#3F^VX*T3>;F8U!9'"_EU#-50$]W?8>0?;,E_J8N=P7G2C[)V8R&7,O- M3#,ZSPPR7&8DFFT R-"CV7*M'$6V$+\>::?8.L1N)>V4(X:SS?;I847R$=J% M!K.*;]YLGQ9_D[$@=#$EN9S?T96V)1^.)WA@7K?14SH-:;>TE6/.V6L;LP6^R6>3 M]E7:230^;;+JI?#1AMQO+@G54\@@,\K[B/X?GH+ Q-T*PGY^XM=/1MTX[FZ>/#$'4)!1TN;5P[W@EU\Y^K9E" KS.%>'CZHQ7]+)&VF=^/[5'U M6'//00X0]O D.CFYX Q]3\O=#9VI^HO";",%0:^NF\OAP-5.L$'?ST".6[^^ MX7J=?F-4N(SD?H@31L//F"[=KW>:Z>XW4+]RNY":_#,L'0[.)@=(\OR[(O=0 MFA7_EF=J2I3M_'&A)'(83<#W,X,*WS_0!N''7>_^%U!+ P04 " "P@FA7 M.-3UFJ ' "I$0 &0 'AL+W=O M7^UJX&I+,@N;2CT8#X<_#4JIJM[Y:7AV;\]/3>.UJNC>"M>4I;2/%Z3-YJPW MZFT??%"KPO.#P?EI+5G=QS/;!X$]% M&[?W6?!)EL8\\)?K[*PW9$"D*?7L0>+?FJ:D-3L"C,^MSUX7DC?N?]YZ_R6< M'6=92D=3HS^IS!=GO;<]D5$N&^T_F,UOU)[GA/VE1KOP5VRB[=&P)]+&>5.V MFX&@5%7\+[^T/.QM>/NM#>-VPSC@CH$"RDOIY?FI-1MAV1K>^$,X:M@-<*IB M4>;>8E5AGS^?WLUFUXO9U>UB+B:WEV)Z=[NXOOWUZG9Z?34_'7B$8,-!VKJ[ MB.[&WW#WLYB9RA=.7%4998?[!X#6X1MO\5V,7W0XI[HOCH:)& _'1R_X.^K. M>Q3\'?U?YXWNCI]WQR7SSM4RI;,>:L*175/O_(?O1C\-W[\ ]K@#>_R2]W\/ M]F5W;_KB18_BAE92BWMK4J),52LGKBL!!3R52[(LP2@1$&LRPY:\&ZVNRF4J] MD!MI.9[X_DUR,AP*;V!1:[04K_(0[9LJBDPKDR_ ,)4G@+(/R1 MOI!-%11.3<7:P7KY*-@OJ[$I5%K _))RS D2"TJ+RFBS8F3&KYI*7&!4I06[ M6OQQ)\!WE8F-1"BJM7GD7,2#6CH7@$4]I,B,L6$%0XOLZUSS=R1OT"B5C8LP M,Y.)?]BCL.-D*=,'Y+##G.!=@!TSMX]*4W"+O4QL2&9+Z)N! ^7= MMCZB-BE+S0.'+'-F&]TFU9.D[>+.3)A[&-S(NRSBQ,&EF$F/=. 4N9&;3JO? M9W-NKDX/B![VMFHM"V4Q,N;V$:H/^-5BAKTGT MN..@*^RXK( 8-<2=H*Y)ZF\U@5#[;#8)9BZ^:WJ%7%.+#GZ4W:):HF)SR,S6QC*I=M4P4TZ@9 @%KC-.S[O4 MFS ]3J*"4=1FA;N-X*3BP9X\BUNBF=BR;:2=#NU0R;:=+N1"X#@J*"N0UU'6 MSIXN*0!>JU0N-7&G;FRPK@V>H?\D^UM"E\@;##989E16*D>VQ9$0MN),#G/) M\>-#B(%$'EO$LZD%W*VRWVU^F?WY.FK9Z(O)?B[Z0CE<^4+-*DZ/#<:6X7ZU MV$.+%>2 ;2UT>O05+NYI\-P.?U]JA&-HT/. (N35E M2-20WOR_'84!)8]Z5B&>=EL$$)R,,5[X(5,_6 M 4[FD/69Y(:20\,JYI]UR1[0;#UQ>RSCZ)9V4KI.!#3 FP$O. LR><06%<8BVCSYPJ(>?0>U+H MM230 ]&W\3NZGV&3WUY9SWB[\(=EQ=<41L[:\T4(>0K?)WZ/CV MX$.ZM?)S,!?:%-_$ IN@>Q(R2QT\2[>WY0W<6?#P5?'%G,,]^R^*-SW4/+EM MTKKVOLS"FV>U/XRWK^Y.F8;O(>)C?]Y''M:X7H9:L";6J'CE&KYXX05A,?GP M8P3TR_1^LM=;G"I!4.LCBK!@^JWAL&T@)B<_R MU,9#%\Y<,%ZCK<0;U@$=07;HR-3UGWLK&^R]/I=D5^%' BX12!G?I+NGW>\0 MD_CZO3.//V+,, 2Y7VC*L778?W/20_J&'P;B%V_J\#*^-!ZO]N%C04@?RP98 MSPU.U'[A -VO,^=_ U!+ P04 " "P@FA7C5_V[G # #B!P &0 'AL M+W=O/2J+Z.DE<5F(E7&QJU/RE,+82Q%N[35QM4>0!5*DD'0XODTI('2UFX>S> M+F:F(24UWEMP354)N[]!9=IY-(J.!P]R6Y(_2!:S6FQQC?2EOK>\2WJ67%:H MG30:+!;S:#FZOIGX^^'"/Q);=[(&[\G&F!]^\R&?1T,O"!5FY!D$_SWB"I7R M1"SCYX$SZDUZX.GZR/Y7\)U]V0B'*Z.^RIS*>32-(,="-(H>3/LW'ORY\'R9 M42[\0MO='8TCR!I'ICJ 64$E=?T%B,;.F M!>MO,YM?!%<#FL5)[9.R)LM?)>-H\>'CZM/=+7Q>?KM=SQ)B1G^>9 ?T38=. M?X%^"W=&4^G@5N>8/\#B =IN,S?./>O7'@&_^A M>QUZ\C+:-\2UJT6&\X@KWJ%]Q&CQYM7HQ Z!TF..VWC9"Z%E>B@D I!ZLQ4""1VW%'46.WX"(BQ7^)U# 7F M:(4:P"-C3,,,) @#GS*9_^"7&5KB=@=^$KCH-7QOK'2Y#&WF8E@Z, 5P)@FK M#=H^G8-@YZ#QS:MI.KIZYX*4/0K;J<6?#6H",HP878*PZ(^_O'WF/ L5L!):<)3T4[SV M_@.=1I2%9(VU+$[MH>%JM_]1XZ\?F1[P$76#L-RBSO;Q:79ZS[$H,+Q)G2(? MZ%8X2*?Q\'6G=AI/7OLH!VXJ+2)47;^A[[<78GSP,DT'[**K.WZU'QSYQAWS MU65\\<2LN;3^D#B&3XU]R9/GJCWXMZQ +IF3BZ*PI@+#-GPE-F0X-8&_MI*' MB.1DY!QFKHVN4MD^%X)GP1UF3=#$%<\CS(5$#: 6EJ10RJ>X<#SU.'6^MX7- MR@#,.77*U%6H0W8GLYAS,[W4\,G)NUNAW8;IXMA@HZE[@OO3?H MNW?[Z7HW M_>Z$W4HN2(4%0X?QU44$MILHW89,'5[QC2&>"6%9\A!&ZR_P]\(8.FZ\@7ZL M+_X%4$L#!!0 ( +"":%> ,Z.'G08 %\1 9 >&PO=V]R:W-H965T MB$>@,"#!U1.5]9]\P5 $ ^E-OYL4(10 MO1V-?%I *?W05F#P36Y=*0/>NN7(5PYDQD:E'DW'X\-1*949G)_RLQMW?FKK MH)6!&R=\79;2K2]!V]798#)H'WQ6RR+0@]'Y:267< OA2W7C\&[4H62J!..5 M-<)!?C:XF+R]/*#UO.!/!2O?NQ:TDX6UW^CF*CL;C"D@T) &0I#X M:K7G_\4JKIT<#T1:^V#+QA@C*)6)O_*AR4//X&C\C,&T,9ARW-$11_F;#/+\ MU-F5<+0:T>B"M\K6&)PR5)3;X/"M0KMP_N[ZX\W[3[<7=U?7G\3-AXM/MZ>C M@+CT=I0V&)<18_H,QK'X:$THO'AO,L@V[4<83Q?4M WJ,-_NI34:,@]T8U!QO?253.!L@^SVX>QB1*NDPLG31D62-! M'*/2$N$+J;58@ "MEFJA000K[L$'Q,)5#O#-]UIJ(8VA'V5\0 O4A."%O4JT4' /?2]]JQ*"4ZD7Z!(1 M%;9T)A9K7K:P% S:9,HAH'5>H-EV"$V2GD8RY!JBD$H60GB@:T!)U5Q.#D_Y M6)*5].+EY&B.:)EX.7LS[SS%]):QTX$Z76"?!B@76(>V6=D,+Z8)POL*6'/U M.HEP!T?'\>)X-NMP#=+XIV Q]*&X;HE[G#0+>]Q]]>)H.GESXG3+;6U8:)2^8P-D19D[V-MTT*:)6 @67R=YTQ,\B^5$_=2 MU[!!?>R/EOS849DB1_BLJ9E6T:P _[J'NK3@&BATER,)LE\_$84XQU MQ!W[J#V-0OU"(-/Q28WBY_EZ)ES4+D\,[1 MT6!##]K('W-+I4(2T+Y0EIK&CURZ1AG#*KJL32]'TXDJPE$."ZM)7%D^J
  • FAQQ$TU$5CMB +<_L1Q7^!H71%]= M@F/^F;PLJKW6&XH;N6YI+;<-&Y8OI&:Y0J)F4)$(X/JZ(FJ+@+OT,A[AL.0X MUII0._EZ7.!9_8,*-1-7"AH>*E_3#3Q@M5!^#29"DI\<=:=3V#U,BYR*XJAP M7*%\(HTHQ1O)FB,L;K]0^"C@L?610Y1NFG,MYV+U&&L1\ZH,[X0H;2SO06&6 M8@@J?VX?HFB:W:9(,^+9 A""/$L:4P&&XNIYZP6RH<14HA8M:'XDS\A!$ZZM M=<;QDDQJZPDMZF2%8ZM;W79T,S%I6-+OCX7 J4IWS:K./3:P71KU-_58B#OE M;/]O_2]921LQ[L_.KC6Q<7#BL,9I';?#[%&MXCW+LT9)?DS1AG3XDEGK\YFY MOS$[-H<&/2GE5^M(EWL3BZ6HN8G%W!HG JE6\+D,V4K!)@V/4=GPXP;-%'5B M,T/(>(?H6ZP2?O3AX073AGF(GG)GR]ZT0*G" QU>#<4%:7UTD#1%V)PA$:#C MMMTJ<%0:&560V;[%W9?3V?!@+I+_S-C K_HAL01@8ZWHO\/9E =&C(\9V"1W M6Q*FG/NC\209/UU/>6P.MR5-;]\&$%5ZGT@_3H;^#.UUQLX6XI1,DPG/.O2B M\?MAF8@E&)0:'54J0RE2/I#TW$-+WR:NC1I%=?EB_LWIQAD3MGD8#YN39#XY M)$UN.?S4T:XOK%'OH[<$M^1/>YH F,SX_=L][?YZ/AF/H@SN[T)MN)/Z(4-^$'.EP5(U&A:@.]S:T-[0PZZOZF<_P-02P,$ M% @ L()H5^X$6_4*!@ >Q( !D !X;"]W;W)K&ULM5A9;]LX$/XKA-LM$D"Q==BRG0M(TA8MD&Z#.&V?:6EL$:5$E:3B M>'_]#DE)/G/T>K&IT>%.NMD6I?'O9Y*,LBIZHH2 M"GPS$S*G&A_EO*=*"32U0CGOA;X?]W+*BL[YJ:7=R/-346G."KB11%5Y3N7R M$KA8G'6"3D.X9?-,&T+O_+2D2'SJM5I2ED.AF"B(A-E9YR(XONP; M?LOPE<%"K:V)L60JQ'?S\#$]Z_@&$'!(M-% \>\>KH!SHPAA_*AU=MHMC>#Z MNM'^WMJ.MDRI@BO!O[%49V>=48>D,*,5U[=B\0%J>P9&7R*XLK]DX7B#J$.2 M2FF1U\*((&>%^Z1EV&TDMJN4LG%SXB-R:?1*$S1=X5*:2; M\CW$T ()&R"7X9,*)U!V2>1[)/3#Z E]46M89/5%/VV8D^OOES-)<*Q*FL!9 M!Z-<@;R'SOF;5T'LGSR!JM^BZC^E_0E43\L%?I4F+)>& :E( M E)C_F%<%-4,X[R2K)@36J1$S&8L 6(-\C")D(T3+A)J4D)YE@=^5*S$/--= M\KD$B:]0V&HF5"G0RG)Q1J>,,\UP/RH!=25B7K#_("54$XV@$I&CE@2,*I)2 M#39=$$-A7UMOXIM[RBM 8/46)5T: 47$/4C+Z.@:9-[=,#:CBMAL1IV%P#W% M"@2AM5@#WG[_857!RZ.PC6-J(RH341V;3 MQJD']?^"Z0S5VU>(6B^ WP/)7?2C) >E#C>0&O7!\$015B32NH-R,A428\6X M5AK7,&5MM6NS/^8QQ[6DW+JTY5:;3DPJ*8T3T>Y"Y"PA4-PS*0JSB4=PMY1I MDC$L&W+9/KLC];8\CZ?OM"5+!$H6&4NR-?^+*6=S&R8&J\*5FC%(/0=9F;*, M]10=[:T=F(V4W-C!J#D$YQ::BPHQX\:/Q),$8WMJ3E14DHC-*,0C &EB$1W% ML8FH8V(\[$X3<2+TFL1?WH[7GD=KX_AUDZY<=/XYGZP'"9Z.K& S M<%9>B+Q@'&X\#X<1N1;%W";UWX'4JM\.V;T@F__(B_UHA]KWQO& W E3*Y[7 M8<)@.!YLA,$P&K7/=ZX>EZ)PM;6IMO" TYR)JKJ"R]2E72*435!%.;C\Q,&) MVZHQA\*4)4ND*8X@6%VD*PRU-E/HZ@Z PT!ARA6NE. LM6FM-/[E#9#:55XT-\(93\8DZ\4:^J4PR,*&O9!$+3KP OC81U2*W6!UX_7 M Z?OA:/8 OA8)+Q*\3AWFJ%7MP<3-BQO"KP[IH4=?,T8@ T /ED"E.GP>T^?MSK7-$'8C?P\Q#G_9S!T+ M-ISZ\VY\UH2HZ\?_[+%AO$:U7;\LI7A@N9UP*IQ)P=Q?6%[EVY-?A>FSI^M3 MF_=[CI'^9.[?VC.U>\R^(:XR+O+"@26MLB3P1M' D.*6-(Q'AC!< M\41]8S?>C&<8-"UY5"=@[8(MT[>A#CU_-"#7.%(>DPLW-DFH)V?C&E:@;L!: MO2UX$([]0W*S?\;>WS(W.\BD*DO>#*L)51F9H7=Q0W?Q=W?P=DRKC^@W4W;/ MV5Z9G4O*4CL5N\G1#M*F,J5-H\EQ^\J-UGNMW(6R"NO6-D6.=H-NH^S&NVUZ M)[;6KQCUK":FYC;FT,)#DM%B[H;\%^!\-@U?VU40MJS[;J6]M0\".R! M]T3C3?=MH*6V7U8NW >%%;O[+/.)RCG#7LUAAJ)^=SCHN'M5\Z!%:3\O3(76 M(K?+#"AFFV' ]S,A=/-@-FB_-YW_#U!+ P04 " "P@FA7U0_6L\<# "* M"0 &0 'AL+W=O^BG M(':<+.E+$B!->[ABMZU(5-&)HDQX*9OBI1TDZF=,$L3?4N-*5&EGJE M0H1Q%(W#@G$9S*=^[4G/IZJR@DM\TF"JHF!Z?X="U;-@$!P65GR76[<0SJX&/'&MS- ;GR5:ISV[RF,Z" MR!%"@8EU"(P^S[A$(1P0T?C28@:=2:=X/#Z@_^Y])U^VS.!2B4\\M?DLN H@ MQ8Q5PJY4_0>V_KQQ>(D2QO]"W9OV*P6[]>+Y>;QP_OU-+2$[Z3"I,6Z:[#B$UC7\$Y)FQMXD"FF7^N'Q*LC M%Q_(W<5G ==8]F$8]2".XN$9O&'G[-#C#?\39QNLT?>Q7+'#<71[ANFH8SHZA_Z+3,]C#09].(T'FQQAJ8J2R3T(I 0W,(*4&ZOY MMO*54S.-N:K<#I,IE:)E7 "E)OD-F58%)*AI30(6I5![1-/_"E9CHC2E! VD M!7RACF*0)H)96K0*;$X1/%A7&?PV&(R]+1K$0*W'2="_1H2BR3%T.0:4(1:+ M+>HN3;P:#>(>&3 E^JH7^UX#-YQYG729/C^A0STG1+V1*4"=W0"7;-P3(W;=D%K6! M2U:4MP>E'CS*I$^A]X0<"KE@-0&0P>T>/C%-&7'0[8&J-"QSCAD\O&!2N1## MARSCE%XW<'EQ/9Y*&^^2EX"SW3%0%]J#. M>9+_3PZC-4+L?J4 1E'Y- MIR;53N24CY3[MDK$6M'AN18LR53_>\TW/+H?"]0[_PIP9"MIFZNR6^T>&HOF M?GT5;UXI[YC>4<"HL#-2C?J3-P'HYN9O)E:5_K;=*DMWMQ_F]%A"[01H/U/* M'B;.0/?\FO\#4$L#!!0 ( +"":%=/02E48P0 *0. 9 >&PO=V]R M:W-H965T,D&34<-D&T[&W M7>OI6"UM+5MQK9%9-@W7/\Y$K5:3@ 8;PXU<5-891M-QQQ?B5M@_NVL-L]$6 MI92-:(U4+=)B/@E.Z?%9Y-;[!7])L3*#,7*9S)2Z=Y-OY20@CI"H16$= H?' M@S@7=>V @,8_:\Q@&](Y#L<;]#]\[I#+C!MQKNJ_96FK29 %J!1SOJSMC5I] M%>M\8H=7J-KX_VC5KZ5A@(JEL:I9.P.#1K;]DS^N]V'@D)$7'-C:@7G>?2#/ M\H);/AUKM4+:K08T-_"I>F\@)UMW*+=6PUL)?G9Z^_G+Y>>K.W1Q>G.GO=V!7%L.EZ(20"*-T(_B&#ZZ0--R,D>;M&66[0/_9?< M]GM3=H2&".C[4B.H5'&"F@W3N*1U$L78T"V[DL MA,; ]\&5H4>?+0UL@3'8PQD@]2",C^.(P_$ 4B$0KVM5]%0W\8U?P8T1[F] M$ 8^L;801^@.8CAJ+L-66=1I]2!!U=[QZ1XH/0 1C] @'>[LQV93CY#+CX0G M;_Z\J[003XH2#K&SHIG! 6SJZK>CW B00"%KE_ZOUF[4M9D/%;8U?@.&!AW0 M0W2G+*_1%6RXX35LZD=$28:C/(81BS C&0P.4AQG^:%[R6),:83.E;%.Y NE M2H.,JLL=(@G!849VS#3#*8MVS"Y$'A[NV%.*8TK1%ZV,<1*9RY^I?411!FSB M@2'&418-%PS?A3@AOW\8;R$9]K](YHE4]DDD9SBE3A@LP82R7B$T3;Q"*)Q8 M_"J%Q!$&/>V8&<%9G#^G$)J2784D*$.7&$<8KS*'^-."A4/B.[ MC0(0X -X5QT0)&+/-!!&$IQG+W80&H:@MJ$@:(K#?-@W#EB:#S5"8X+S)'O/ M(GGG_8.E3@;4B01V/TR&FTW=;TWLQ1)"?\C9J\22)'[IH,SA1RQ,=X#3YP22 M8A*Q%P4"_2R-\J$E!H$,#<.XE$&;BHE+_+E/UM'@YM (O?#W(_>%MVQM?XG8 M6K=7L-/^YO%S>7]_N^1Z(>%;JQ9S<"5':1P@W=^)^HE5G;^'S)2%6XT?5G"- M%-HM@/=SI>QFX@)L+Z;3?P%02P,$% @ L()H5V7RBL,W%@ %T< !D M !X;"]W;W)K&ULW5QI<]LXTOXK*._45%)%RSIL M2\Y593OQK&O:]>O3!-G>M"O:^$;58K66VN5&[6+X\&1_[! MO5XL:WQP\NI%*1=JJNH/Y?L*/IV$53*]4H75IA"5FK\\NAP\NQJ,< *-^*=6 M:QO]+? H,V,^X8?;[.51'RE2N4IK7$+"?P_J6N4YK@1T_.$6/0I[XL3X;[_Z M#1T>#C.35EV;_*/.ZN7+H\F1R-1<-GE];]9_5^Y 9[A>:G)+_XHUCST='XFT ML;59NE&9M:AP-*R&?]!1 M:380IPN4RK2NX%L-\^I7T]M?WMW>W%Y?OOM=7%Y?WWUX]_OMNU_$^[NWM]>W M;Z;BR7N3ZU0K^_3%20W[X:R3U*U]Q6L/]ZQ](7XS1;VTXDV1J:P[_P3H#,0. M/;%7PX,+3E79$Z-^(H;]X>C >J-P^!&M-_J^P^\Z,2]XNGM!-*%GMI2I>GD$ M-F)5]:".7OW\M\%Y__D!'5G_U3M9-I829B[M251*UV@I99.)*6FWQ M^7OB_FSS3Q<(FXK9(>XEX?7)UU/#TY[]-AL/^\VNS*F6QH4^#YTEXC&MN/UP_>M+8\ 27=T]-4[G' M3^&Y>*URN99 8FJJTO!Y$C%3"UD(TQX03G)9 IUB,$3%&@Q[1+TC,!%+P+H_ M&EG5JE*9T(7X5::?K"D>=)ZK1-SDIM*93 1P2(I%;F8R%SG,414.7LFBF0/T M-!4PB8C-M*TK/6MJ?&#E7-4;>FZ;ZD$_R)G.-3PI*Y,U:-M:0JD ]=8X;J NT!1]4D!DM,I9XT% M);#6,4196!!DM5B*P?D6[25($C9=ZWH)Y\)]/_2F(/#?U&>=F@34H9#(!_JF MT$CI/V!>9E:@&K7,@94WE2Q2Q3)["^LTLM"2/P).YU9HV" <#^ \SP -5: ) MO\YT!8 .C,L5<0#7:UD*PDR7LBA4OL5K^*($&1:J DTUI/H"P!5XQ/O#H:KL M&(=LD'% #8SL'3#:LV"T9P>-ZCTP+]4E4@L&= T:!X":[;70[UZ,Q"G3E-46 M!9:B\ L+N(VF;Z[#%K"2 MK!"BX$1@PWH5<0#.:BJDFY4 2,\;TC?ESQ1V#WB 2KA>&F2 61<*#7=F=:8! MZ[PRL;T"8YG:#ONEA5W_:#2R>+8A;O3$)3$:Z$ K@8 MF"*,9$4B!K>[?4$Y8]$@(V3V+PB,Z+L$1*'3I4"8+Y MN=,>4)6*92X*<*A;\+7[]U#7$'#K\!9W%!4>@JB'I 7) ["2&R?"LG_3[?= /4&,"'%AW!:P'!Y5^$K*&U0%74PK-?AJ. M>F=] >Z:QW>BE: SA4)%-JE2&7C)RJR(!'2:N(;;: T:('XZ/4\N)A,AYR!. M %0BS6@+/P-SM-!(-*:!I0%HYLK)VKUN42[L$Q9,AZ@BK'CE*D@;%%70'&,IA]E%4%"N3FP@9-):Z76LW! M"8"E8UZ' @,.52POL)/!:2RPZ%P6B ;%U9:D1O@/K&9P!=TW#ZHZ!I0Q9"L0 M%P6@+9L*/ Y-@P<9H!=\ Y8VZO^ ^!*,-B"#]%@5RPW8%2L.SCY/SH?C/T-6 MI\.1.&1UXV!UXX,6\V:EJ@42#R'^&@#,$;O+]+YK(?%1$;@#RYUO5W[@@@:?XJ"DM>-\:>8*Q?R='^?7N M:HI?^E "<,^"MT^7X'68*H"TA<; !<$3U&I5,NB1Q3U 1& :VP89WD$[_]"& M/2!H#AG*9@;/W)$TN0Y4'W)NM=A]%?::N$'/:/PTA MG:QF$H1Q?/M4P "D"E3<97H4 M6Q:M6%H<[%"&S)_5$L-=.&QQ/-,%+2NS!VT-P/D#.'$,9G;O@^'M G!<48(A MTV53HVY4&)HZ]WO;PD5"%.W68)'"=[7\I'!KR+7D@A"#C@"A4Z:<9]6WH#)<*5#6C+>-23O3K4Q?O\7II2P\E>P M#O&D*#%?#/P X/V2]Y,$K!9)4[-J^)7%;@43<.6C!R@,*\YR=44Q.;+G[ MCPNL+.#OU&,5,;ESOHU0$.90354@?0>3Y4GP)I.#3N #D_S& F-QS5UNY-M6 MH.B(4Q(9.?K],?U.+CO 0'87DNT:>;Q"8U5A*P(/4ZKD9<3MMJ MQ.^F!!.:#/N)V+U2R(FI@62 :5I!Z[T89D%*ZG^4T)3L>8"3*\U M%:)(U1M = B%5U[W'Z_LCS)Z)CX4YC O8SN6,P,QU1J_9J90*5&GNN2***E\ M8W$A8@5%#SN9/*/TP7!8.@.;Z%9ST*\A1;MSNM:8=6'KJHER>5O[PAOQ ^%" M6@A30Q$+RP>:3ILP&NK6OA,G42R9M/ 232[EAF?"DPISU^A(%'H:=(7RLQ_( MZ*5F-9\CA6B(HI,(9WS0$-!XY^&BN/:_=B!?;7ITIA)\XF?",)3-3]YA9G3^- SZ25PDH_XH^DS@-7S^32,FR<7D[(=&_*___[8U MX/]]H_PJS8G_WR?)O_)SRN"XH%H83M/GJHHC_.U(0-5K+(KG:*>=$+O J\D5 M-TYPUK\#MA#F$:5<[L@I,N>!"B^=\5X"[P;HALSZ0ECL .;DH<43!QQX8VY= M"LE9=AV[;IJ4N#QP#SV/(?10K#_HMQTJ_8-!^KW+2>Y5:A:%WG=S^NVK=,+\ M##CV0)=H/ [BJ16V+VP>E\_+Y<92).VOJCOQ&KI5W.'?T6+KI2JHNEV :D!T MJ3Y#R,9WZ?B8VGPXIJZ%+54*.81R&8FQ+HSW8USR1EGTNZX&.1L%&U2!A-J:=BY@+4L"YM2N=VK;U!))@+#;J8A MJ(3)14?PQ2^W>:&A4Q!9)EQ^90F(#WA M:MB+M2>FQ'FD:@79% Z.+B5Y9;P@B@+"%*C5M5^O8@&ZJ149:3;KG#]LBA.$$"O,M4"^Z7_0,,17=W+!\6$LW MK7HDD QB0H8)G$N"$E\1,1#8UR0B[$:ALW9I7P*P6(RXAG4N M?(1) T;%&/ZZ/ /PRY1\=;M3 Z,Z7*M]>,U#Y;LN(;IX,&QDL?887)!2-IWG MJ 4K#7*N#0"U1B.7Z=+=Z*5X9X5$T^7,ET7>$S?H&!Z?NGO/N -2\!9CX1H" M('V%0!_R@*S-,%.#" .)#&8I&4$W%4G=.$W%7DIJ0%KHF5VF0 !7&8 3BU"S MEE7FE)RO.AT/606]!>QF?$^\YGP("XF4[Y'KTP6ZK*+V.N=*0U34QJLOBWE? MC126QEJZ7B$!MH4V*H=9KMT'NN0^ *):+UVZW3(#1$ M5GS/?Q*\DTKFI"&)K./:'./_'<$D'5]L:C L?YZ,#Y.XSH70Y!6+P'X/_Q/2 M^8A*ROK29M5P:@KNO4Z7QTWINC1T\!)XL]"YO";>L2V96&@1VO7$1^]G?&;L M!Q&9=&86&[<:[/,7 #TIKPR&@4!':=C0B (QOY:F42^?A/"% ZUX_/RKYX"+8 M\>*4KBJF*VU3E>>R4'AO MF>92K]Q=9NLHJ'\)O:_7!D>#0_2N7@0T N2I345!4^5-V'GQ#@6\9Q>3N4AC M7=T/A-,>X?%4%U,5T2":[WQPY(S"*2)& H/#O;YKQ>I@,!HBN @0(EX,$BKI MFNI.:>T#,Z:).[VP3LCNE.=0PJI(86R-(WC+NP2Z8GKI:P6 MG@L8\OA^4H"5C)P27?2CAW):V8JL4FUMUC49L/#]54"7EMW+A^N [>4>4^NM MZFO:$:.+"5C#=!N/<7JEEO@2P(-R53FZ$O01I;LOLV1[P2!W'X"[)GS$2?8I M@Q)B!!+B7G?-& 7F)%D9CCIO\KD+!0@]P$3P'K-N4S__G!9_%"YSG!BU:83^ M& 4H;S;4LF&[]\S4;\ R(-WRKMU= 7L((NWR<3K#FH4LTUJNV$NZ]V>7]X5) MX'\0IN)Y2;@[L[[GK[5L""JY36P5X(U,#CNP9:D!_@D8Z=D*<:^%241;/5>/ M ^JHMY/W]!ZM[VRE^<8EQ-2LU#X?TW9YQ[WEE/F''I*U7R@X8@:B3,T)^31> M!4EJ7*>$TU2?8%DT0T#4=K9[)0*=+W:)@#>V2\Y@8Z?&>0ZB(.K&5I34O4+9 M/@LK(UV 1)N";56^J[C,9>I;6ZC2;SOJM!_+_F-*L[/R3R4CX+!KK]FJXVS3 MXJ\QW)G9R_@T.C[>KOL.M^:>\[C&3D%O&/T%JI&_+RNE.N\5;96C_,!W6$;[ MBG%4OJ)J5?O7E5KHHB"?T>7LQF-)5'P>)&?GX\[GTV'W\W!TVOU\=BZN78CL M D\7O/A13T[/!FUQ],EH$'^:](?Q=Q>3I^)])SY.NVNSJ_<3SB[ZX>])>W\ M5(U;*D>C"V3:5W-@W#_O?!Y.K %O1>5^LM"RN/!S8;63JY\K2 'Y+(:5520I1A_N4E/ M7Q=G?@1?WCU2@,@X!DG_++X@.TTN3@?1Y^%%TC^-S>O) M>'RQ^R9EU_\?OT*HQU002%LX&"=GD_.D/QK$CX:3BV0RZ7=&#/G_F[HZSB=.0.-N'@!^C.93.)'X]-QS]RYR^ZHC^)]'O#2\Z'P>CSL=Q1Q?[/?1.K[<.]7VK^ "XI[T=YW.C=W>L$?6U+< M^U>1+K$+&/BU?^BM>WEFV!^<O:$MB3A;<.'=-#@1*XAV]J8P97NK=K,-S,=. IF*XJ M0^V1[E&IISHT9A;M+>LJ:L;DV9!M+E3+0#2$Q1#_0V7XD5. :)H5)7#'!97J71 M?(&Q2R/Y7A\>;O[MX]A :*CZ[6*9-X? .NJ+B5XPZBRU_2I82/SWRV1+"DDH M]?XW46^7BSN)?JL$WXB@7V2AOO&BYI\M"4_#K[Y<\F^=M,/Y)V, 4"%/Q^KF M'*9"#'%V)"K^%1;^4)N2?OED9NK:K.C/)?TR PZ [_'5:?\!-PB_A?/J_P!0 M2P,$% @ L()H5U[G=XR.! W!$ !D !X;"]W;W)K&ULW1C]<]HZ[%_QL=Z.WF4EWQ\M<-?2=H^[CO5&M_UL$@&^)C'/ M-M#^]T\.$)+"&&OOWO;>+[$E2[(D2[*<]I*+1SD%4.0I2W/9:4R5FIVW6C*> M0D;E&9]!CBMC+C*J$!23EIP)H$G!E*4MVS3]5D99WNBV"]R]Z+;Y7*4LAWM! MY#S+J'B^@I0O.PVKL4%\89.ITHA6MSVC$QB"^CJ[%PBU2BD)RR"7C.=$P+C3 MN+3.KWQ-7Q!\8["4E3G1EHPX?]1 /^DT3*T0I! K+8'BL( >I*D6A&K\O9;9 M*+?4C-7Y1OIM83O:,J(2>CS]SA(U[33"!DE@3.>I^L*7?\':'D_+BWDJBR]9 MKFG-!HGG4O%LS8P:9"Q?C?1I[8=C&.PU@UWHO=JHT/*:*MIM"[XD0E.C-#TI M3"VX43F6ZT,9*H&K#/E4=]C_..C?]GN7@P=RV>M]_CIXZ \^DOO/=_U>_V9( MF@]TE((\;;<4[J9Y6O%:\M5*LOT#R1'YQ',UE>0F3R"I\[=0RU)5>Z/JE7U0 MX!!F9\0Q#6*;MG- GE.:[A3RG->9OL_BE4!WOT"=/^=R1F/H-#!!)(@%-+KO MWUF^>7% 7;=4USTDO3M"X$RR&83@76,\N^^"6*T(A"[TT4__7Q M;IOP;S^YWST>%3G5\4YP>)@*@%K;\*(L;P@'J/@Q=$49+RKV M=G8%$Y;GNA"_<.(S@2?L=>6V')\0R_#\H :[=AVV';<.>S[IX54+6)!G(!C' MTT@IRV1)U70]:QO=3<>J0J%I5]>B\)3<"[Y@11.,/3B)Z[(EQ>ZL9/ BLYR' MVPL M0JV6CI.I)UVM <"TZ_!5A3\;/U [/ME[/M'QSY-XSD&MG8!@LNBT]9M MS@($/AR(G%(L(@2?'%+1M6&8##D^:5@>\PQ(,^52GFJ?K8CWI<9A=?[8E'A+ M*@QV/%0Y1\LPO>IE[!J1:U5@.S),MQH)S2"(]E?M?>/W(T[Q0]&LQMO(#0PO M] W3L:HH.XR,,#1K5)9G1,$V+!W/\*/ "".+W(S'^"#4<92P=*Z?A$3JWOA? MNE&'BL>/'_0[$BW'M$OD#HGCND;H!3MXUPN,H%)M2GH+Z:U=_.9^.L[3A3>0 MJ.+%".,G#,,J*G #PZ_LA:@0J8)*W:GX>C>^R@S\N:>O:D=_0LPS.ZJ!EE,# M@UHLFF>ZD%Z_,.I54O85LU;EQ9V!F!3_%23>N]B'KQ[?);;\=7&Y>K%OR5?_ M/3Y1@1>2)"F,D14UP#M:K/XEK #%9\7[?<25XEDQG0)-0&@"7!]S;)C6@-Z@ M_*'3_0=02P,$% @ L()H5PU8L6ZL! P1( !D !X;"]W;W)K&ULU5AM;]LV$/XKA%L4+:!%[Y:# M3J)4<6Z:,DH@H_*,%Y#CS)2+C"I\%#-3%@)H7#IEJ>E85M?,*,L[PWXY=B.& M?3Y7*$P'30>?"/K^T'>U06OS%8"FW[HE.9<+Y-_TPB@<=2T<$*41*0U"\+. * MTE0C81S?5Z"=^IW:INN7+/V"5 MD*_Q(I[*\I547Z@B@[[ M@B^)T-:(IF_*5$MO#([E>E7&2N L0S\UO+CZ\WXT'MV-OGX9D[=W=)*"?-]!+& SO#-*[MKO6\(RJN# M\DITMP7YAV+S7B VOX[-;R1LC/4?SU,@?$H45S0E$<=:C$%074Z'PFT&?/,J M="SW/3EUO:(R(05E,7F-BV^$GD>N04,D$6-)T#H1F?YTIB>XOX+&?_8%[8: F5$G"TSE4CI(Q.6,H4 ZGGY]EN MF55KT!QXVS4X2N::Q),(%U%4IP9LH?O*UDHXANL%9)0O(%=P M?!>#4S2?,1WW$4C;,E#[R"?.XR5+T[WYP+ M>T7E[HKNVCJ^T7.<#6L%?7Q" MV886V['(!YB"T#"*/CS9&'NP1A &&E7,(3YA:5M=MKN&ARJF&;=MQ9RZ?A)<2G*Q MP&J: ;F7,)VGY)I-@5R5(H\[&%M$66DR887_VP]@!ZM5WEJG:J\?R:YA_<)Z_<)&GJ\>L2%F<&B! M&AU_4 5[=5B]GU+HW@O$9EN;;S?K5VOT"<0?$6DW-"S;.272H>NU$FFW:]A! MV$3/UJ>M_7^5Z1.1_P*=KGC\29UVL?4XS3IM&3TK/"W4CN^W$VKL5BUUVG8, MK^>T$.H0M:U!IT,CP S:Z;3G&D'@M]%I*WR&3GM&UW=:Z;1M^$&P8C*MU;I1 MV#_@&[C5GFV;KM&>^4.#Z"/\._WE.5, MP9Z$5U7P# 4WMTX5,,]9>78B2;GSJP.&>K0^G[FH3B4VYM7ASF%&>44RX0E++VP0P0D !D !X;"]W;W)K&ULW5;1;MLZ#/T5P;L8-D"(;E1=/N/BLV8QNSI4Q2 MEO7O)]F)K0)=L(^KO(*6 MJ8G8 S<[.R%;IHTH2U_M);"BLYMYBUNGNY&(F#KJI.=Q)I YM MR^33-33B./="[ZRXK\M*6X6_F.U9"1O0C_L[:21_0"GJ%KBJ!4<2=G/O?7AU M'5G[SN!K#4?EK)'-9"O$-RNLBKD76$+00*XM C.?'W #36.!#(WO)TQO"&D= MW?49_6.7N\EERQ3?:".Y0>FV6(FQ1%):VW0[*)+ MM?,VY&IN#V6CI=FMC9]>W"^_+M>/2W2_O+G]M%X]K&[7Z,T#VS:@WLY\;2)8 M.S\_H5WW:.0W:!GZ(KBN%%KR HKG_KYA-M C9WK7Y"+@!O831 .,2$#H!3PZ MI$L[//KGZ;Z490\2O0QB[\F5VK,*1UC48KCZ8GM#@J0+LL!@AHZ#F*"DY@,8D1P MY+"G$0[""*VX!LF[/G*HD1BG9"03II@DHVN2X3 ;Q6F$IVF&;G5EZGU6IF2L M2XB#)!VQ<30=65$<9!2MA_9U*F=(A*%;[M#4*(Y=#8VG.(O<$Z FKS ;\>T) MKGC>' H#SIH&?:B5EO7VT-VI29SA**!_L7G^>@.\](?K.^/07,:R&_H*Y>+ =3\9!^WPKGC?C]/1O'^4 M?&&RK+E"#>R,:S"9QAZ2_:#O!2WVW7#="FU&=;>LS-L(I#4P^SLA]%FP 8;7 MUN(74$L#!!0 ( +"":%?NVH*,F@( .4% 9 >&PO=V]R:W-H965T MH-HH&WG L]]3;&%.=!H-,- MYE2?R0*%O5E)E5-C3;4.=*&09A4HYP$)PT&04R:\9%+Y'E4RD5O#F:UCSM8;XQQ!,BGH&A=H?A2/REI!QY*Q'(5F4H#"U=2[[)W/ M8A=?!3PS+/7>&5PG2RE?G7&73;W0%80<4^,8J'WM\ HY=T2VC)\-I]>E=,#] M<\M^6_5N>UE2C5>2O[#,;*;>R(,,5W3+S5R6W[#II^_X4LEU]82RCAW:C.E6 M&YDW8&OG3-1O^M9\ASW */P 0!H J>JN$U557E-#DXF2)2@7;=G3NX?GFX>G[_.YF 5^>Z)*C_CH)C&5V]T':L,QJ%O(!RQCN MI3 ;#3R/KU'MT$M./O4&X<61TN*NM/@8>[*HY0!R!4SL4!BI&&K0 MAAK,@!JPND'EKE.I#4@%PFK5"I"SWVY>L*-\BX>Z.I[WY-.(A-$%_._;CLI@ MOK0EMO.":TP;3Z_R$+AE@MF?-(.UE)GNL)\=9ACV]ARD[Y-P!"]6RZ=,G!9* MIJC?$6,_#./.&OKQ8 !S6EI)&%2,<@U49';%% 5W7[$-C(D_BM_31$._/Q[# MDS24[^4>$;\?#_8]'-6Z6C#:CFHK3*W"SMOML,M:NN_A M]0*\IVK-A :.*PL-SX9]#U2]5&K#R*(2\E(:NQ:JX\;N850NP-ZOI#2MX1)T MFSWY U!+ P04 " "P@FA7DLD1J-D$ $$0 &0 'AL+W=O8<[D$1]C05\&7.1,45<,FW(LD"6E4IXU;=/TFSE+BT:[5M*P&G/!0SH<*2UHMEMC-L0NJN_C>T&]9FTE27,L M9,H+$#@X:72LXU-?CR\'_)GB5"Z]@_:DS_D/W;E*3AJF!H09QDI;8-0\X1EF MF39$,/Z>V6S44VK%Y?>Y]=]+W\F7/I-XQK/'-%&CDT;8@ 0';)*I!S[]AC-_ M/&TOYIDLGS"MQ@91 ^*)5#R?*1."/"VJECW/UF%)(32W*-@S!;O$74U4HCQG MBK5;@D]!Z-%D3;^4KI;:!"XM]*9TE:"O*>FI]N7=W?GCU?4U=&[/X:[W[>(! MKFY[G=O+J]/K"^ATNQ>]+AST6#]#>=AJ*II2*S;CF?G3RKR]Q7P$-[Q0(PD7 M18+)JGZ3H-9X[3G>4WNGP2Z.C\ Q#;!-V]EASZG]=TI[S@?\W^1V9=7=;%4S MZ5B.68PG#:**1/&$C?:73Y9O?MV!V:TQN[NLM[L5@8 /(!ZQ8H@2T@*&G"?3 M-,LVH=UM[\NGT#:=K_"KVGO!DTFLX#R52J3]24G''EQX:6J_''Y,":Z*_"@;7 M?2,8_ _@/7#<\!UA48ZN45-Z4K,XW@C=B][:2D2&\.D-X^V:(M%"4(E+* MW\"D1"4WY8>=UK9ELU^;-+:U.U;XO>UC>61C\F[%3AQ/\@G%TAZZG2<4=+M9 MDU\*+M>#KY-SH=)_JBA]_?&6[FC?)0XF&5RG Z2<.4B+5"%D=+%)EG9:'F^% M*6CU!%9@9?FC2RX'O&HX3'.HXM0S'=<"RH(?QJ. 9'[[4 M*I9G1($+!Y9E!#I%NH856A!"3[ $"Y;CPKIO>)9#F=2P;/\0R&@8@ NWO/@M MYOD8R1,V%(BKO(P(S0$]#FL.NFM>?0;+C S+#33NT#9LQR]Q^T9$H%^/OJ*[ MR-LKMP&_%1CN[&32.&;=)7/5H;:$BA!X?K2*RM7K^M^C]J/M]I/V?_[\'/Z$ M%(<+ 5T<*-[M63P&MK>=1[X=E3RBBX'FD6.;VWCDAL0XU[ ]]Q!T8)E[\"@@ MZM'C+1[1^4K12;@# N2%&K?C&';@_60>F:L\,M_BD>.]0N69AA]YL..X].OC MTM_WN$2ITKP,3+8<2OA,5;!$H"H8MCJ]XX#=/?^^O'E 768G%'V$M#SZ:&D, M-PAT9[&;GF%2FB718LL*Z09B8$GD!A'T1DCE_4#1-/6&Z1AS MUK9E-;]NVHCF4F5*K!F6];>$F$\*516IM;0N\3M59;L87OT?H OR,"TD9#@@ M5?,HH$N+J&KNJJ/XN*QS^UP11$] @1$E_:S-@S?N;QS'AF>R%_J!V )@]%SM72G90,'4L M2N"XLA&R8!I%N?54*8&EUJC(O8#2V"M8QIW%S.INY&(F*IUG'&XD4551,/FX MA%SLYX[O/"ENL^U.&X6WF)5L"RO0W\L;B9+7>DFS KC*!"<2-G/GS#]9CLU^ MN^&?#/:J\TU,)&LA?ACA*IT[U ""'!)M/##\NX=SR'/C"&'\;'PZ[9'&L/O] MY/VKC1UC63,%YR+_-TOU;NY,')+"AE6YOA7[/Z"))S+^$I$K^TOV]=X(-R>5 MTJ)HC!%!D?'ZGSTT/'0,)O05@Z Q""SN^B"+\H)IMIA)L2?2[$9OYL.&:JT1 M7,;-I:RTQ-4,[?3BXG)Y1[[*7+) M4T@/[3V$TN()GO L@T&'*RB/24A=$M @'/ 7MO&%UE\X$%]?6+75J-_*5,*) M*ED"8>D5R[$FY8+S= M[%.74OJ:^.S2__\9?GW(GX)OAP*XA7N1WV/,W04_.'TAW[V$AC31>-21)VZ$ M\M]ZU_$7T>GSMQ_T0O?=:!P>:*8N'%(><_2"U\DF8J$15RQGBCR92J M+/^)4%JU/K[X;A"/CKIR3.D1N1.:Y1A&EQ27<'P+NJ=3-^R@-IJQ.QK' Y40 MM940#5="_128NV;;K80MTR9U,LR8$H&5[!'[/\:!ZX<@^PIE^*BW%L(MF*DPN#XB]A2AY9."ML M/G_-'C#';\W2B\;D$[V3HMKNR+_L\0V$O6V=Z!N:4G3L)E2<)"W(S>*:$<.W=B?-D8]F\=1M]E%;ACW MMA:O,^04(+=VE%/$XJ[GG5;;3HMG]9#TO+T>-:^9W&9IEDQ@%?P$ *S) TG=.9]#034OE$FALC5+>\ETW;*6498W1P,KNY&@@"LU9!G>2J")-J7RZ BX6PX;76 GN MV3S11M :#7(ZAPGH__([B:-6[25F*62*B8Q(F T;8^_R*C3Z5N$;@X7:>"@\0PHP77]V+Q#U3Q=(R_2'!E?\FBU.T(52HNT,D8$*R*#]234<#*19$&FWT9EYLJ-8:P;',;,I$2_S* MT$Z/;F_&DYL).7N@4P[J?-#2Z-1\:D65@ZO2@?^,@S[Y(C*=*'*3Q1!OV[<0 M3(W(7R&Z\H\ZG$#>)('K$-_U@R/^@CK"P/H+CD9X*+#2KGW8SF3#IK&0!$KTH,A,<4U5= MDO=O>KX;?/CCYQ7E-(N 3&R5&4>1 :H(;K2&= JRWFWR$:)*XEF)3\8VEM_' M\G4[RM7:/"->6;TEH1.V@XUQSVGW^G^\$K?K[?C]D*X+*2'3K[]2]B#(U3-P0C?8D[:=?M@A#T)3 M?H(/0X-NO[-%@V[0J\,)%9#8$1^0'JT5^L5_>6AW:.6>EA,X/=OFN$ZRH1.'['BM:9[3F] MH&-$82WJACTCZ*YU@K;)8;PSS9#HM;A7%8UJ"79"WX7:==Q>A]R"PK#&9:LG MP3:FF5T:EJ%OP/-EU_#,[[OGY*[4)(^4%["N](>/>7OJ':%96-,L/+G)546> M6X=G^X5:M>U 993%B.'9-52FX/7ENQX M=0*G"!"WS 1S<"GWB;?.]SIT12[VF;UU'H7[_@4U9NA"SBV+=Q(JI1E*7 M:&$9)33#>F7".0'GB_7IK7WS_%KU$$U:&_?1%.3=,N!UKD]G8[%1KORO8U 8HI;13P^TP( MO1J8">J_.T;_ U!+ P04 " "P@FA7A\4FL:<# 2#0 &0 'AL+W=O M)D"TC[=KU^ MV-5JX>X^A\1 U"3F;%-Z__[&"="L AQ2I;W]@CWCF<J]!DAD5^E1>U- M1HWN64]&:F/+HI;/&IE-5:7ZGUM9JNW8H]Y>\5(L5]8I_,EHG2[E5-H_UL\: M)/^ DA>5K$VA:J3E8NS=T.M;[NP;@S\+N36=.7*9S)7ZYH2O^=@C+B!9RLPZ MA!2&[_).EJ4#@C#^WF%ZARV=8W>^1_^MR1URF:=&WJGRKR*WJ[$7>RB7BW13 MVA>U_5WN\@D=7J9*T_RB;6O+N(>RC;&JVCE#!%51MV/Z8W<.'8>8G'!@.P?6 MQ-UNU$1YG]IT,M)JB[2S!C0W:5)MO"&XHG:7,K4:5@OPLY/IPY?'AZ<9NK^9 MW:#!+)V7T@Q'O@5H9^!G.YC;%H:=@$G0HZKMRJ"'.I?Y:W\?0CK$Q?9QW;*S M@%.YOD(!P8@1%IS!"PYY!@U><$&>Q])KO?EQ;_38 ^H;J;]+;_+I M XW(YS.Q\4-L_!SZ9-H^"*06R,@E,-ZB'.[R6)CG@3Y]B!D)/J.W&F6K MFT=P;U96^57B-"@ M 1VBF;)IB9Z@]ID4B(\^(DIBS),09HQC1F*8# 0.XV3H%EF(*>7H3AGK;FNI M5&Z0467>"R0B.(A)3TUC+!COJ=T623#LZ07%(:7HBU;&H+56B^)G:A\1CR&: ML*,(,8]YUZ"[%N"(_/IEO 5EV/]"F5=4.4>1A&%!'3%8A EE+4.HB!J&4+BQ M\"*&A!P#GWIJ1G <)L<80@7I,R02. 9&GF!($#M>O6((#;OR(!IV)!Y@P?ND M?:OQ"/B/]0@$( MT&[UV0&;<':D@# 2X20^64%H$ #;NH2@ @=)MVX,F$BZ'*$AP4D4OV>2O//Z MP82C 74D@=,/HNYA4_=?$S9D": ^).PBLD118]IYYO G%H@>L#A&$($)9R<) M O5,\*2K"8$@745W7\J@3(7$)7ZL+_([?6HE];+IQ@W*U*:V;"E:MFZYWKBSTT,UT!1\M4CL#6%\H M9?>"V^#P&33Y%U!+ P04 " "P@FA7@FU!+@@% !D( &0 'AL+W=O M( M0 ]1&/-):R=$DX:[MFTS%-11C$Y)HAGD819H]7)*3[2WYPC-14[BC]KDX6_J1EJA&1 MD'A"(;#\N2=S$H:*),?QHX"VRCY5X.'Q$_US-GDYF3O,R9R&_P:^V$U:PQ;R MR0:GH?A&]W^08D(]Q?-HR+-_T;ZXUVPA+^6"1D6P'$$4Q/DO?BB$. CHG@NP MBP#[I0&=(J!S%&"-S@1TBX#N48!MGPGH%0'9U(U\[IEP#A9X.F9TCYBZ6]+4 M0:9^%BWU"F+UH*P%DU<#&2>FZ\67Y>+S8CY;WJ#9?+ZZ7=XLEE_0]>KOQ7SA MKM%'-//]0'F*0[2(\R=3.?S!(0('(?\=O4,&XCO,"$=!C&[C0/ +V2B/;W8T MY3CV^=@0>J2LMMJDWD# GA_4RF'H'WD^M M_MBX/U0+2KDDV!"2MY('N MR$6;=TIH+:NIT) P!Q+F L%JAHQ*0T9O>1N,(!V A#F0,!<(5G/ ,JORQOQE MN4G?55/'"MKA6T)6]^91=@+MT_U9GW61#VI(2RORFG@T]C%[1*O-AJ@UYDGY MM)#&\D'2'%":"T6KVV%7=MAOR3M%-)0/D#0'E.9"T>H^5#6RI:WN#NJOI\\C MG*?$EX77^76H'MG8G,[S%9#=,T^D&="B%XI6U[TJ>RU]W;M0,LLJ(/"(U+KZ M$G-2;]!:MZ -#_7NM(]7G*!]NE"TNMA5Q6MIR[GIZIZPC[,PI"(BL4"KY-P' M'SVGL=*@Y2\HS86BU1VI*F"K_Z;T#UKJ@M(<4)H+1:O[4%7%EKXL?E7Z?UZR M=LSG^7JN[[JQ[* U,!2M+GM5!5OZ,KA1]A^^(%_/]1TV%ANTOH6BU<6N*EQ+ M6[Z]^G-;@3TL1/I]>W L/&A5"TISH6CUS:RJKK5_75UK/Z\*NW;GR O]>)IZ M 4ISH6BY%\;!;FI$V#;;QN8HDSC?;RQ;RZWR6;9!?-3N6)=NON%=8?+]]Z^8 M;8.8HY!L)-)L#V3"9_F6=GXB:)+MV=Y1(6B4'>X(EI:K&^3U#:7BZ41U4/[' M@NG_4$L#!!0 ( +"":%? I#<%MP( *$( 9 >&PO=V]R:W-H965T MEK5 M*XUPN_WJ?I.S:Y89D1AP]HO.U:IO75HPQP7)F)KPS75K&+^),YK^P*6,= M"Z),*AZ78IU!3)/B29[+==@2-)I[!&XI<-\K\$J!EX,6F>580Z*(WQ-\ \)$ M:S?3R-$@.=\ ==QO1IY<%@^Q$C+&[GI&KE7:KE79S MO^8>OX (\6*X2[N[M82W.3+>.T3LFXY',=AB;%6/SX'X6C'6(A:Z=Z\R_Z-J_\AQ] M?; MJ;\-NKRZ;%5!.RFUJI1:!U.Z^7T MRO@]D?/ M6?N8C$4V94J>JKQ/\+4$L#!!0 ( +"" M:%<:"Y;Y>@( /(% 9 >&PO=V]R:W-H965TYD"719BM7 MOJHDDLR!2N:'03#P2T*Y%T?N;";C2-2:48XS":HN2R)_CY&)S= [][8']W15 M:'O@QU%%5CA'_5#-I-GY'4M&2^2*"@X2\Z$W.K](^C;>!?R@N%$[:[!.ED(\ MVLTD&WJ!%80,4VT9B'FM,4'&+)&1\:OE]+J4%KB[WK)?.^_&RY(H3 3[23-= M#+W/'F28DYKI>['YAJV?CY8O%4RY)VS:V,"#M%9:E"W8*"@I;][DJ:W##L#P M[ >$+2!\#>B_ >BU@)XSVBASMBZ))G$DQ0:DC39L=N%JX]#&#>7V*\ZU-+?4 MX'0\G]Q,)]>39#1=P"A)[AZFB\GT!F9WWR?)Y&H.'V A"5K$A#_,+^'XZ 2.@')8%*)6A&))QC=0:]X!3"(.SMT9/\/3P\(*?7 M%;[G^'K_5OA]!6L(^_L);;M?J(JD./1,/RN4:_3B]^_.!\'7?6[_$]D+[_W. M>_\0>_S\2RU1;Q YY(1*6!-6(Y1(5"W13 H-#-?(U"F04M1<[ZM)DVC@$MF) MM8Z#R%_O&CT4T:CW=]JG1+ER4T5!:G,V_U=WV@VND>O75^=C,]":^?-,TTS# M6R)7E"MC*#>4P=DG,PYD,V&:C1:5:]*ET*;EW;(P0QFE#3#WN1!ZN[$)NC$? M_P%02P,$% @ L()H5ZWOR=I, P ]@H !D !X;"]W;W)K&ULK59=;]LV%/TKA%9T+;!&WW*T,K*E1)^LS(UU; M1"52(VD[^?0%^0=[1G_+G( B1[+@HJQE4M9W=BV M2',HL;AB%5#U9[UQ,RQQ/.)LC[A&*S4]J'>_9JO](E37R4IR]94HGHQ7BT^WBX^+9')[ MAR9)\N7^]FYQ^PDMO_RY2!;S%?J )FG*MY"A/>8<4TE ($PS52,%EFHY94(* M]&X&$I-"O%>$^]4,O7OS'KU!A**[G&V%PHN1+56Z.JB=MJE-F]2\%U+ST6=& M92[0G&:0&?BS\_SA&;ZMMJG;*^]YKZ;>6<$55%?(=WY#GN/YAGR2R^F>R<[_ MBS[_Z>A'F^%WA>/7>OX+>DF.Z4;5@CICF0-*6%EA^O2K*HX+ZL54#$VXP!Q. M7Y4VSVFF+S5Q([.K.@.[/@G'H\A0VA ME-!-_Y">$#RJET> Z6 :S:C6U,_.+G;#:#"R=X<;;@ %7@\T,X \/S@&S4V@ M,.I 1\;#SGAXUGBRY1RH1!5PPE0-%IB4QB)L9,*#X!^"T.UY-8!\MP>:&4#7 MCM?S:E(:7IN]1IW7Z*S7)6<[4C_CJHM03\B1A,#\Z:5E?\CY;UX+3.!D[4LVP N<-^65^B-/\/I<:U M??"0E\ W=0!"EBK4,[50)T/;[JL9B)95;<1#TRJIJ0>YJHQ!:X!ZON:,?D\T0&Z5C?^ M!U!+ P04 " "P@FA7(3G5GB;VQ38 :P=\M,E\TL2?=9L05H M8DM4$B']]Y5LQP$CW'3K%RR)X9@5AH5N>E8UM L(";&=%RVW;'IF!Y$C@FZ M8X ?B@*RO^)81NO#=_Q=B=4@SD=[^$6K9%XV-\Q63,;E@P7B'!,"6!H M,S%F]BBQ7650(O[$Z,A/RD"Y\DCIDZHLLXEAJ1&A'*5"44#Y>48+E.>*28[C MKYK4:/I4AJ?E5_;/I?/2F4?(T8+F/W F=A,C-$"&-O"0B^_T^#NJ'?(57TIS M7OZ"8XVU#) >N*!%;2Q'4&!2?>%+'8@3 \FC-W!J Z=MX%TQ<&L#][T]>+6! M]]X>_-J@=-VL?"\#%T,!IV-&CX IM&13A3+ZI;6,%R9**&O!Y+]8VHGI>OEE MM?R\7,Q6]V"V6'Q[6-TO5U_ W;<_EHMEL@8#\*.,-4?&P*Z:(:J)G6[LPK=YPK[KC@*R5BQT%",I1I[.-N M^ZC#WI2A;>+KO,9W[G02KM'^%KC6)^!8CJL9S^+]YH[.G?_7>_+3O9\%PVW$ MYI9\[A6^U:&0$A*4 ;G#J?6-TU(Z&B=M81 MW\,430RY=7+$GI$Q_?47>VC]IHM_GV1QGV1)3V1G,^4U,^5UL4]7[<6LFX>* M8EA2J /I>6K;EB]U]GP:X$N4%WGV.2B^!#F1Y07GJ.02-0B"J &=>>HWGOJ= MFGS']J85H=^G"/LDB_LD2WHB.YN:83,UPTX1ON?D&53;B&Z&*G+_1"UNX(=# MRVV);Z$#.F$4AE9+I5I&VX^"84NH&J _C((PLO5B#9J(!)UB338;F6 !NJFV M3)EB 8[2 \,"(ZZ5:="G3/LDB_LD2WHB.YN4L)F4L%.F:T'3IX'*5J52CY#I M\Y;P4A*>%_JM+6YQ"?/\('"]EA(U;+87VBU8TCGPGPQ+U(0EZF'UUD>_+F*1 M9K5%KA6&82MF.F#@!<-V.&(=,'2M(&HM]$0#[%R_MO66;EO=*=#U+%F[?FNZ MGA9PKVQQKVQ)7VSG$W-R#[([Y3J_=HS4=N&)&*Q;)VII4(NR6[E0K$4%[31' M@QI8MY9S17O.FXM.IXOQ];566_Z;DSK4I9,ZU*63EZ@N)]^N&'9G7CR=$8$' MS>F("1=,WCJ(X "]I/E!?RN<=Y/^YV76ZZ6B5[:D9CO=VP)WZ+;";IZ\*,@[ MV[9\RN$@I0T]H\%\W*1Y)6^]P>+6Q->ZR>E\H7C#?ZZFWJ*V1;.6T@ M1QO9E52.'"JKGGNJBJ#[\CWCD0I!B[*X0S!#3 'D_QM*Q6M%== \NDW_ 5!+ M P04 " "P@FA7--L"SJ<# ",$0 &0 'AL+W=OVS>,4 M"LRO:0E$WME35F AB^Q@\Y(!3FI1D=N>XX1V@3-BK9=UW1U;+VDE\HS '4.\ M*@K,_ME 3H\KR[5>*NZS0RI4A;U>EO@ .Q"/Y1V3);MS2;("",\H00SV*^O& M742NKP1UBR\9''GO&JE4GBC]I@JWR:Z<9#^^MZ96 M%U,)^]!+UD](B8:BW=U$4-LU;+]#.BGOM.,'DWDSJQOMG^_7B[NWVX_>O/ M';I"N^;QRZM[G&"&WD4@<);S][+F<1>A=V_>HSF9!S])D2D7+T*TD@&=%'>KWK:0QLF7\'P7N!L/&TCK]C M'Q"12PC=HQCS5,ZU[U7&(%F,]'73> ?CWFH56O 2Q["RY#+#@3V#M7[[BQLZ M'\>XF32+#)D-F 8=TT#G?I;I&$&MTZ4$&[.P-E-K^/-Z,G'\^=)^[J,Q%'* M9M*AF6C1U O%& >M[%(.)LTB0V8#7&&'*]3.SOZ".T8M-$G-I%EDR&Q ;=I1 MF_Z'^5F MY7-SCHQ\5\<5DXL]2BJ6D0,2*: 26$;'WKP;;91+H9DTBV8_0?.<8!S:O(,V MUT*[ Q8#$7)[V[T2QY@T)O->9'>X_&ZU82Y-U)#9@(CKO&X'G?]Q\]":&QH_ M1MTB4VY#L+U]MJL=;%L%K\39Z!!KM*Q!/"^0/ MX'PQ'%.C:!J720_-E1M,YZ=HM,$N1F/(;8CF=0/O:O>R%^TV6ZO^T''G?C@Y MY6-T*V[*K>%C]XZO!;!#_1F R_PK(IJ3;%?;?6JXJ0_8]FOSYCO%9\P.&>$H MA[V4.M=3.6Y8<_1O"H*6]6'XB0IYM*XO4\"2LFH@[^\I%2\%%:#[ +/^%U!+ M P04 " "P@FA7$R0EB-(% !9+@ &0 'AL+W=OMX)HV!S4"O20Q&E^.=H*D;TW MC#S8TH3D%RRCJ?QFS7A"A#SD&R//."5A)4IB YOFQ$A(E(Z6B^K<+5\N6"'B M**6W'.5%DA#^^('&;'\YLD9/)[Y$FZTH3QC+148V](Z*;]DMET=&2PFCA*9Y MQ%+$Z?IR=&6]]S$N!56+[Q'=YP>?47DI]XS]* ]NPLN168Z(QC00)8+(7SMZ M3>.X),EQ_&R@H[;/4GCX^8GN51Y/2:Q7]'H=A>CF8C%-(U*6+QA>U_ MI\T%.24O8'%>_43[IJTY0D&1"Y8T8CF")$KKW^2AN1$' FM\0H ; >X+G!," MNQ'8+^UAW C&+Q4XCU;=(0>23BZ#N)"RI;?R$AX>CUB@H2Q?D;>>;;W0J]?O4&O4)1BKYN M69%+4;XPA!QJV:$1-,.ZKH>%3PQKCCZR5&QSY*8A#56](2^QO4[\=)T?L!;X M!TDOD&6]1=C$>&@\>OD=S2Z0;9Z4KUXNMP?D[C.#+U*MW-/+/Q(NY=9)N:^7 MKVC0RK&F%'9K.;OBV2=X7YD@,G)953@N.G"9GUCB2CI<3)%J7KMM5KB,) M*U*1RVDP8)LT^J?OCMH,]0C&PR,HI_?W>48">CF2O>24[^AH^>LOUL3\;<@: MD+ 5),R%A'F0,!\(IAALW!ILK*,W!E,<]1:E5 P914LZUR@U;%+!RC7 ;NDX MICU?&+M#!T!VZ4+"/$B8#P13'."T#G"T#O 9"_=1' ]57*L\M^*0L)5S9)^9 MA2VLVL<=:N5,3+65-\B:]UC^(&LZ:5LI-W_2WOR)]N97JX*A.Z^5G7OG(6$K M2)@+"?,@83X03''%M'7%]']_ZD\A#08)6T'"7$B8!PGS@6"*P6:MP69@3_W9 MT;QGS>V)H\Z.U]K^SG4 ),R%A'F0,!\(ICA@WCI@KG7 51"TLP2-=N0^ID/% MKR'.0?&Q/9[V:J_MZ=S:0\)<2)@'"?.!8$KM+;,+,DQM]6_2'4T%XQ$=RAL^ M-.K#LENSZ;A7=GT?Y]8=E.:"TCQ0F@]%4VM_$&)9VMK?*,V'HJGUQUW]L;;^G\66/?7U?9WL DN:"TCQ0F@]%4SW0I8J6-E.2/U6L$_5E$62+- M,.@"^\@%MNG8?1N QGZ@-!>4YH'2?"B::H,N^[/TX=]-*DBZB>3:3S_C72P\I/+=/J%QXTUP.EN: T M#Y3F0]'4PG?!HZ5/'NL(H/ZS1R20SP ^'!0U'.4=T)GCH]4@:,@(2G-!:1XH MS8>BJ3;HDD9+FS-U.4!&'D^% U">0)8^.@! !H"@M)<4)H'2O.A:*H!NB30 MTD>!*[JF\E4@1((\H#@B]U$\\! )&B9D[X'0#-!4)H+2O- :3X43=WWT^6"6)\+_LG2 MS3M!>8)">C_X/HB/HT%GW$\&];V<6WU0F@M*\T!I/A1-K7Z7#&)],E@O"0_^ M_LOE89$,+POQ0$3H./UG@;['LYT FA&"TCQ0F@]%4YW09818GQ%^HN(EKP8- MY;G_#>H[.]L$H"$A*,T#I?E0M-H$QL'&UX3R3;6G.4?5\K_> ]N>;?=-7U6[ MA8VN>;WI^B/AFRC-44S74FI>3.4LP.M]S/6!8%FUC?:>"<&2ZN.6DI#RLH'\ M?LV8>#HH.VAWDR__!5!+ P04 " "P@FA72I@B2 0# !A"P &0 'AL M+W=OS;D0JPZ=F8;:/_]["0-3 UN1;<78CL^YYX;'U]N;R/DG4H!-+K/ M&%=]+]4ZO_1]-4\A(^I,Y,#-FX60&=%F*I>^RB60I !ES ^#(/(S0KD7]XJU M&QGWQ$HSRN%&(K7*,B(?KH")3=_#WN/"+5VFVB[X<2\G2QB#GN8WTLS\FB6A M&7!%!4<2%GUO@"^O<&0!Q8Z?%#9J9XQL*C,A[NQDE/2]P"H"!G-M*8AYK&$( MC%DFH^-W1>K5,2UP=_S(_J%(WB0S(PJ&@OVBB4[[WKF'$EB0%=.W8O,)JH0Z MEF\NF"I^T:;4L-3L>#X8_I:#R:C+Y_&Z-3-.*:\"6= M,4 #I4 KLW9+$B+1\35H0IEZ5Z\<(KXVH:U5:VNYV../4JC&3U7"H@)F;](ZQH&Y63U_W1"M M74=KNZ,)D6PH8R>("WZ:0+(R=\">K;G-2)-[E*]D+A0T*BJI.SN*NCC S8(Z MM:".4]"P,#1(1WLW!ELL 9I2C.:*EBL&/I"%] 4VDV".^@!B%2.Y"]J/1=.J@G,4RZ8 M6#XTR7!B#SP6'&SK:/ JTU3P?RQOI\SCPWQ3X7:-$^WS#=Z68.RLHB]USC,L M.'C6.GA;>;&[]$XD24Q'8[J=1B5.\*''LRW4N/TZ]S@+_:'RMF4;N^OV?O=T MGKAG;]7!V_J+G27TQ>YQLW3WF\??:9AL\_F5R"7E"C%8&*K@K&O2DF4_5TZT MR(L>:B:T^0,KAJGI@4':#>;]0@C].+%M6=U5QW\ 4$L#!!0 ( +"":%<3 MH58QB@, &L0 9 >&PO=V]R:W-H965T$O*R)%(;=EJE=>LN[?:S"T^"=6!SMFFN__ULH!0R8BF2 M]TN#C;_?Q\\'^P%W=63\F\@ )/I1Y%2LG4S*.[[QU M?"6'3.H.=[,J\0%V()_*!ZY:;N>2D@*H((PB#ONU<^,O8S_0@GK$WP2.HG>- M="K/C'W3C;MT[7AZ1I!#(K4%5C\OL(4\UTYJ'M];4Z>+J87]ZS?W+W7R*IEG M+&#+\G](*K.U,W=0"GMP7-1_T;$9&ZG!224D*UJQFD%! M:/.+?[0@>@(_/",(6D%P*IB>$82M(#P51&<$DU8PJ_Q*_(FGU'@!<%8/F;U#LIK%'IG MY;%9'D.BY/Z8?)!,V#W3L/8+S_@],HESE#"U.5/@6.^OSXBJ&L+V*,$B4YOM M>T4XI,N1N=XVWI-Q;UV&EJ+$":P=56<$\!=P-C__Y$?>+V/<;)K%ELP&3"<= MTXG)_2S3,8)&ITL)-F91;::+^,MF.O7"Q"D)FV:Q);,!L*@#%AGW9[_FCE&+;%*S:19;,AM0FW749L9E=J.+EB!ZYUUQ MR+&$5.U'(85Z&2455^4,I14G](!D!J@$3MC8J^76&.52NC;-XME_MGHXG43= M3A]0FW?4YD9J#\ 3H%)]PG55?PQ*8[+HA?:'%69K#'-III;,!D06'9'%__AV M7-A[B1]4Y\?W??AS3'\'O,# MH0+EL%=2[WJFU@UO3K9-0[*R/NL],ZE.CO5E!EA1U@/4_3UC\JVA W3_7]C\ M"U!+ P04 " "P@FA7V -S8X(& 8-P &0 'AL+W=O+D=7^H5O3(N LL3WB!SRH]>H>)1[2G\4%S?AY4@K:D1B$O " M@<6_/5F1."Y(HAX_:^BHR5D$'K]^IGOEPXN'N<\XWA%1>O4D7B0$O74(QU&%#S^ZKPQT2-)4W%#UA-IHU2Y[Y"LT.U.:ZBIX,1Q=C M^T6>X8!&7ANVT/"'$B8"PGS(&$^$$S2Q;S1Q?P_+?GGD.* MA#F0,!<2YD'"?""8) Y=:TT,#7C1KP:>JQA0F@-*G_^RZAK@*4@"!I#BC-!:5YH#0?BB8+S6B%9H#M%FK4\>?0G.KV3/X@ MKM09SU8"),T%I7F@-!^*)BNAM21UI:FUO J"9M0@T1[?QX.+V)IB'8O U(RN M!D!-1U":"TKS0&D^%$W60.L\ZFKK\2;=B^4&91$97G),>GVO:W.M-P! FG4. M*,T%I7F@-!^*)G=^:TSJ2EMJN68DPU&(R&-&TOR$ JR> @S+ZO8_J&4(2G-! M:1XHS8>BR?W?^H:ZVCC\S+>$H6#'6+$)P7E.3FP\I@.C0%<"H&8@*,T%I7F@ M-!^*)DN@-0YUM7.X9E1L/OE3N;D@/W=15FP_!T5@]T5@3+JNWDJ=[VP=0-)< M4)H'2O.A:+(.6@]35YN8-RG'Z2822T#5.##K26"F=[\J7*DSG:T 4*<2E.:! MTGPHFJR UJW4E7Z7\CN$.E3J>+N_"@0U(4%I+BC- Z7Y4#3Y)T*M$6FHCYB4)WN7!F TEQ0F@=*\Z%HL@Q: ])0^DZM M&Y#AIU-60(V0%X*S[@2@3G2V $"-05":!TKSH6BR %ICT% ;@PYY(&(G$"*. M'U$: T'XHF:Z#U!0VU+UA9 S%--Q\X8"2 8JVX2TZL$?MVH6W- M>X,"J%\(2G-!:1XHS8>BR4IH_4)#[1=^(OQ5^X3^#^:&OC54)SM;!*".(2C- M Z7Y4+1*!..C4&PO M=V]R:W-H965T-A6-GMM/'OY^=A+2(-*"R?6ELQ^?<<^OCF]M;"_FH(@"--C'C MJN]$6B?7KJOF$<1$78H$N'FS$#(FVDSETE6)!!)FH)BYON>UW9A0[@2];.U> M!CV1:D8YW$NDTC@F%A[H,M)VP0UZ"5G"&/0TN9=FYI8L(8V! M*RHXDK#H.P-\?8-;%I#M^$5AK?;&R*8R$^+13D9AW_&L(F PUY:"F,<*AL"8 M93(Z_A2D3AG3 O?'3^R?L^1-,C.B8"C8;QKJJ.]T'13"@J1,/XCU5R@2R@3. M!5/9+UKG>SMF\SQ56L0%V"B(*<^?9%/\$7L 'Q\ ^ 7 SW3G@3*5MT23H"?% M&DF[V[#9099JAC;B*+>G,M;2O*4&IX/!\.=T-!Y-1C^^C]$%&G%-^)+.&*"! M4J"561MN"4MC0*>WH EEZFQO[011CB:12!7AH>JYVDBRQ.Z\"'^3A_S!%RE4Y3^5P]H9S%ZF5=#%GM=S5Q7!FF6P M9GTP(<(U9>P<<<$O0@A3^2Q8&]72;UWF:: _V-Y>X4>'^>; O?,..U#QL&[$HQKJ^A;K?,*"_9> M]0[>55Y<7WHGDH2FJ3$-3Z626O"QY[.KU+CY/OO45OICY>WJ-JXOW(?MTWKY MW7KA'G>O0['=WAV12\H58K P*.^R8TADWD#E$RV2K&F9"6V^%]DP,DTG2+O! MO%\(H9\FM@\JV]C@+U!+ P04 " "P@FA72[6[7HP$ #6&P &0 'AL M+W=O_A0) M8Q+]RK-"S(Q$RLVY:8HX83D59WS#"O7-BIJR7)MB4S*ZK(WRS"26Y9DY M30MC/JWOW93S*=_*+"W838G$-L]I^73!,KZ;&=AXOG&;KA-9W3#GTPU=LSLF M[S?4>7* ^<_JXO+Y0MW_W-&H?N%"*NE\6O(=*BNUHE4? MZM6OK=5ZI46U4>YDJ;Y-E9V/KDFZ2)_0Q9)*FF?BDY/=W(?KXX1/Z@-("?4_X5BBM MF)I23; :QHR;R5SL)T-.3,9&WW@A$X&B8LF6&OMPW#X8L3?5PK2K0YY7YX*, M N_8Y@S9UF=$+&)KYK-XO3G1N?/_1H_>/7IG,>QVJ]@USSZU5=@C*[8,W;*8 MKXNTRG-=B/<01P^IZMZYV-"8S0Q5V 0K'YDQ__TW[%E_Z-87$A9"PB(@6"<2 M3AL)9XP^;]-3M_Y[4Z\VK1X3CW-,7(R=J?EXO+(:&<:NVY.%0YGM3@(GZ,HB MC\==^!TD)06@1% MZT:$'")"(,I 0X&*!R0M!*5%4+1N/ [-&![M,%XH!?8PR55>#FJ!1N9Y+NG7 M@J',(4[_92+2R&S'PB>>__C0[.#Q;N>RD*PL:+7C]"\!X_9OWG.0M!"4%D'1 MNI$XM&/8!:D!H&T8*"T$I450M&X\#JT8'NTO7J@!WO"UW?4)[M> H0S[Q.O_ M#J"1>0$.!C5@*)LX$S\X40,.K0X>[W6N9<)*K9>C=F_>:Y"T$)060=&Z$3BT M8=@'R7W0C@R4%H+2(BA:-QZ'K@R/MAHOY'XP^#W.)T$_\XVIM'YQ2JJ5_7!T0"Q7Q;R/WOT.W=]A#J:WWTTKM_@<\76',_ MK ZMZG.1 WY_XO6-ENNT$"AC*S64=391):K<'R+M+R3?U*Y0W_P]02P,$% @ L()H5X1$"^)J P P0\ !D M !X;"]W;W)K&ULK5==DY,P%/TK&70><^Y4+W-F1T.]LAQ ' M/^L*L[FUXWQ_:=LLWZ$:L@NR1UCP:EMA* M9FKOAB8STO"JQ.B& M;4-:2_KE!%CG/+M>XW5N5VQ^6&G!','61H0:IO9<%W<,XJ3NR\* NF! \ M0/ [@O]8"T%'"!YK(>P(*G2[C5TE+H4<)C-*CH!*M%"3%RK[BBWR56)Y4-:< MBKNEX/%DE7W-KF\SL,H6GS]<+[\L/U^#-V")\ZHI$ .PJD!:,D[+NT85EL%* M;+],$8=EQ5X)[.TZ!2^?OP+/08G!EQUI&,0%F]E<>"=MV'GGR57KB?> )S[X M1##?,9#A A4:?GJ>'Y_AVR(K?6J\^]1<>6<%UVA_ 7SG-? M9,BJ4FQ3)#8H,:1'T-(A-='YFLA$FQU*189DAL4(E) M7XG)T[N^I88G#1C'7NR/FEZ#\KW8&?7\WRAO.IV$X:CG-; P#AQ?W_/3/LKI MV2B7F".*H3QGL+K0A7J6_Z]'S:18:E(L,R0V*$+<%R$VT?2QR4J8%$M-BF6& MQ :5<)T_7^?.T]N^XT:#)IQZ[JCO-3!WZD7CE[T&%L5N/()E&M@DF$SC4>/; M)R-)C>A6S8(,Y*3!O/WJ['?[>?.=FK)&^U?NY<+5[*=R/E4CT!_Y=KC]!.FV MQ Q4:"-,.1<3\92B[;S8+CC9JX'HCG Q7JG+G9BQ$94 <7]#"+]?2 /]U)[\ M!E!+ P04 " "P@FA7G>'3$; " #;!P &0 'AL+W=O>Z><^]NN!'R7J4 FCSD&50 M4W4H"N!XLQ RIQJWL;>&MPQV*B=-3%*YD+(:AH. MI=@0::R1S2QL,BT:Y3-NGGVF)=XRQ.EP.KF;7-Y.R'0ROOIV>7YS?G5)/I.Q MX%KBDY ?C,Y9QC0#1?8CT)1EZA,:W,XBLK_WB>P1QLE-*E:*\D0-78TA&6(W MKMR?E>[]5]P'Y )=I8I,> )) W[9Q#2>$U70&$8.=A8% M<@U.^/%#I^]]:4K0>Y)%[T3V)'G=.GG=-O:P+H+LL0@.L":E!*Z;TEC2]2V= M:;?K,#@ZQG_!>C<];S&*7AIU^YU>;?1$3J^6TVN5,X4U\!5@KX[%DK,_D)"% M%#FAN5AQK;"0XVR%160J.FZ0WJ2X]S).;_!,\$L;?]#SGPEN#?U?W]G=:80ZM0W;?30OQ]X%E4O&%&PO=V]R:W-H965TBAYH:6P1D4B5I)?TZ4M2CN("L@($"7JQN,W/ M;X8S)H<;+AYD@JA@FZ5,CIQ$J7S@NC)*,".RP7-D>F;!14:4[HJE*W.!)+9& M6>H&GM=Q,T*9$P[MV$2$0[Y2*64X$2!764;$XSFF?#-R?.=I8$J7B3(#;CC, MR1)GJ.[RB= ]MU2):89,4LY X&+DG/F#<]\S!G;%/<6-W&N#<67.^8/I7,4C MQS-$F&*DC 31GS5>8)H:)R?JE'L:P_WVD_H7Z[QV9DXD7O#T!XU5,G)Z M#L2X(*M43?GF&^X<:AN]B*?2_L)FM]9S(%I)Q;.=L2;(*"N^9+L+Q)Y!$!PP M"'8&@>4N-K*4ET21<"CX!H19K=5,P[IJK34<9>949DKH6:KM5#@=WX^O[\8P M'5_E.4+H36-WF(7=P MC6R%,,6(+YGUH0JN$&E5BYA"&,B<1#AR=*9+%&MTPH\?_([WN0:Q62(VZ]0U MHBD6RI:0H["Q91$"GZ=T::-<&_4 M\ZL?TZ>BN,2+CN*YO3CG7.EKV#83_?!!81;H^07GZJEC M[N+R*17^!5!+ P04 " "P@FA7WS@(ZX$" "Y!@ &0 'AL+W=OS"3;!J,+.=T/W[V8:B-*'9'O8"OO8]Q^?8W$O2JAOA,Z?,=.C^AX]@?@T\/P&60: M/K)P_![N:J>]7=S;Q9;/_[O=(2\M.!@&FX*ZD#7)8.+HBI$@-N"DGS^-(N_K MD+/_1/;.I]_[] ^QI]>THOJCR-&*\^%K:_&1Q9M2WZ2^%WNCQ-UL>]C/PB'V MQGW6.W%!+RXX*.Y)%_8IK4YKP3.0@^I:@G!KWW//"W;$[2?%010-:PM[;>%! M;7/2Z/)2("AA$NEO7O>WNF84!F6&>PH"/ YV#W$_RX_#\_-AH5$O-#HH])XK MPH8T17M7-L9A$.UHVL^*/1S[.YKO:; M,%D$ #7%P &0 'AL+W=OV,^I( M/N>@(5RR,[(&F'QRX+0'')Q2YPK8)L\A_35#&=E.+-=Z>?"0 M+E=/2M2JWRF)^]X7@5P3_6$*O(O2.;5*_(A36[=)[$5P(.9R. M*=D"*M%"35X4Z1=LD5>*Y4"9/T+VT]7L.@(7\WGT. (D82#%8$I)LTRP#[T/$89JQ#P+Z M91Z"]^\^@'<2\;@B&P9QPL8V%ZV5[[3CJF6SLF7>*RWSP0W!?,5 A!.4*/B1 MGC_2\&V14AV5]Q+5S-,*SM'Z#/C.7\!S/%_1GDL]_=\-UM)#/?T&4D%W7Z5' M;VY\(PR_'C=^H>>_IJ<=$*K>+O5Z:CVY'IZS-8S1Q!(+'D/T&5G3/_]P ^=O M5=0FQ4*38I$AL4:G].I.Z>G4IS.801PC #EX0LL4XQ0O90^M$4V):@K-2KV@ MT),UY7DZ=/N!,[:?]]-6H;R1UT2%2JU!T$1%AU -X_W:>%]K_ 9!MJ%(%#!> MF04P^4^LGO*)L#6*NJ"@!0F[$-\9M3+2NGAC1H,Z MH\&Q$PSA1#^U!ATO8M*XK4ESJ4)U)F"HU&I/P.C0&QN6A[7EH=;R/27))N9G M*HM:YJF3R*18:%(L,B36B']4QS\R7&=')CO%I%AH4BPR)-;H%-?9?34[ABMM M);@_.P?#4:_76@^4L*!=14.U6GO=B ["FO;W-@VNX7JK%SQU6%9J^HJK "E* MKJF&-9/T=DEZOZWJ5M('RJX"U:F["DRW\.J=O#6IW8;#U7XZGU1[*ZGFN.^/ M@G8T*EAG3H9*6&=.1@=?VC2^^ZAW]5_U8MS=:WB!VUDACD&% M1Z&B0ZBF]=V6Q#6W)ZFD@@.FCT&%1Z&B0ZC2M+UW@)DCNBQ.CAF(R0;S\H"N M?EJ?3E\49[*MYS/W/"S/F'8I&ULK51K3]LP%/TK MEH&-1>/,@-0Z"EGA9SB3*GRU'%DDD%.Y#$OH= G&RYRHG0HMHXL!9#4@G+F M^*X[?-V[I-E-FPXG"DFPA M!G57W@@=.1U+2G,H).4%$K"9XIEW.A^8?)OPE4(M]];(.'G@_-$$JW2*72,( M&"3*,!#]VL$<&#-$6L:WEA-WGS3 _?4S^V?K77MY(!+FG-W35&53/,$HA0VI MF+KE]06T?H:&+^%,VB>JVUP7HZ22BN U$B9;LYF%K8U%:S>T,+<8*Z%/J<:I:'E]O;A?75ZB MV=4"7:\OSF_1ZFH]NUJNSB[/T2R.S]4FHT+>G$-^@)>=I31E#APM0 MA#)YI%/NX@4Z/#A"!X@6:)WQ2I(BE:&CM$KS+2=I%9TUBOQ7%,50'J/ _8!\ MUP]ZX/.WX0M(--RSRI(D,,6Z M^22('>#H_3MOY'[JL_R?R%X4(.@*$+S%'BT%EQ)MVROOL]K@1Q9OIL8NFDS& M)^/0V>U[Z,DZ\49>E_5"W* 3-WA3W"Q)JKQB1$&*Z,]_E&G)T/OO#7Y3,1Y. MAK](_4-2H]39:SHS\+X0L:6%1 PV&N8>CX<8B6:(-('BI>W#!ZYT5]MEIN 9 M>&PO=V]R:W-H965TWJ.&]][;(_V+/G) M-Y0*\"L*8SXV-D)LSX=#OMC0B/ SMJ6Q?+)B242$O$W60[Y-*%EF25$X1*;I M#",2Q,9DE'WVD$Q&;"?"(*8/">"[*"+)^P4-V7YL0./C@\=@O1'I!\/):$O6 M=$[%\_8AD7?# F491#3F 8M!0E=C8PK/9]A*$[*(OP.ZYY5KD$IY9>QG>G.S M'!MFRHB&="%2""+_O=$9#<,42?+X)PO(06$>-FS'2;SDHZ&0 M7--O'"YR7A<'7JB%UYQNSP VOP-D(JQ(G^G3+^E"IL,L'=73AW*$BF%"Q3"A M# ^WT='H5XD[H%EJM'1JGO,M6="Q(><>I\D;-2:__P8=\P^5U)[ :L)Q(1SK MT.5 KH(X$!2$CW$1 M5F-L%8RMSHRGB\4NVH5$R Q,M6OBJJ3H,$1([M M^$=ZIA:8GL)I,OY#I]UIA_3Z%]P16$P[-L@6;O4Z?'*XV,5PK[7.UM[$E MS%2_CK#B&&#_$RC'_)2S.JR-<]F^H;9)3F:9DZ*)=)YA5O'Y)MBJ![?7UMT7 M6EUVV;PA[G520:T9.%E\3VAU\:4/@-V-0*MU@A@8'+$JA]$$%O'3585 MYKBHI.5WM0G ;K*B2KAX.0O!.2:)ZR6:= M4NNR2O< /[$/=+&)6>ZGKDED75?9[I._W M^H62/OGD+9F>T.I22YN ['ZWH[2NXV3Q/:'5Q9?6 G6W%NV5KND:'!LV"H0B MRO*LENE66@ND;^B]U;GF!L/ ANAX2TH59B&[349I)9#>2G2IGU0*=.^K[0ZK)+JX!AKQ4/:YW'R>)[0JN++^T%[FXOVC?AF];!;ZQC54%N MRP8KKIP9=#\T.*7>X>8)P4"A0175*J*T$UAO)TZM'I_ ::I'E\R#J&'EX"\] M=?V+).L@YB"D*PEEGKFR!R2'@\S#C6#;["SPE0G!HNQR0Z5M2M( ^7S%F/BX M28\7B^/DR7]02P,$% @ L8)H5_[0%&ULK59K;]HP%/TK5E9-K;0U3Z!C$ E(VB+UI4+7 MSVYR(5:3.+,-=/OULYV0\4A1M_8+V,XYY]Y[[/BFMZ+LF2< KUD:<[[1B)$ MT35-'B6087Y*"\CEDQEE&19RRN8F+QC@6).RU'0LJVUFF.2&W]-K=\SOT85( M20YW#/%%EF'V:P@I7?4-VU@OW)-Y(M2"Z?<*/(<)B(?BCLF96:O$)(.<$YHC M!K.^,;"[84OA-> '@17?&"-5R1.ESVHRCON&I1*"%"*A%+#\6\((TE0)R31^ M5II&'5(1-\=K]7-=NZSE"7,8T?21Q"+I&V<&BF&&%ZFXIZM+J.K1"48TY?H7 MK2JL9:!HP07-*K+,("-Y^8]?*A\V"%*GF>!4!&>7X+U"<"N"^]8(7D7PWAJA M51%TZ699NS8NP +[/497B"FT5%,#[;YF2[](KL[)1##YE$B>\"]N;X/'\=45 M&MP$Z'9Z&=ZC\)@$Z/CI!1Q*!I@E=<)S'O&<*F:6*94951L,R(^>5C%QT37.15_T\+^C;YGA MUN?%U7KN.\Y+TYZ7JEZSJKH,N[S $?0->=MQ8$LP_,^?[+;UO;%C> MG(ZW#0KV06W7.ML&A0V@=L>N05NEMNI26_]X'6?'A0:,[>V88&YZ?7-:RR$7Y MAM:K=8L>Z,ZTLSZTNR.[83V0+;WLP'_ER^^!:\SF).]0( ,P) 9 >&PO=V]R:W-H965TDUH*GI&+&5V99IB$4."Q27+(%5WEHPG6*HN7YDB MXX"C7)10T[$LWTPP28VPFU][Y&&7K24E*3QR)-9)@OGO 5"V[1FV\79A0E:Q MU!?,L)OA%4Q!/F6/7/7,RB4B":2"L!1Q6/:,OGTU[.CQ^8"?!+9BIXUT)7/& M7G1G'/4,2P,!A874#EC];6 (E&HCA?&K]#2J*;5PM_WF_CVO7=4RQP*&C#Z3 M2,8]HVV@")9X3>6$;6^AK,?3?@M&1?Z+MN58RT"+M9 L*<6*("%I\8]?RQQV M!';KB, I!K:DBJG^)41L_CNSO4OQ^AA]GM]02-[V?]^YOQX.X:]:?3Z]D47:!^PK@D?W > M/;RJ-20 J36D$R,ID8"H>AH1(JG$Z8K,*2 L!$B!SD<@,:'BBW)YFH[0^=D7 M=*;&H5G,U@*GD>B:4A6B<;JKXJ@R=*D,G]W./^%T+2=2"4N7C8S$5(5T<":DN@6+*5OV4^MV^$AE> M0,]0+Z\ O@$C_/S)]JUO=7G\)[-WZ;A5.FZ3>S@!_3&)@".V//; !H6%GUOH M#\\FM%M!T#4WNU4TSG-B%:VJBE9C%0J\50=>J+P=<,^RW3WP1NL3P;T*W/L( MW*L#]P[ 7&ULK5A= M;]LV%/TKA%9T+=!$HF3)=FH;6.P-*[!A09VLS[1$6T0E4B.IN-VO'RDI^HAI M+D[U8HO2/4?GD+R^EUX<&?\J4HPE^)9G5"R=5,KBQG5%G.([!G/ MD51#?G!%P3%**E">N;[G16Z."'56B^K>'5\M6"DS0O$=!Z+,<\2_W^*,'9<. M=)YN?":'5.H;[FI1H />8OE0W'$U!3LG0\K0AG.):: JFO1[S&6::9E(Y_&E*G?:<&]J^?V'^K MS"LS.R3PFF5?2"+3I3-S0(+WJ,SD9W;\'3>&0LT7LTQ4G^!8QT9S!\2ED"QO MP$I!3FC]C;XU$]$#P,D9@-\ _)<"@@805$9K996M#9)HM>#L"+B.5FSZHIJ; M"JW<$*J7<2NY>DH43JXVO][>@RNP5=LC*3,,V![$+"\0_?ZS4-.QD^#=!DM$ M,O%>A3UL-^#=F_?@#2 4W*>L%(@F8N%*I43SN7'SUMOZK?Z9MVYQ<0T"[P/P M/3\PP-=V^ ;'"@XKN#^$N\I_.PE^.PE^Q1>.FH M#!*8/V)G]?8G&'D?399&(AL8#%J#@8U]M4T9EU<2\[Q:4Y/7FB"J"'3N/ZY@ MX(=PX3[V31BB?!]V40-UDU;=Q*KN#T8/=G$U/AR(@^$T>*;.%#;WII%97MC* M"ZWR'BC*U?21?W%29T1"1,Q**H':_/4=(D2):(Q5[@AIS(?P1-H5]*/),P.F MJ,CSS/JC5G]DU7_/),I -ICD#X!BXTQ'ABGT F_^3*@I;#HY-]/35NG4KE3+ MRQBB)F56Z*7).!+9P.6L=3E[U:_-;$R#(Y$-#,Y;@_,?S.>Y*9^]DW0PAC4BO; MQ0LS$MO0>U?4X>1UN\_:#%QLJ&QLH0=;ZQ@EWI MA_;:ORXYQZI3*70#HTY-JKV7MB)KI[MX<49B&YKON@DX?=T.'+65&(MM:+)K M)J"UE+]H!\Y.NW;/Z[65C9'_"ZL5NKW#IC[I_XGX@5 !,KQ7..]ZJO8PKP_/ M]4"RHCI_[IA4I]GJ,L4HP5P'J.=[QN330!]IV[\P5O\!4$L#!!0 ( +&" M:%?NU93C; ( %\& 9 >&PO=V]R:W-H965TUY8TJK6 M=L'/LY94L )]W]Y),_.'+"5M@"LJ.)*PG7E?P^MY:L^[ [\H'-31&%DG&R$> M[.1'.?,"*P@8%-IF(.:VAQM@S"8R,O[T.;T!:0./Q\_9;YUWXV5#%-P(]IN6 MNIYYJ8=*V)(=TTMQ^ Z]G\CF*P13[HH._=G 0\5.:='TP49!0WEW)X_][ SF5"Z))GDEQ0-*>-MGLP%EUT48@\6C<&B_X'% RQ^#Q:/P>+7L#"-/X?CM&2@)>_1DC%:\IJ&TW%4 M.J#2DZBUT+8"7];B:(6EKSZ92% O^H7]C6^Y/(BG*%&&Q-8'"5& .R M:V?=1(O6M9"-T*8AN6%M_@ @[0&SOQ5"/T]L5QK^*?E?4$L#!!0 ( +&" M:%<.@SO"]@< $5- 9 >&PO=V]R:W-H965T;"==8B )&:S BF9)NGUF9-H6JA=7HIT4V(\?)2NF M:_[@6A/RZO,O5UF!+F4:)2(LH2TDN M9I>]*_41B5B$LD1P]6.K6-YGSW^* MND/#DA=F<5']3Y[KLDZ/A*M"9DE=61U!$J6;O_RE#L1.!<\[4L&K*WBG5O#K M"OZI%8*Z0G!JA6%=H>KZ8-/W*G"42SZYR+-GDI>E%:W\4$6_JJWB%:7E#^5! MYFIOI.K)"677C^1WXCF>2VYR,8TDN>5A%$?R!WE/A>117'P@[TB4DL=%MBIX M.BTN!E*U7-8?A'4K-YM6O".M!.1SELI%05@Z%=.&^M1>_]Q2?Z!ZO.VV]]KM M:\\*O%K-^ZK3OVTZ_O6!DO?O/C3URXYY$,L^\3<8WX*A& RS8Z@(%<:M,%XS MQ@B6O_V-^!77/\I]D@U'<[VI%337*A7N8['DH;CL*0DK1+X6ON+X['/L7@_5NF$\KQIJ*G3OCT;:8$9KA-C1#:VB:)*LI,%9*V\ @810) M8R"8D8K1-A6C3@(Q0H8>":-(& /!C-"/MZ$?6\^"3VFHQH>%*"_0,I,\)JD: M7<9B+7(USB,Y5\.QIM18J6U3@X31#@+B<69*CC,P.H3:1K=Y%'Q(7Q<$&^KW@N14Z4ST1YSX50$8KD26W6-QCUQUVTR2HVX72*)3& M4#0S =KQNE97-ZE'^V06O:B3(USP7+FM,'O+=MFIK?,#]<0US7!>;O]0RWZ& MW76UWW7MAO>(EMWF65*IUM^U:K%&U?+(*I51W*!O#V(IZZ+UC=C&_$%],Y1& MH32&HIEIUA[;/>LF<% O#:51*(VA:&8"M)]VK9YQ\MCB9I(=U3HI4)M=TPQ5 M\_N']N]G.&A/.VC/[J"/J-J=R*-L2OBLU*E3-,MN&>T'T39/4!J%TAB*9J93 MNWG/[:1>'M2S0VD42F,HFID [=D]JR5MI5YV5.ND0'U\3=M3KWWQ0K5I!EO[ M<\_NSX^(UW4Y+7'/I;#?'+?#6X?<;Z:KF,HY _Q8(DRB]&*7G/"\+)4N2A2&73BH]K.[)U^-N\@2UW% :A=(8 MBF8F0%MNSSZOW4F>H':\INW+DWL@3U"CC:*98==&V[,;[2/R]/#E]OZ-@1/4 M=4-I%$IC*)JY^E&;<]_II$P^U$Y#:11*8RB:F0!MIWW[Y'@79;(C6R?';5:F MT9XR05ME*)H9=FVB?;N)?D.9CH^9[-S6L8%TN8@@W^V;UOGYC'J#6&DJC4!I#T[D.M-91&H32&HID)T-;: MM\^9UY=J_00)";EJ[L@#$S7,>%[#*?^9BG)C;[1UP*%6&D4S ZZMM&^WTJ<_ MMF,'M3X'S@Y2Y^Q?!]XLPJQ%S(AHE^O;7>[5FD=Q=9T\\4<(-;C\U)Q1CJV,PGPK0=#3K-%3^*/"%QQM.F<-J1K1\/@UI5*(VA:&9RM%4- MNLW\!E ["J51*(VA:&8"M&D-[*;U:C[/Q;R\K;_,HS2,ECPF/,E6J2P'Y=L% M%._54-TV2*];.3#\^\OA;NR'TSH54'>*HIFIT.XTL,\+MWAXU3^XXGA-0PY[ M@ZV##76B*)H9[)T'A>U.],A5X2\ARY][-JLM46/TH8842J-0&D/1S!QIVQIT M6[4=0)THE$:A-(:BF0G03C1X8]5V*R-4PW:'@^ZP092@QA-*8RB:&6]M/ .[ M\=R] L25$A5O2!%TLCR#UXB\$II1CJR,Q(:D<9='KH^*'Z$9>%JZ%_ M\\45:C&A- JE,13-S)'VN$&W9Y #J)>%TBB4QE T\X4@VAD/[(]V'F-5"+R>?7^KH*$I7G:O%%J^^WV'6%7U9NQ!KKX MY@5CGZO)D$*)_DQ5=?IC=1'--^_LVFS(;%F]E.HIDS)+JH\+P:&ULM9IK;Z,X%(;_BL6.5C/2; #GUG:32$WL M:D:::JIVNOO9 2=! Y@%)^E(^^/77 IQ2MP0G>V'!@CGL?W:'//&GNQ%^C/; M<"[12Q3&V=3:2)G*R^68DT8E*=IFL[2U+._"(H"FWL.",[ M8D%LS2;%M8=T-A%;&08Q?TA1MHTBEOZ:\U#LIY9KO5YX#-8;F5^P9Y.$K?D3 ME\_)0ZK.[)KB!Q&/LT#$*.6KJ77KWE!\E0<4=_P5\'UV<(SRIBR%^)F??/6G MEI/7B(?)\*L^(_VU;V.A;QM)D54!:L:1$%\( SD+_21<,F" M,/MDNND#"F+T8R.V&8O][//1^<26JJ)Y<;9756I>5@J?J-0UNA>QW&2(QC[W M]7A;-;!N)7YMY1P;@4\\Z:&^\QEA!_?1\Q-!'S]\:JG7PHPAW%,8M\!@ X:8 M,=\]V4/NH,"X!@SM@EGTVZRA'E\ M:JFDE?%TQZW9[[^Y(^?/-JTA80021H%@FOJ#6OU!0>^?'&-+V2;] %)Z2!B! MA%$@F";]L)9^:!SXS_$VXS[*+Z,5Y^@CRQ!#"4\]'LNV!W1>\MPRN>9S\F[F M]!S''0\G]NY0<&/!706'A%$@F";XJ!9\9,XT[.54IC$&=AWND# "":- ,$W] M<:W^^*),,X:4'A)&(&$4"*9)?U5+?P6<:4J>BX\R#3Y.-,9RN^H-":- ,$WO MZUKO:Z/>L)U&L/A7)1VJC @]4%I M!)1&H6AZ!QPX/M?X,-PF21AX;!ER9233M;)J[Z>?"ODF_QRG'W/1G66'I%$H MFBX[;F3'Y^>@TR\^9DKGQP"21D!I%(JF]T?CO\^Z/Y/7Y2!0-PQ*(Z T"D73EZ8: M0XR-?N^B'%0ACW/0FY^#S$5WE1V41J%HNNR-#<9F&_S(=R+>5RYJI: MSNRU"@YI11>@- )*HU TO5L:FXSQ1>D(@_IB4!H!I5$HFMX!C2_&[RS_EG,R M6HI4Q1;/!U/%J0>CM5M W3(HC8#2:$4;'61:J=%;D_S"RN#&R^)WEVF25"J7<'>>MB@W/ M7#(Q%]-YT('Z4RB:+G'C3[%Y@?8;EY*G2*RJ.;)59U"O"DHCH#0*1=,[H_&J M^++U6@RZ8 M*(Z T"D73.Z!QK=CL6CO.C* &%I1&*MKA5-$_G,HJN4&-J7VP M23'BZ;K8'9HA+Y_]RIU\]=5Z!^IML>_RZ#IQ;VBYC[3!E-M:[PO[E*&0KQ32 MZ8U5]DS+G:+EB11)L15R*:0447&XX&ULK5A=;]HP%/TK5C9-G=21..&S Z0"K=9)W:K2=L^&7"!J$F>V ^V_ MGYV$0%AB!@L/$"?W'-]SXYQO>5*J!/FL!^1)4Q!/$Y4!1$_JQA#+ZOF&0>OS-2(Y]3 ?>/ MM^RWB7@I9D8XC*G_RW/%:F!T#>3"@L2^>*2;;Y ):BF^.?5Y\HTV:6RK9Z!Y MS 4-,K#,(/#"])>\9878 TB>Q#@%,!<#* DPA-,TMD38@@PSZC&\14 MM&13!TEM$K14XX7J-DX%DU<]B1/#R%G%^QF/-LKE$ZEUTQ5P_=TU"L.+H)77"+ M>%/FG2=O;Y,?V5K"*40-Y%B7R+9LIR2?L1Y^3]Z1@\O0A6RLH+O; MUNU1U6VJZE96(RV)>FJO>$3F,##D8\F!K<$8?OJ V];7,H$UD17T-G.]S83= M^3^]S3KUUD16T-O*];:T]_>%,(_,Y#.BGHLRI2D=Z:#6LEF/WS?6^ M".TT9XIHYR+:)R[22_0S+)6C)3KUQM5$5M#NN$1<$";D6T/$S!/OR*U8OWK6W&R57^(RS5K\F9I[N>;> M:9HA=(\KUG-^C_T&LIU4<;M,L19_IF)L[5[=EC:_'U1U0L1')*!Q*$I?R"E# M>\^2L)5]#ERI,C2/*Z:YUV%@;9JWWANXE::9@3$NNJ;5Q8>VJ9_FW&K;.QGV MR<[YM*&EFK1,IUI)76Q%W;NN!CMUN">NM:^IBZVH>=?98&TC<;:#'J'=-IR5 M_:H>?Z[L78.#]1W.>29ZA/2XB^H)SE6]ZXBPOB7Z%QMM_^6-K0H7K8BL,-%= M"X.U'<,Q$^V4FJC3LUJ'^=7:F)A[&\\ V#+9CW,T5W5,]Z#YV7S/?YWL=,U= M>/J'P3UA2[GTD \+";4:';DH6+H'3P>"1LDV=D:%W!0GARL@+C 5(*\O*!7; M@9H@_R=D^ =02P,$% @ L8)H5[:A))+Q! +!P !D !X;"]W;W)K M&ULM5E=<^(V%/TK&G>GD\RD\;>!%)A)L+W-P^YF MPF[[T.F#8@1HUI:H) /M],>O9#L&@_% HKZ )>N>>W6.K*N/X8:R[WR)D #; M+"5\9"R%6-V9)D^6*(/\EJX0D6_FE&50R");F'S%$)P51EEJ.I85F!G$Q!@/ MB[HG-A[27*28H"<&>)YED/WS@%*Z&1FV\5KQC!=+H2K,\7 %%VB*Q+?5$Y,E MLT:9X0P1CBD!#,U'QKU]%]N^,BA:_([1AN\] ]65%TJ_J\+C;&18*B*4HD0H M""C_UFB"TE0AR3C^KD"-VJ)6!=ZX'OS+PS_405 9!P7U)5L%T" 4<#QG= *9:2S3U4,A5 M6$N",5$C:RJ8?(NEG1B'T<-7\ N8RA$[RU,$Z!S,(69@#=,< ;Z!*P 7#"$Y MF 2X"I& ..77TN+;- 17'Z[!!X )^+JD.8=DQH>FD$$I:#.I G@H W!.!."" M3Y2()0<1F:%9BWW8;3_HL#";GFSMM MW7F?]^A]WN-N\Q ETMQN,V]PZ=:CRRWPW!-XCT0@AK@ SU @,)6CJ76$E"!> M.XB:6^_X"B9H9,C)DR.V1L;XYY_LP/JU31Z=8*%.L$@G6*P)K"&K5\OJ=:&/ M)WF6IU"E!+"0R>L&$)D"Y!SW?'YKK?<4[@[U4\7,\1CH]QFT>W4'M ML:&07ROD=RKT4Q'_IQ=^+S;9=^X!__Z@#CNM;S4;A,9+C M] ^0HF.DP+.]9J.XL^=O'/E!S6O0R>M]1G.9""6S*>0]M M7-]_F3Q*0B67^#6_H*U<:G,D%T]B*<IT8E^Z M*- )%NH$BW2"Q9K &FH/:K4'.M9Z YVRZ@0+=8)%.L%B36 -66UKMT.T.C_C M$#&\+E=[Q=?:NL>SCI*)YQ^N 2;=CB[5ZRR?D5:?<8M/-[!/+-;LO4VX?2[% M]XKB&S 5\BLJ-MUR71UC DF"80J>*,?%B.2L MA'F\Z_=ZOGN8,+4>;9SE,]+J,V[QZ;M[6]$FQ;OC#;O[?.-_3IC=SIM)X#,E M24?.U'1:42FH+;!(:V"QEL#*L6#N769(E1;%M1,'B3H,*$^>Z]KZ:NN^N- Y MJ'^P[R9V2WUHWT7EQ=4.OKQ'^P39 A,.4C27KJS;GNP5*Z^FRH*@J^(JY84* M0;/B<8G@##'50+Z?4RI>"\I!?4$X_@%02P,$% @ L8)H5_#X;TTX @ MO@0 !D !X;"]W;W)K&ULG51=;YLP%/TK5ZR: M6FD+A'QTR@A2\[$NTI)&)=V>';@!J\9FMA.Z?S_;)"S3VCSL!7SM>\X]U]Q# M5 OYK I$#2\EXVKL%5I7(]]7:8$E41U1(36<23VFE&.:PEJ7Y9$_IH@$_78ZWJGC4>:%]IN^'%4D1P3U$_5 M6IK(;UDR6B)75'"0N!M[=]W1I&_S7<)WBK4Z6X/M9"O$LPT6V=@+K"!DF&K+ M0,SK@%-DS!(9&3^/G%Y;T@+/UR?V+ZYWT\N6*)P*]H-FNAA[GSS(<$?V3#^* M^BL>^QE8OE0PY9Y0-[FW P_2O=*B/(*-@I+RYDU>CO=P!@C#-P#A$1 ZW4TA MIW)&-(DC*6J0-MNPV85KU:&-.,KM1TFT-*?4X'0\?5@N%YOE?+5)X&XU@^G# M:K-8W<]7T\4\@8_P#7/"8"U%BIA1GBNXGJ$FE*D;N +*85.(O2(\4Y&OC1[+ MZJ?'VI.F=OA&[2XL!=>%@CG/,/L;[YL^VF;"4S.3\")A@E4'>L$'"(.P"T_) M#*ZO;B[P]MI+ZCG>WO]D-&X"4A/YSZTVZAK\T.&M:0_Q[2 ((O]P7M4_FZD29>Z
    ZZ;\6IW6W/>-3/Y)[UQ]I+(G'(%#'<&&G2L%V3CEB;0HG(3NA7:S+M;%N8' M@](FF/.=$/H4V +M+RO^#5!+ P04 " "Q@FA7V0>:3F<" "2!P &0 M 'AL+W=OWS.&<\,FO%KREYX"B#0 MOLA+/K92(:H1QCQ*H2"\1RLHY4U"64&$/+(-YA4#$FM2D6/'MH>X(%EI!;ZV M+5G@TZW(LQ*6#/%M41#V>PHYK<=6WSH8GK--*I0!!WY%-K "\:U:,GG"K4J< M%5#RC):(03*V)OU1Z"F\!GS/H.9'>Z0B65/ZH@Y/\=BRU8,@AT@H!2*7':?T)FG@& M2B^B.==?5!NLXUHHVG)!BX8L7U!DI5G)OLG#$4'J=!.#I M\^S+(D1?)S_#%7HS!T&RG+_UL9#:"H&C1F=J=)P+.BY:T%*D'(5E#'$'?WZ= M_WB%CV5,;6#.(;"IV>UTIRN<__,>_K/WDV2X;95= MK>?>4.5>5W$-W>NFJUXUXA6)8&S)9L2![< *7K_J#^T/79F]I]C\GF+AG<1. M:N"U-?"NJ0=ADH#NBDB0/6)$0%?!Q[OC!!M0WSE#>:>P M^068>PH+.V'OAX,69L+%1TVF +;1W9VCB&Y+8?[$UMH.D(GNFV?V:7\TZW?8 MYW+@F/GP5]Y,JP5AFZSD*(=$NI*/DSV0F0E@#H)6NL6MJ9 -4V]3.32!*8"\ M3R@5AX-RT([AX ]02P,$% @ L8)H5W%BF!!8 P "0T !D !X;"]W M;W)K&ULK5=M;YLP$/XK)U9-F[26!)+T90E2FQ"M MTMI%3;=]=N$2T(S-;--TTG[\;$-9TE*6:GP!V]SS^'R/?3[&&RY^R 11P4-& MF9PXB5+YF>O**,&,R".>(]-?5EQD1.FN6+LR%TAB"\JHZ_5Z(S&GQ+<2.WVF!6,4 M*35$VHV?%:=33VF V^U']KE=NU[+'9$XY?1[&JMDXIPX$..*%%3=\,TGK-8S M-'P1I](^85/9]AR("JEX5H&U!UG*RC=YJ.*P!?!&+P"\"N ]!7@O /P*X.\+ M&%2 P;Z 8048[@L850 KIEL&RT9Z1A0)QH)O0!AKS68:5BZ+U@%.F=E82R7T MUU3C5##]_;C X@97";\$(2%LNQJ[2;9C(WJER:EBYY+[CDPQ5G*I$0LACC!GS8CC]M MP;LZ/'6,O,<877BMA%=$'('?_P!>S^OKQ4E%*-6'2S6MK9UJB;FFZEDJ'[XN M9_#NX'T#S6Q_&J^%)NS&F_E_>[,3=[_>F[[E]5_:FSS3^5,2FX+,UFK:3!.3KP2Q3TZP=LW_5'O8Y-Z79+-NB0+NR2;=T2VH^J@5G70 MQAY<%]D="N KP)\%H=OG2<+O?QROBY)[:+G-I7D?^&/W?EO"UME?*V&79&&7 M9/..R'8D'-82#ELE_(92I6P-.8J4QZ#+&R ;(F():T&8PA@*G7H%J 0A(C(Y M-'=_#-3<&,K<&&E]8^3Z6#?IW.Z #[^0B,:[I17X6OF[) N[))MW1+8C_ZB6 M?]0:_9V\C ^FC;K(I,0HK_B^LNO#?M D?>ODKTWH)=EH*U_T3X:[&6/VW,8_ M?F(3/K<9G)SNVLR?VYSZ?[-3&6IWJU3+4*QM42TAX@53Y*CK_+(L_TM?_B3H,F:MLRM07.FI>D?'>@^)LO N.XKGME"\XTJ7 MG;:9Z'\5%,9 ?U]QKAX[9H+Z[R?X U!+ P04 " "Q@FA7\ EE7HH# ": M#0 &0 'AL+W=O3N.G-)F=*TKQ5[P9[8DD^2(==/7TEV?'9BW-#R!BQ9^U_M M;Y=%FNT9?Q QHH3'+*5B;L52YA>V+<(8,R(&+$>JWFP8SXA40[ZU1&XP.&/B5@?]:#\/*8&C(E*$8#DLB23#C; ]#Q<>;U?7M^O+SAX^WL/KG\G8-9W#]B&&A\P$+EJD"$\3D:)42 M"F^7*$F2BG<_6'<&=^LEO'WS#MZ #2(F' 4D%.YH(L5[-:F>/\>L$(1&8F9+ M%8O>D1U6^UZ4^_8.['L*-XS*6, UC3!JV]N*00W">P)QY?4*WA ^ &?Z'CS' M\[KVTV^^QGP OF/,_0[SY2N\NY,N[ZUH_#JMOM'S#Z7U>3ZZ$%^5&L-N#=UP M+D1.0IQ;JJ,(Y#NT@M]_<\?.'UU\3BFV/)%8B]VP9C?L4P]NB^P>.; -D#WA MD8 M)U1B!(4J-0XA$?&9;C418%W_89-WKGAWX>YU>RSN4FQDQ'1OWP7NT/=' MCC.S=TV2)W+:(CFJ28YZ2?ZEP4%$),*&)!QV)"T0<@71] .-6('+%#+5Y\(' M@SQ-88="XU:-02&O!H5N&U4&9(R_D(5RRY,&.,\?#$=M;(O>P(ZMYA.)M7(P MKG,P?F4UEPCQ,5=_N0J;9 ;T+U=UK_MCJ_J48LOQBY_(V/>:OY 6T/,:Z/FK M@784Y\^#['5[+,A3BBW/7X"<.*YS".2D!CGI!;DV/:!$U0*D2Y0*[&+4JW@L MHU)LW.P$GONB@9[(90O1M$8T[45T1SF&;$N3;T;"M9^N+QZ4Y;]O_+R]O+>I8M4VH@!0WRM09 MG*L:YN5-H!Q(EINS\3V3ZJ1M'F-U>4*N%ZCW&\;DTT [J*]CP7=02P,$% M @ L8)H5V=%EPM- P Z L !D !X;"]W;W)K&ULK59A;]HP$/TK5C9-F]0V(8$ '43J@&J3.JTJ[?9AV@<3#K"6V,QV2OOO M=W92#TJ:M15?($[NO;QW9U]NL!'RMUH!:'*79UP-O976ZU/?5^D*B;]:7$E>]8YBP'KIC@1,)BZ)VU3D)T$*@5:$O_U WA+&R?5*% JCU<#7J,Z\PT\K)9]*)>$3 M2J:P/B%1<$3"((QJX*-F^!A2A+.W:E:TQ2&'IXK!?(6O.3=FU8V/*8QW"9QW,8BW6Y;V0_JM7M]%[0CL>TDMALEC@HI@>NM'5E*W=J,=7K; M>U*B5C]\I+V%N2<<WGY$Z;1CG#TSCA16XI!?]5Y[19SEF:R@+F3@6FR^FHVXV'8MO) M7>QR%S?27PB^/-8@\Y=6.]XO9!P\WIW[0>U^W*FO=MO<:>T]AKU/B5WK&\R.LT-0)?VL@.1+;CL>\\]E_9J_N' MM'@@LAV+K>#?ASIH+.05F*G,'(I4<"UQ_BEP\YGS4O^Q;6;KD'N@L@XY:D:^ MUN?60-+Z3PLUS$^^0M02P,$% M @ L8)H5ZJ@:NJ. @ !@< !D !X;"]W;W)K&ULK55K3]LP%/TK5H8FD#:<1Q,>2R-! 6W2D"H*[+.;W#86CIW9[F/_?K:3 M9H5F$9KV)7[=\GN"*4>UGJYJ8R2\5*,\IA*I%:5161OZZ!B# M4)B@1B8U"#8FLMBVN,;T(0R=6+BGF8WZ/CH M!!TARM%C*5:*\$*E6!LQEA+G[<;7S<;A7S:.T+W@NE3HEA=0]. GP_B+ 3PV M2>@R$>XR<1T.$LZ@/D61_PF%?ACUZ?EG^"LY47.+!@^F+Z\-;M2/LW_] MI:I)#F//_-8*Y!J\[..'(/&_])GZ3V2O+(XZBZ,A]NR.;J% IB!)HBE?MI&+'%DMCBMLXMXE.+UOIW#F,@/+KJ@5S+C3F8\*/.92$KF#-ZOM.&+ M]U3$0?!&Z6%,$"9G_4J33FDRJ/11:,+Z!"4':0E&2?Q&T6'0*#Q/WBC">Z6F M KET%5B95*RX;JI.-]L5^2M7V_"?\.:%N"=R2;DRR5P8J']Z9I(AFZK;#+2H M7>&:"VW*H.N6YJ$":0/,^D((O1O8#;JG+_L-4$L#!!0 ( +&":%=&PO=V]R:W-H965T=(NDD:(5]4B:CAE55EKBUNL=-S9?ER42GW"TT;>WWE0;Y16K .;"I@E+=?\MKY< "(W@)$'2 Z M%Q!W@-@);2MSLNZ))EDB10/21ALV.W#>.+110[D]Q8669I<:G,Z^/=PN'A;P M$9Z=8"R ;%&:\S-'9"\!Y6NHT/@$&B4#P@LHJ,K%AFN01"- ^.PV_Q]S 0P>/CN&^<:&W(NJMB!Q? M?-**(1DM;CR,L^]LJFJ28^J9AZ10;M'+WK\+)\'G(5'_B>Q(8MQ+C$^Q9S]J M<[:Z/U,%S5FG?K%#(M7E=,B;TPDC<%"(@0FN2P7A#11DIX:,.8_INF>*!YB. M7!GWKHS_T96C*S_D0IL@;*^J[9S;+!@%<3!)_.VAQN&XZ-/?N%:!?_"B;3?] M3N2:&ULK99K;YLP%(;_BL6JJ976<@N79 E2FZ[:I$Z*FG;[["2' M8!4PLTW2_OO9AM(T4#JA?4DP]GO\O,? .=,]98\\ 1#H*4MS/C,2(8J):?)U M AGF%[2 7,[$E&58R"';FKQ@@#=:E*6F8UF^F6&2&]%4WUNP:$I+D9(<%@SQ M,LLP>[Z"E.YGAFV\W+@CVT2H&V8T+? 6EB >B@63([.)LB$9Y)S0'#&(9\:E M/9G;6J!7_"*PYP?72%E94?JH!C\V,\-21)#"6J@06/[M8 YIJB))CC]U4*/9 M4PD/KU^BWVCSTLP*H#7DJWIJF7/^B?;W6 M,M"ZY()FM5@29"2O_O%3G8@#@3UZ1^#4 N=?!6XM<+71BDS;NL8"1U-&]XBI MU3*:NM"YT6KIAN3J&)>"R5DB=2*Z_7:Y_+9$Y^BF%"4#M07)R@RE('.#"OPL MCTQP5.8;8$@^/ P+DF^K:8Y.KT%@DO(S&>!A>8U.3\[0"2(YND]HR7&^X5-3 M2$JUE[FNB:XJ(N<=HB44%\BUOB#'UW'DK-V5NF@0Y38(< M'<_M35"7C4HWZM:IUV_""[R&F2'?+PYL!T;T^9/M6U^[3/VG8&\LNHU%MR]Z M= ?J?=<''+^7]:LJA*]#J&_#+K*ML34U=XO<9Z&+4N!CUNI#@HR[P2N4= M@+N.=PS>&WH@N-> >Q^!>UW@7@O<#EWO"+PW]$!POP'W/P+WN\#]%GC@AT?< MO9$'<@<-=_ 1=]#%';03[HZ.N'LC#^0.&^ZPE_L^ 5FI8P&LBSYLT1_GO#?Z M0/9QPS[N9Z<"IRBNBLS;XM)E9MQ^A*SP^-GOW7&@']MZ+9Q6KZ-;X'R"+C-: MYD(V-'J/7!='DLLC BXZ:Y_5=#1J';R)V9;DG,)$DN9=1'( M!+*J0ZL&@A:ZR5E1(5LF?9G(KA:86B#G8TK%RT#U34V?'/T%4$L#!!0 ( M +&":%<(W>UC2@( &<% 9 >&PO=V]R:W-H965T\FUL>;8P7;:\>\YVVE6 MI*[B2^,[W_/<2JMX)+O--@^K9E^L\"A=K,H]-HZ[CG MJ\8Z1USD'5MAB?:AN]-DQ2-+S5N4ABL)&I?SZ.)TMCAW\3[@)\>-V3F#J^11 MJ2=G?*WG4>($H<#*.@9&GS5>HA".B&3\'CBC,:4#[IZW[#>^=JKED1F\5.(7 MKVTSCSY&4..2]<+>J\T7'.KQ BLEC/^%S1";1%#UQJIV )."ELOP9<]#'W8 M:?H*(!T J=<=$GF55\RR(M=J ]I%$YL[^%(]FL1QZ8926DVWG'"V^'9]45Z7 M\![*ONL$4KLM$U QT\"2!@9=[L8,/V%1AP9_MQ;KEFIF,5SB/:'H-ZC5'Q M]LWI-/E\0-79J.KL$'OQO4--0Y*KE]$9&JH:W6%@^V0'XJDG=BN\+K)DFN7Q M>H^<\U'.^7_*>3WO08;][8)]G8IW_OPMZI5?<0.5ZJ4->S!ZQU?D(BS/2WAX M@FZ97G%I2/22H,GD VG48:V#857G5^E165I,?VSH)43M NA^J93=&B[!^+86 M?P%02P,$% @ L8)H5ZGAGK'+ P >A, !D !X;"]W;W)K&ULK9A_;]HX',;?BI6;IDVJFE\02@>1* E:[[8. ;O3_6F( M 6N)G=E.::5[\6<[:4K:D)4[_U-BQ\_G:W\?UW8\.E#V@^\1$N A2PD?6WLA M\FO;YIL]RB"_I#DB\LV6L@P*660[F^<,P42+LM3V'">P,XB)%8YTW9R%(UJ( M%!,T9X 760;9XPU*Z6%LN=93Q0+O]D)5V.$HASNT1.)[/F>R9->4!&>(<$P) M8&@[MB;N]#F8->1H2M._<"+V8^O* @G:PB(5"WKXC*H!]15O M0U.N_X)#V3;H66!3<$&S2BQ[D&%2_L*'*A%' L\[(? J@?=6@5\)_+<*>I6@ M]T+@GQ+T*T'_K1&"2A#HW)?)TIF.H(#AB-$#8*JUI*D';9=6RP1CHF;64C#Y M%DN="!?QE\DJCL!\LEC]#5:+R=UR,EW=?KM;@@\1$A"G_"-X!S !JSTM."0) M']E"!E9R>U,%F99!O!-!?/"5$K'G("8)2EKT<;=^V*&WY8#K47M/H[[Q.H&_ M%^02.,,+X#F>![XO(_#AW<>V<75CEBB_!+ZC,7X')GH[IJLW\7_H#3A AI1S MJ 4X^]_]:F3?K^>P8I!PJ->9MJEU4[)Z[2RU\%[S M'&[0V)(K*T?L'EGA^]_

    0>AYR(!<1N2FIM07(]4WV /S3.4UO.@.>.P5,PB*3L+B$]35, MG0CNP][(OC_VU5"XAJ_]VM=^IZ\+1 1 #_)(TVY2I_I&ULC51=CYLP$/PK%I6J5FIC KEKFP)2U(JW3"T MH:ZH:36PPH,:0:,PO*8-XS+($K^WT5FB.A1.> M5S6Z#9HE+:M@"_B]W6@;T9&EX U(PY4D&LHT6$SGRYG+]PD_.!S,R9HX)SNE M'EWPM4B#T D" 3DZ!F9?>[@!(1R1E?%KX S&D@YXNCZR?_+>K9<=,W"CQ$]> M8)T&[P-20,DZ@??J\ 4&/U>.+U?"^"./1>.QYX_\P?LYFCYZ=1[M1 MF9N6Y9 &=A8,Z#T$VM(B#>C*#X(AN>HD]MTR[HZSMNA;[&]Z/ZAKIBLN M#1%06F@X>6?KZK[Y^P!5ZQMNI]"VKU_6]KX [1+L>:D4'@-78+R!LC]02P,$ M% @ L8)H5[H7WEL&!0 6QL !D !X;"]W;W)K&ULK5E=;]LV%/TKA%8,+=!$)/6=V0822^OZD#9(TNU9L6E;J"1Z)!VG MP'[\J(](%D4;:3A)2^/S,F>LN]\0X@ +T5>\JFU$6)[9=M\L2%% MRB_IEI3REQ5E12KD+5O;?,M(NJR#BMS&$/IVD6:E-9O4S^[8;$)W(L]*T!(RL MIM8UNDIP'5 C_L[(GA]<@TK*$Z7?JYO/RZD%JQZ1G"Q$19'*KV,#A]2O[G[5X*>8IY61.\W^RI=A,K= "2[)*=[FXI_N_2"O(J_@6 M-.?U)]BW6&B!Q8X+6K3!L@=%5C;?Z4L[$ N#B5*2S":-[P"JT9*LNZM&OH^5X964U41X$D[]F,D[, M'I)/M\F71Q!?/UZ#"Y!R+B=G5C8SL,HD94#.2B9ORC4@+W*"QT2D6"_'+K@\%PNCGCU'S.4;XF\]6$T^6VB7;UT57EN^+;=$&FEBQMG+!G M8LU^_PWY\ _=P)HDBTV2)8;(!BEPNQ2XI]AG7^0JY6E.M&NK"?7KT&JC>)XA M["'D3NSGPY'5P!#R/ 46CV&.%T1N-(0E&ICCH@AWL(%.K]/IG=0YIUP N@)K M2I<<<)KKBL%-P^$=M!T@*5C1.T;Y0:B.2CQ&8>A'H4*6Z& !=(_(]3NY_DFY MGQCE'&P9765")]0?M>HY/G04H6.4ZP0N5(2.46S((5V'I^D^-DZ8I(L-DF6&"(;Y"'L\A">5CU7<1>*%2>^^=J\)[:N!WOB?Y/O9DF*4 M+3;*EIAB&V:F-^GH/)>.C-ITHVRQ4;;$%-LP$;U51V=X]39VX*]@Z$:>6@7& MN$CZL% M!&.8 SWH!6HI&.-P(%T].E(/>K^.3!AVI/'BT FA*GH,\USY+J.* M'L-0@#!T5=$:G.\??4=!O6M'Y]EVI''DH7S74N6.84XXVOMB#0PY$CC:U#0X MA(*#-[>AW-Z[H]/F/G2>I4=& M/;U1MM@H6V**;9B(WM>C,XP]&MML[&(8JB5! _,APFI)&,,"UXM&!5 #,/>Z-/3[/ MV+?A_F#K"D=:-2BD%O)8@T*!,\JN#N8YD5KN[8/#@H*P=7U*P\&"[DK1_ ?< M/>U.@J[K\P_E^0VZFB/-\QA=)!3 MK3G*: M&T&W]5'%$Q6"%O7EAJ1+PBJ _'U%J7B]J1KHSM-F_P-02P,$% @ L8)H M5\>-.* Z P U!, T !X;"]S='EL97,N>&ULW5A=3]LP%/TKD1D32!-I MFQ&:T5;:*B%-VB8D>-@;38F>.R=K]^OG::?N"+& ];NU0T]CT^YQ[; M-\0PJ,U*L+LY8R9:ED+60S(WIOH0Q_5TSDI:7ZB*28L42I?4V*Z>Q76E&C]^YH!S$@=%+U\@>M&Q%ZKL4$P^?9G\<^*8]-6N MM!M^:H4\\12C]0,TF,*&ZGH8/0O3=]B>'#>[.AH42FXV-R$^8-5IR:)'*H9D M3 6?: ZL@I9%2/W+PUW?@X)K=$HNE7:Y?0;_/6F& M[P'K'ACD0K0&>\0'1H.*&L.TO+$=-]@%GT!1T[Y?5=;A3--5MW=)-@1WLTDF M2N=,MVFZ9!T:#00KP([FLSGAG? ?UM-:^]+9N\2C>J^*,RGQ9V.M+UH;[9K68% M7[K^LF@-8.I=7)U6E5A]%'PF2^8G_^*$HP%=\Z*YTOR7S0:E,K4!IDGTR+3A MT^W(3TVK>[8TZW):%KCGWA%Z_KOK/&.2:2JV3=O:/^15?K7CY.I?67:_5?8- M!STVK]A#-WEY#";38S!Y!#699(?OL3E4';K)PUS)N#ED;)UD=LXQ;32"\^*0 M?(/3I]@DC28++@R736_.\YS))\<9*V_HQ/[)LJ-OQ^>LH MA[EMP2#;MKRSG MBS)K1]W"0C2C-NTO,+UNVAY6;2XN<[9D^;CIZMG$-2/;L%F;"PC[R(V[P@C& M\5@8 0S+@SG .)Z%Y?F?YM-'Y^,QS%L_B/113A_E>%8(&;L/EB?,R>P5GFF6 M)4F:8BLZ'@<=C+%U2U/X":MAWH"!Y8%,?[;6^&[C%?)\'6![^ER%8#/%*Q&; M*;[6@(37#1A9%MYM+ \PL%W :@?RA_- 384Y20*[BGG#GF \/]A3DB19%D8 "SM($@R!IQ%', ?@ 4.2Q+T']]Y'\?H]%6_^CS?Z M#5!+ P04 " "Q@FA7EXJ[', 3 @ "P %]R96QS+RYR96QSG9*Y M;L,P#$!_Q=">, ?0(8@S9?$6!/D!5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI M0.TXI+:+J1C]$%)I6M6X 4BV)8]ISI%"KM0L'C6'TD!$VV-#L%HL/D N&6:W MO606IW.D5XA-/E_G;@2=&A(E@6FD7)TZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%B MM/XU@LD/['X 4$L#!!0 ( +&":%><\HQAB@4 .@L / >&PO=V]R M:V)O;VLN>&ULQ9I;U_GI;UU_9MZI4S>5H9\S^ M[7C;/>B^4/;*I=<6-W=3;<;/7@A?-3@A3E6-G,@G&%9=J]/[=J:^E M'L.-VHC'E.M=U65Z.IL<#GX4V,G^V>]U!9ORV.>PQ_';%+M;&X((;ZK;0'=%(X*E[@DMTRK^'*>?8K:*HX4-8<<&T5"K$&LE M22U:MECU[]\4<\B46"+7B\7L2S*?LS"=L47V,5ZQ),W"]#KY,(]9"#$QBTR) M-3*+/V20!9/%E-P6-S=)9N65K0]1LTFD>S3C],ES.<5D,26V19):S)AEX=]] M)LP-4W(YW"QMW@V[1Y(M;972(\.$,"4VPCP.U_TX89E_2ISZ5_'\(*1EN,K^ M8=G*!BJ,GN58+.U/B?/^.K[N_O_,BA.F" ?+^PYQWD>%V2OB',P!#K$#<$Q8 MQCGHV(+8"]#L['<[CBQ%\P>$PVS@$-M@0/&#C)@E'&)+ -I\QQO!EMK^GD40$S.+2VR6)YB),EQM.P86 M-HTP$!-SC4OLFE_>].B!EVT%,3'WN,3N06]Z_T4T9B'W!5]6/;OI/4P/LY#W M\N^O+&UJS]9P*W6(B5G(([;0,&:B\K(M1 ,3DH=9R".VT#!F5"NC>6YZF)B% MO#.,:"Y86!2R:\HA)CI/\I*#FIDP7):]*M/#W..==50#1]8>YAZ/V#TX)BR& M/SQB]^"8L!CV,/=XQ.[!,6$Q[&/N\8G=?JX;>&%0)B8N[QB=USPGRLARPEWVZUV%HVT #FADO-[FS%+A@LWWS,0C[]7,RO)['8!<3$+.036PA. M8PU6'#XF'Y]8/L\GM.R=G]=J>Y$)7<'BTL?DXQ/+9Q S_B;RMELC!C$#3#X! ML7P>WZSVGQW;H7VXI=KV,#'Y!,3R^8$963/6RC9N.M!2=$->\0UB8O()B.7S M _.+D-N=$07C=S:46\&T[1LZ,L#D$Q#+YP?F56M:+8ZK)-OJ,9Q[B(G))R"6 MS\__9KO?EZ)KS4N6\V;'-F5]#S$Q^03$\OGUS/$A>4),=)$8L7QZDQ47;&%V M0@]F]P!S3T#LGB>4O'LS:$N.TU)5B(E)*#A(:'QHW+Q_5XB-5*)([2D:NS_G M9;[4K/LXK@7R_&YF?].6963W+=2\YL5IH>YID?'[_P!02P,$% @ L8)H M5Q;=:Q0F @ 8R@ !H !X;"]?8@DCEQN ;OO* R28_6@)\AG9)4M M7_^C3U;9CR]EWPZ[[EBWNU.=?1[VQ[ILML-P^I5276W+H:UWW:DSIR]?IW*_TSLUNO=JOSN5G\.Y3C\8W#Z MZ/KWNBUE:&:O;;\IP[))G_OKZ9HNAWQWGMS,GM^63?_\EILT=9! D$P?I!"D MTP<9!-GT00Y!/GU00%!,'[2 H,7T0?<0=#]]T ,$/4P?E.$.Q/(G9'N3&!W1KPS@=Z">@N! MWH)Z"X'>,GK9)M!;4&\AT%M0;R'06U!O(=!;4&\AT%M0;R'06U!O(=!;4&\A MT%M1;R706U%O)=!;46\ET%M'FR4$>BOJK01Z*^JM!'HKZJT$>BOJK01Z*^JM M!'HKZJT$>AOJ;01Z&^IM!'H;ZFT$>AOJ;01ZVVBSFT!O0[V-0&]#O8U ;T.] MC4!O0[V-0&]#O8U ;T>]G4!O1[V=0&]'O9U ;T>]G4!O1[V=0&\??:PDT-M1 M;R?0VU%O)]#;46\GT-M1;R?0.U#O(- [4.\@T#M0[R#0.U#O(- [4.\@T#M0 M[R#0.T8_FQ#H':AW$.@=J'?\I-YU^-J7>NWY7N/S?Y+JX7QON3[^LOP^B1(N M+CBGVXKZ]!=02P,$% @ L8)H5^'L7A'T 0 HB< !, !;0V]N=&5N M=%]4>7!E&ULS=K+3L,P$ 707ZFR18WK)P_1;H ML. '3#*E49/8LETH M?X^3 A((*E"1N)M&K>VY$X]T5CV_>_84)]NN[>.\6*7DSQB+U8HZ&TOGJ<\K M2QTM)LV3:ZV^>?8N'Y>!&IC M,;G8;1RRYH7UOFTJF_(Z>^SK3RG3UX0RGQSWQ%7CXU'>4+ O$X:5[P->S]T\ M4@A-39-;&]*U[?(NMFU93,\MQ7)_B2]Z=,ME4U'MJDV7CY31![)U7!&EKBUW M18_V)Z=\P[3[Y ?GCV7V!>:=M\'YF"<6Z/=Q;R,93D]]+D0A-?M?\3TQES[X M_6B8=DWU#[/S]3ZYL![G$=GX./R./\[XO?XO^Q @?4B0/A1('QJD#P/2QS%( M'R<@?9R"],%G*(V@B,I12.4HIG(45#F*JAR%58[B*D>!E:/(*E!D%2BR"A19 M!8JL D56@2*K0)%5H,@J4&05*+)*%%DEBJP215:)(JM$D56BR"I19)4HLDH4 M626*K I%5H4BJT*15:'(JE!D52BR*A19%8JL"D56A2*K1I%5H\BJ4635*+)J M%%DUBJP:15:-(JM&D56CR&I09#4HLAH460V*K 9%5H,BJT&1U:#(:OY3UGOG MUG\ %02P$"% ,4 " "P@FA7!T%-8H$ "Q M$ @ $ 9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0 ( M +"":%<3B%L6[0 "L" 1 " :\ !D;V-097)PC$ 8 )PG 3 M " &UL4$L! A0#% @ L()H5]*_ M#[7V!0 [1\ !@ ("!# @ 'AL+W=O2JET# "*"P & @(%8%0 >&PO=V]R:W-H965T M&UL4$L! A0#% @ L()H5]!Y(?3&PO=V]R:W-H965T&UL4$L! M A0#% @ L()H5RJ^"M_T#0 X(L !@ ("!/RT 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ L()H5S>* M(0,P" WAP !D ("!'E0 'AL+W=O&PO=V]R:W-H965T'P20&L@( $D& 9 " @<)A !X;"]W;W)K&UL4$L! A0#% @ L()H5\.IQ(*?!@ Q!4 !D M ("!JV0 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ L()H5XU?]NYP P X@< !D ("! M$(0 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ L()H5]4/UK/' P B@D !D ("!S)0 'AL+W=O&PO=V]R:W-H965T&PO=V]R:W-H965T&UL4$L! A0#% @ L()H5^[:@HR: @ Y04 !D M ("!!<$ 'AL+W=O&PO=V]R M:W-H965T;( !X;"]W;W)K&UL M4$L! A0#% @ L()H5RG8BZDG!0 ^A !D ("!%&PO=V]R:W-H965T";4$N" 4 &0@ 9 M " @5'6 !X;"]W;W)K&UL4$L! A0#% @ ML()H5\"D-P6W @ H0@ !D ("!D-L 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ L()H5TJ8(D@$ P 80L !D M ("!*/, 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ L()H5]8L@S[T @ T@H !D ("!W0 ! 'AL M+W=O&PO=V]R:W-H965T$1 OB:@, ,$/ 9 " M@&UL4$L! A0#% @ L()H M5YWATQ&P @ VP< !D ("!; P! 'AL+W=O(" !6"0 &0 M @(%3#P$ >&PO=V]R:W-H965T&UL4$L! A0#% @ L8)H5WKVFS!9! UQ< M !D ("!)!4! 'AL+W=O&PO=V]R:W-H965T 9 " @4P< 0!X;"]W;W)K&UL4$L! A0#% @ L8)H5_[0%&PO=V]R:W-H965T MVF(A@J , ,X0 9 M " @?&UL4$L! A0# M% @ L8)H5^[5E.-L @ 7P8 !D ("!UBL! 'AL+W=O M&PO=V]R:W-H965T\#STQ+04 +LK 9 " @:8V M 0!X;"]W;W)K&UL4$L! A0#% @ L8)H5_&% MXSR& P %1$ !D ("!"CP! 'AL+W=O&PO=V]R:W-H965T]$ 0!X;"]W;W)K&UL4$L! A0#% @ L8)H5]D'FDYG @ D@< !D M ("!7D&PO M=V]R:W-H965TB@, M )H- 9 " @8M- 0!X;"]W;W)K&UL4$L! A0#% @ L8)H5V=%EPM- P Z L !D ("! M3%$! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ L8)H5^)-;5T5 P ,PL !D ("!'UH! 'AL+W=OQ? 0!X M;"]W;W)K&UL4$L! A0#% @ L8)H5U O2Q05 M @ C00 !D ("![F,! 'AL+W=O6P8% !;&P &0 M@($Z9@$ >&PO=V]R:W-H965T7!E&UL4$L%!@ !, $P RQ0 ' /]Y 0 $! end XML 81 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 82 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 83 FilingSummary.xml IDEA: XBRL DOCUMENT 3.23.3 html 217 308 1 false 56 0 false 9 false false R1.htm 00090 - Document - Document and Entity Information Sheet http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 00100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS Sheet http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets CONDENSED CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 00105 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 3 false false R4.htm 00200 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME Sheet http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME Statements 4 false false R5.htm 00205 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical) Sheet http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncomeParenthetical CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical) Statements 5 false false R6.htm 00300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 00400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY Sheet http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY Statements 7 false false R8.htm 00405 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Parenthetical) Sheet http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquityParenthetical CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Parenthetical) Statements 8 false false R9.htm 10101 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPolicies SIGNIFICANT ACCOUNTING POLICIES Notes 9 false false R10.htm 10201 - Disclosure - ACQUISITIONS Sheet http://www.cadre-holdings.com/role/DisclosureAcquisitions ACQUISITIONS Notes 10 false false R11.htm 10301 - Disclosure - REVENUE RECOGNITION Sheet http://www.cadre-holdings.com/role/DisclosureRevenueRecognition REVENUE RECOGNITION Notes 11 false false R12.htm 10401 - Disclosure - INVENTORIES Sheet http://www.cadre-holdings.com/role/DisclosureInventories INVENTORIES Notes 12 false false R13.htm 10501 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS Sheet http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssets GOODWILL AND OTHER INTANGIBLE ASSETS Notes 13 false false R14.htm 10601 - Disclosure - DEBT Sheet http://www.cadre-holdings.com/role/DisclosureDebt DEBT Notes 14 false false R15.htm 10701 - Disclosure - COMMITMENTS AND CONTINGENCIES Sheet http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingencies COMMITMENTS AND CONTINGENCIES Notes 15 false false R16.htm 10801 - Disclosure - INCOME TAXES Sheet http://www.cadre-holdings.com/role/DisclosureIncomeTaxes INCOME TAXES Notes 16 false false R17.htm 10901 - Disclosure - COMPENSATION PLANS Sheet http://www.cadre-holdings.com/role/DisclosureCompensationPlans COMPENSATION PLANS Notes 17 false false R18.htm 11001 - Disclosure - LEASES Sheet http://www.cadre-holdings.com/role/DisclosureLeases LEASES Notes 18 false false R19.htm 11101 - Disclosure - RELATED PARTY TRANSACTIONS Sheet http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactions RELATED PARTY TRANSACTIONS Notes 19 false false R20.htm 11201 - Disclosure - SEGMENT DATA Sheet http://www.cadre-holdings.com/role/DisclosureSegmentData SEGMENT DATA Notes 20 false false R21.htm 20102 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies) Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies SIGNIFICANT ACCOUNTING POLICIES (Policies) Policies 21 false false R22.htm 30103 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTables SIGNIFICANT ACCOUNTING POLICIES (Tables) Tables http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPolicies 22 false false R23.htm 30203 - Disclosure - ACQUISITIONS (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables ACQUISITIONS (Tables) Tables http://www.cadre-holdings.com/role/DisclosureAcquisitions 23 false false R24.htm 30303 - Disclosure - REVENUE RECOGNITION (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionTables REVENUE RECOGNITION (Tables) Tables http://www.cadre-holdings.com/role/DisclosureRevenueRecognition 24 false false R25.htm 30403 - Disclosure - INVENTORIES (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureInventoriesTables INVENTORIES (Tables) Tables http://www.cadre-holdings.com/role/DisclosureInventories 25 false false R26.htm 30503 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsTables GOODWILL AND OTHER INTANGIBLE ASSETS (Tables) Tables http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssets 26 false false R27.htm 30603 - Disclosure - DEBT (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureDebtTables DEBT (Tables) Tables http://www.cadre-holdings.com/role/DisclosureDebt 27 false false R28.htm 31003 - Disclosure - LEASES (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureLeasesTables LEASES (Tables) Tables http://www.cadre-holdings.com/role/DisclosureLeases 28 false false R29.htm 31203 - Disclosure - SEGMENT DATA (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureSegmentDataTables SEGMENT DATA (Tables) Tables http://www.cadre-holdings.com/role/DisclosureSegmentData 29 false false R30.htm 40101 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Additional Information (Details) Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails SIGNIFICANT ACCOUNTING POLICIES - Additional Information (Details) Details 30 false false R31.htm 40102 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Assets and liabilities measured at fair value on a recurring basis (Details) Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails SIGNIFICANT ACCOUNTING POLICIES - Assets and liabilities measured at fair value on a recurring basis (Details) Details 31 false false R32.htm 40103 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Transfers of assets or liabilities (Details) Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTransfersOfAssetsOrLiabilitiesDetails SIGNIFICANT ACCOUNTING POLICIES - Transfers of assets or liabilities (Details) Details 32 false false R33.htm 40104 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Accrued warranties and related costs (Details) Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAccruedWarrantiesAndRelatedCostsDetails SIGNIFICANT ACCOUNTING POLICIES - Accrued warranties and related costs (Details) Details 33 false false R34.htm 40105 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Weighted average shares outstanding and net income (loss) per share (Details) Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails SIGNIFICANT ACCOUNTING POLICIES - Weighted average shares outstanding and net income (loss) per share (Details) Details 34 false false R35.htm 40201 - Disclosure - ACQUISITIONS - Summary - Radar (Details) Sheet http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails ACQUISITIONS - Summary - Radar (Details) Details 35 false false R36.htm 40202 - Disclosure - ACQUISITIONS - Purchase Price Consideration and Fair Value - Radar (Details) Sheet http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails ACQUISITIONS - Purchase Price Consideration and Fair Value - Radar (Details) Details 36 false false R37.htm 40203 - Disclosure - ACQUISITIONS - Intangible Assets - Radar (Details) Sheet http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails ACQUISITIONS - Intangible Assets - Radar (Details) Details 37 false false R38.htm 40204 - Disclosure - ACQUISITIONS - Summary - Cyalume (Details) Sheet http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails ACQUISITIONS - Summary - Cyalume (Details) Details 38 false false R39.htm 40205 - Disclosure - ACQUISITIONS - Purchase Price Consideration and Fair Value - Cyalume (Details) Sheet http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails ACQUISITIONS - Purchase Price Consideration and Fair Value - Cyalume (Details) Details 39 false false R40.htm 40206 - Disclosure - ACQUISITIONS - Intangible Assets - Cyalume (Details) Sheet http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails ACQUISITIONS - Intangible Assets - Cyalume (Details) Details 40 false false R41.htm 40301 - Disclosure - REVENUE RECOGNITION - Net sales by channel and geography (Details) Sheet http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails REVENUE RECOGNITION - Net sales by channel and geography (Details) Details 41 false false R42.htm 40302 - Disclosure - REVENUE RECOGNITION - Includes all Distribution sales (Details) Sheet http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails REVENUE RECOGNITION - Includes all Distribution sales (Details) Details 42 false false R43.htm 40303 - Disclosure - REVENUE RECOGNITION - Contract Liabilities (Details) Sheet http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionContractLiabilitiesDetails REVENUE RECOGNITION - Contract Liabilities (Details) Details 43 false false R44.htm 40304 - Disclosure - REVENUE RECOGNITION - Additional information (Details) Sheet http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails REVENUE RECOGNITION - Additional information (Details) Details 44 false false R45.htm 40401 - Disclosure - INVENTORIES (Details) Sheet http://www.cadre-holdings.com/role/DisclosureInventoriesDetails INVENTORIES (Details) Details http://www.cadre-holdings.com/role/DisclosureInventoriesTables 45 false false R46.htm 40501 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of changes in goodwill (Details) Sheet http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of changes in goodwill (Details) Details 46 false false R47.htm 40502 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Impairment of Goodwill (Details) Sheet http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsImpairmentOfGoodwillDetails GOODWILL AND OTHER INTANGIBLE ASSETS - Impairment of Goodwill (Details) Details 47 false false R48.htm 40503 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of intangible assets (Details) Sheet http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of intangible assets (Details) Details 48 false false R49.htm 40504 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Additional information (Details) Sheet http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAdditionalInformationDetails GOODWILL AND OTHER INTANGIBLE ASSETS - Additional information (Details) Details 49 false false R50.htm 40505 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Amortization expense for definite lived intangible assets (Details) Sheet http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails GOODWILL AND OTHER INTANGIBLE ASSETS - Amortization expense for definite lived intangible assets (Details) Details 50 false false R51.htm 40601 - Disclosure - DEBT - Schedule of company's debt (Details) Sheet http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails DEBT - Schedule of company's debt (Details) Details 51 false false R52.htm 40602 - Disclosure - DEBT - Summary of aggregate principal payment of long-term debt (Details) Sheet http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails DEBT - Summary of aggregate principal payment of long-term debt (Details) Details 52 false false R53.htm 40603 - Disclosure - DEBT - 2021 Credit Facility (Details) Sheet http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails DEBT - 2021 Credit Facility (Details) Details 53 false false R54.htm 40604 - Disclosure - DEBT - Canadian Credit Facility (Details) Sheet http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails DEBT - Canadian Credit Facility (Details) Details 54 false false R55.htm 40605 - Disclosure - DEBT - Schedule of interest rate swaps (Details) Sheet http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails DEBT - Schedule of interest rate swaps (Details) Details 55 false false R56.htm 40606 - Disclosure - DEBT - Schedule of fair value swap agreement (Details) Sheet http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails DEBT - Schedule of fair value swap agreement (Details) Details 56 false false R57.htm 40701 - Disclosure - COMMITMENTS AND CONTINGENCIES - Legal Proceedings (Details) Sheet http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails COMMITMENTS AND CONTINGENCIES - Legal Proceedings (Details) Details 57 false false R58.htm 40801 - Disclosure - INCOME TAXES (Details) Sheet http://www.cadre-holdings.com/role/DisclosureIncomeTaxesDetails INCOME TAXES (Details) Details http://www.cadre-holdings.com/role/DisclosureIncomeTaxes 58 false false R59.htm 40901 - Disclosure - COMPENSATION PLANS - Long-Term Incentive Plan (Details) Sheet http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails COMPENSATION PLANS - Long-Term Incentive Plan (Details) Details 59 false false R60.htm 40902 - Disclosure - COMPENSATION PLANS - Executive Compensation Plan (Details) Sheet http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails COMPENSATION PLANS - Executive Compensation Plan (Details) Details 60 false false R61.htm 41001 - Disclosure - LEASES - Schedule of operating assets and liabilities (Details) Sheet http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails LEASES - Schedule of operating assets and liabilities (Details) Details 61 false false R62.htm 41002 - Disclosure - LEASES - Components of lease expense (Details) Sheet http://www.cadre-holdings.com/role/DisclosureLeasesComponentsOfLeaseExpenseDetails LEASES - Components of lease expense (Details) Details 62 false false R63.htm 41003 - Disclosure - LEASES - Weighted average remaining lease term and discount rate (Details) Sheet http://www.cadre-holdings.com/role/DisclosureLeasesWeightedAverageRemainingLeaseTermAndDiscountRateDetails LEASES - Weighted average remaining lease term and discount rate (Details) Details 63 false false R64.htm 41004 - Disclosure - LEASES - Future minimum lease payments under operating leases (Details) Sheet http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails LEASES - Future minimum lease payments under operating leases (Details) Details 64 false false R65.htm 41005 - Disclosure - LEASES - Supplemental cash flow information related to leases (Details) Sheet http://www.cadre-holdings.com/role/DisclosureLeasesSupplementalCashFlowInformationRelatedToLeasesDetails LEASES - Supplemental cash flow information related to leases (Details) Details 65 false false R66.htm 41101 - Disclosure - RELATED PARTY TRANSACTIONS (Details) Sheet http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails RELATED PARTY TRANSACTIONS (Details) Details http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactions 66 false false R67.htm 41201 - Disclosure - SEGMENT DATA - Other (Details) Sheet http://www.cadre-holdings.com/role/DisclosureSegmentDataOtherDetails SEGMENT DATA - Other (Details) Details 67 false false R68.htm 41202 - Disclosure - SEGMENT DATA - asset information or operating expenses by segment (Details) Sheet http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails SEGMENT DATA - asset information or operating expenses by segment (Details) Details 68 false false All Reports Book All Reports cdre-20230930.xsd cdre-20230930_cal.xml cdre-20230930_def.xml cdre-20230930_lab.xml cdre-20230930_pre.xml cdre-20230930x10q.htm http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 true true JSON 86 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "cdre-20230930x10q.htm": { "nsprefix": "cdre", "nsuri": "http://www.cadre-holdings.com/20230930", "dts": { "schema": { "local": [ "cdre-20230930.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/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd" ] }, "calculationLink": { "local": [ "cdre-20230930_cal.xml" ] }, "definitionLink": { "local": [ "cdre-20230930_def.xml" ] }, "labelLink": { "local": [ "cdre-20230930_lab.xml" ] }, "presentationLink": { "local": [ "cdre-20230930_pre.xml" ] }, "inline": { "local": [ "cdre-20230930x10q.htm" ] } }, "keyStandard": 269, "keyCustom": 39, "axisStandard": 25, "axisCustom": 0, "memberStandard": 28, "memberCustom": 26, "hidden": { "total": 21, "http://xbrl.sec.gov/dei/2023": 5, "http://fasb.org/us-gaap/2023": 15, "http://www.cadre-holdings.com/20230930": 1 }, "contextCount": 217, "entityCount": 1, "segmentCount": 56, "elementCount": 493, "unitCount": 9, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 813, "http://xbrl.sec.gov/dei/2023": 30 }, "report": { "R1": { "role": "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation", "longName": "00090 - Document - Document and Entity Information", "shortName": "Document and Entity Information", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets", "longName": "00100 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:CashCashEquivalentsAndShortTermInvestments", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:CashCashEquivalentsAndShortTermInvestments", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical", "longName": "00105 - Statement - CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)", "shortName": "CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome", "longName": "00200 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:SellingGeneralAndAdministrativeExpense", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R5": { "role": "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncomeParenthetical", "longName": "00205 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical)", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R6": { "role": "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows", "longName": "00300 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ProfitLoss", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ProfitLoss", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R7": { "role": "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity", "longName": "00400 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "7", "firstAnchor": { "contextRef": "As_Of_12_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_1hKWMXxbpUG7htjArCDfgw", "name": "us-gaap:StockholdersEquity", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2022_To_3_31_2022_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_XFv_WWWI5kmFNP17ZIRhVA", "name": "us-gaap:NetIncomeLoss", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R8": { "role": "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquityParenthetical", "longName": "00405 - Statement - CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Parenthetical)", "shortName": "CONDENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "8", "firstAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "unitRef": "Unit_Divide_USD_shares_MSlawnPiRE2jag4WGbgNLg", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "unitRef": "Unit_Divide_USD_shares_MSlawnPiRE2jag4WGbgNLg", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPolicies", "longName": "10101 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES", "shortName": "SIGNIFICANT ACCOUNTING POLICIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitions", "longName": "10201 - Disclosure - ACQUISITIONS", "shortName": "ACQUISITIONS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognition", "longName": "10301 - Disclosure - REVENUE RECOGNITION", "shortName": "REVENUE RECOGNITION", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.cadre-holdings.com/role/DisclosureInventories", "longName": "10401 - Disclosure - INVENTORIES", "shortName": "INVENTORIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssets", "longName": "10501 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.cadre-holdings.com/role/DisclosureDebt", "longName": "10601 - Disclosure - DEBT", "shortName": "DEBT", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingencies", "longName": "10701 - Disclosure - COMMITMENTS AND CONTINGENCIES", "shortName": "COMMITMENTS AND CONTINGENCIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.cadre-holdings.com/role/DisclosureIncomeTaxes", "longName": "10801 - Disclosure - INCOME TAXES", "shortName": "INCOME TAXES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.cadre-holdings.com/role/DisclosureCompensationPlans", "longName": "10901 - Disclosure - COMPENSATION PLANS", "shortName": "COMPENSATION PLANS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "cdre:CompensationPlansTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "cdre:CompensationPlansTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.cadre-holdings.com/role/DisclosureLeases", "longName": "11001 - Disclosure - LEASES", "shortName": "LEASES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactions", "longName": "11101 - Disclosure - RELATED PARTY TRANSACTIONS", "shortName": "RELATED PARTY TRANSACTIONS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.cadre-holdings.com/role/DisclosureSegmentData", "longName": "11201 - Disclosure - SEGMENT DATA", "shortName": "SEGMENT DATA", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies", "longName": "20102 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "21", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTables", "longName": "30103 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "22", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables", "longName": "30203 - Disclosure - ACQUISITIONS (Tables)", "shortName": "ACQUISITIONS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "23", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_VDD7N6b8DEW9fI-eHg95uQ", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_VDD7N6b8DEW9fI-eHg95uQ", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionTables", "longName": "30303 - Disclosure - REVENUE RECOGNITION (Tables)", "shortName": "REVENUE RECOGNITION (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "24", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.cadre-holdings.com/role/DisclosureInventoriesTables", "longName": "30403 - Disclosure - INVENTORIES (Tables)", "shortName": "INVENTORIES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsTables", "longName": "30503 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS (Tables)", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.cadre-holdings.com/role/DisclosureDebtTables", "longName": "30603 - Disclosure - DEBT (Tables)", "shortName": "DEBT (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.cadre-holdings.com/role/DisclosureLeasesTables", "longName": "31003 - Disclosure - LEASES (Tables)", "shortName": "LEASES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:LeaseCostTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LesseeOperatingLeasesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:LeaseCostTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LesseeOperatingLeasesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.cadre-holdings.com/role/DisclosureSegmentDataTables", "longName": "31203 - Disclosure - SEGMENT DATA (Tables)", "shortName": "SEGMENT DATA (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails", "longName": "40101 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Additional Information (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "30", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "cdre:NumberOfManufacturingPlants", "unitRef": "Unit_Standard_item_-V9YzemwNkCxJeL3WSmpkg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "cdre:NumberOfManufacturingPlants", "unitRef": "Unit_Standard_item_-V9YzemwNkCxJeL3WSmpkg", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails", "longName": "40102 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Assets and liabilities measured at fair value on a recurring basis (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Assets and liabilities measured at fair value on a recurring basis (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "31", "firstAnchor": { "contextRef": "As_Of_9_30_2023_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_CarryingReportedAmountFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_yNH3MyHcMUSgGiE3TQY20A", "name": "us-gaap:AssetsFairValueDisclosure", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_CarryingReportedAmountFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_yNH3MyHcMUSgGiE3TQY20A", "name": "us-gaap:AssetsFairValueDisclosure", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTransfersOfAssetsOrLiabilitiesDetails", "longName": "40103 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Transfers of assets or liabilities (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Transfers of assets or liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "32", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "cdre:FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "cdre:FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount", "p", "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "cdre:FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "cdre:FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount", "p", "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAccruedWarrantiesAndRelatedCostsDetails", "longName": "40104 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Accrued warranties and related costs (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Accrued warranties and related costs (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "33", "firstAnchor": { "contextRef": "As_Of_6_30_2023_SrFFFcWKB0-6BWNGdJIvGg", "name": "us-gaap:ProductWarrantyAccrual", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "us-gaap:StandardProductWarrantyPolicy", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_6_30_2023_SrFFFcWKB0-6BWNGdJIvGg", "name": "us-gaap:ProductWarrantyAccrual", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "us-gaap:StandardProductWarrantyPolicy", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "longName": "40105 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Weighted average shares outstanding and net income (loss) per share (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Weighted average shares outstanding and net income (loss) per share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "firstAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerSharePolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerSharePolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails", "longName": "40201 - Disclosure - ACQUISITIONS - Summary - Radar (Details)", "shortName": "ACQUISITIONS - Summary - Radar (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "Duration_1_1_2022_To_9_30_2022_H3MG6TG1bk-uJvSXqoOTiQ", "name": "us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2022_To_12_31_2022_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_x_aEZK2arkCjmZw1dPYI5A", "name": "cdre:BusinessCombinationAcquisitionRelatedCostsAggregate", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R36": { "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails", "longName": "40202 - Disclosure - ACQUISITIONS - Purchase Price Consideration and Fair Value - Radar (Details)", "shortName": "ACQUISITIONS - Purchase Price Consideration and Fair Value - Radar (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "Duration_1_1_2022_To_9_30_2022_H3MG6TG1bk-uJvSXqoOTiQ", "name": "us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_1_11_2022_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_mp6iK9yk1EuPcLMyK-fwEw", "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R37": { "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "longName": "40203 - Disclosure - ACQUISITIONS - Intangible Assets - Radar (Details)", "shortName": "ACQUISITIONS - Intangible Assets - Radar (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "Duration_1_11_2022_To_1_11_2022_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_M0w0xg8RXEiif7ZYetSYww", "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_11_2022_To_1_11_2022_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_M0w0xg8RXEiif7ZYetSYww", "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "longName": "40204 - Disclosure - ACQUISITIONS - Summary - Cyalume (Details)", "shortName": "ACQUISITIONS - Summary - Cyalume (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "Duration_1_1_2022_To_9_30_2022_H3MG6TG1bk-uJvSXqoOTiQ", "name": "us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2022_To_12_31_2022_us-gaap_BusinessAcquisitionAxis_cdre_CyalumeAcquisitionMember_lGfnHb75qEKTWgSprod3LA", "name": "us-gaap:BusinessCombinationAcquisitionRelatedCosts", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R39": { "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "longName": "40205 - Disclosure - ACQUISITIONS - Purchase Price Consideration and Fair Value - Cyalume (Details)", "shortName": "ACQUISITIONS - Purchase Price Consideration and Fair Value - Cyalume (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "Duration_4_1_2023_To_6_30_2023_nvHzJWCopkaikbe4iFdVUA", "name": "us-gaap:GoodwillPurchaseAccountingAdjustments", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfGoodwillTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_us-gaap_BusinessAcquisitionAxis_cdre_CyalumeAcquisitionMember_Nnuvg6hg90CzQJVKgppwqQ", "name": "us-gaap:GoodwillPurchaseAccountingAdjustments", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R40": { "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "longName": "40206 - Disclosure - ACQUISITIONS - Intangible Assets - Cyalume (Details)", "shortName": "ACQUISITIONS - Intangible Assets - Cyalume (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "Duration_5_4_2022_To_5_4_2022_us-gaap_BusinessAcquisitionAxis_cdre_CyalumeAcquisitionMember_NhduHMUeykKznHrrFu-OTQ", "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_5_4_2022_To_5_4_2022_us-gaap_BusinessAcquisitionAxis_cdre_CyalumeAcquisitionMember_NhduHMUeykKznHrrFu-OTQ", "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails", "longName": "40301 - Disclosure - REVENUE RECOGNITION - Net sales by channel and geography (Details)", "shortName": "REVENUE RECOGNITION - Net sales by channel and geography (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_us-gaap_ContractWithCustomerSalesChannelAxis_cdre_U.s.stateAndLocalAgenciesMember_KCVlNmOKlEWPnJoWzD2DLw", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R42": { "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails", "longName": "40302 - Disclosure - REVENUE RECOGNITION - Includes all Distribution sales (Details)", "shortName": "REVENUE RECOGNITION - Includes all Distribution sales (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_srt_StatementGeographicalAxis_country_US_dB45kxupyEa07aAK1KYAHA", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R43": { "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionContractLiabilitiesDetails", "longName": "40303 - Disclosure - REVENUE RECOGNITION - Contract Liabilities (Details)", "shortName": "REVENUE RECOGNITION - Contract Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:ContractWithCustomerLiabilityCurrent", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2022_UJpRaiOo-UW2R1asGNPdOQ", "name": "us-gaap:ContractWithCustomerLiabilityCurrent", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R44": { "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails", "longName": "40304 - Disclosure - REVENUE RECOGNITION - Additional information (Details)", "shortName": "REVENUE RECOGNITION - Additional information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails", "longName": "40401 - Disclosure - INVENTORIES (Details)", "shortName": "INVENTORIES (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:InventoryFinishedGoodsAndWorkInProcessNetOfReserves", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:InventoryFinishedGoodsAndWorkInProcessNetOfReserves", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails", "longName": "40501 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of changes in goodwill (Details)", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of changes in goodwill (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "As_Of_6_30_2023_SrFFFcWKB0-6BWNGdJIvGg", "name": "us-gaap:Goodwill", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfGoodwillTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:GoodwillForeignCurrencyTranslationGainLoss", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfGoodwillTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R47": { "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsImpairmentOfGoodwillDetails", "longName": "40502 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Impairment of Goodwill (Details)", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS - Impairment of Goodwill (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:GoodwillGross", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:GoodwillGross", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails", "longName": "40503 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of intangible assets (Details)", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of intangible assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "cdre:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "cdre:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAdditionalInformationDetails", "longName": "40504 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Additional information (Details)", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS - Additional information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R50": { "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails", "longName": "40505 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Amortization expense for definite lived intangible assets (Details)", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS - Amortization expense for definite lived intangible assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails", "longName": "40601 - Disclosure - DEBT - Schedule of company's debt (Details)", "shortName": "DEBT - Schedule of company's debt (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:ShortTermBorrowings", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:ShortTermBorrowings", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails", "longName": "40602 - Disclosure - DEBT - Summary of aggregate principal payment of long-term debt (Details)", "shortName": "DEBT - Summary of aggregate principal payment of long-term debt (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R53": { "role": "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "longName": "40603 - Disclosure - DEBT - 2021 Credit Facility (Details)", "shortName": "DEBT - 2021 Credit Facility (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:DebtInstrumentCarryingAmount", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_us-gaap_DebtInstrumentAxis_cdre_NewCreditAgreementAugust2021Member_fSPd9MpEgEuPgRfG3T7COw", "name": "cdre:DebtInstrumentIncreaseInTotalNetLeverageRatioDueToMajorAcquisitions", "unitRef": "Unit_Standard_pure_KxHmAG1zB06Y9vKOro-2Qg", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R54": { "role": "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "longName": "40604 - Disclosure - DEBT - Canadian Credit Facility (Details)", "shortName": "DEBT - Canadian Credit Facility (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_DebtInstrumentAxis_cdre_CanadianCreditFacilityMember_xE0mU9aXc0uEW3ASVrWPvg", "name": "us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage", "unitRef": "Unit_Standard_pure_KxHmAG1zB06Y9vKOro-2Qg", "xsiNil": "false", "lang": null, "decimals": "5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_srt_RangeAxis_srt_MinimumMember_us-gaap_DebtInstrumentAxis_cdre_CanadianCreditFacilityMember_xE0mU9aXc0uEW3ASVrWPvg", "name": "us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage", "unitRef": "Unit_Standard_pure_KxHmAG1zB06Y9vKOro-2Qg", "xsiNil": "false", "lang": null, "decimals": "5", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R55": { "role": "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails", "longName": "40605 - Disclosure - DEBT - Schedule of interest rate swaps (Details)", "shortName": "DEBT - Schedule of interest rate swaps (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "As_Of_9_30_2023_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_TnHcJHktXk2RltTVGf6fog", "name": "us-gaap:DerivativeVariableInterestRate", "unitRef": "Unit_Standard_pure_KxHmAG1zB06Y9vKOro-2Qg", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_TnHcJHktXk2RltTVGf6fog", "name": "us-gaap:DerivativeVariableInterestRate", "unitRef": "Unit_Standard_pure_KxHmAG1zB06Y9vKOro-2Qg", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails", "longName": "40606 - Disclosure - DEBT - Schedule of fair value swap agreement (Details)", "shortName": "DEBT - Schedule of fair value swap agreement (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:AociLossCashFlowHedgeCumulativeGainLossAfterTax", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_12_31_2022_UJpRaiOo-UW2R1asGNPdOQ", "name": "us-gaap:AociLossCashFlowHedgeCumulativeGainLossAfterTax", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R57": { "role": "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails", "longName": "40701 - Disclosure - COMMITMENTS AND CONTINGENCIES - Legal Proceedings (Details)", "shortName": "COMMITMENTS AND CONTINGENCIES - Legal Proceedings (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "Duration_9_1_2021_To_9_30_2021_58OnrICAcES73hAMKH_acw", "name": "us-gaap:LossContingencyDamagesAwardedValue", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_9_1_2021_To_9_30_2021_58OnrICAcES73hAMKH_acw", "name": "us-gaap:LossContingencyDamagesAwardedValue", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "span", "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R58": { "role": "http://www.cadre-holdings.com/role/DisclosureIncomeTaxesDetails", "longName": "40801 - Disclosure - INCOME TAXES (Details)", "shortName": "INCOME TAXES (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "unitRef": "Unit_Standard_pure_KxHmAG1zB06Y9vKOro-2Qg", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "unitRef": "Unit_Standard_pure_KxHmAG1zB06Y9vKOro-2Qg", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R59": { "role": "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails", "longName": "40901 - Disclosure - COMPENSATION PLANS - Long-Term Incentive Plan (Details)", "shortName": "COMPENSATION PLANS - Long-Term Incentive Plan (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "Duration_3_31_2021_To_3_31_2021_us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTypeOfDeferredCompensationAxis_cdre_LongTermIncentivePlanMember_f7ehZZAGp0qITxrAsYT9-g", "name": "cdre:NumberOfEqualInstallments", "unitRef": "Unit_Standard_installment_WBvTLMuwxUmYpkJRS--GYw", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "p", "cdre:CompensationPlansTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_3_31_2021_To_3_31_2021_us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTypeOfDeferredCompensationAxis_cdre_LongTermIncentivePlanMember_f7ehZZAGp0qITxrAsYT9-g", "name": "cdre:NumberOfEqualInstallments", "unitRef": "Unit_Standard_installment_WBvTLMuwxUmYpkJRS--GYw", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "p", "cdre:CompensationPlansTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R60": { "role": "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails", "longName": "40902 - Disclosure - COMPENSATION PLANS - Executive Compensation Plan (Details)", "shortName": "COMPENSATION PLANS - Executive Compensation Plan (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_cdre_ExecutiveCompensationPlanMember_sZ_mYnee80GkyxpyyednUw", "name": "cdre:CashBasedExecutiveCompensationPlanNumberOfAwardsGranted", "unitRef": "Unit_Standard_shares_j25WGSjigUm6vSHJMzYGzA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_cdre_ExecutiveCompensationPlanMember_sZ_mYnee80GkyxpyyednUw", "name": "cdre:CashBasedExecutiveCompensationPlanNumberOfAwardsGranted", "unitRef": "Unit_Standard_shares_j25WGSjigUm6vSHJMzYGzA", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R61": { "role": "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails", "longName": "41001 - Disclosure - LEASES - Schedule of operating assets and liabilities (Details)", "shortName": "LEASES - Schedule of operating assets and liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:OperatingLeaseRightOfUseAsset", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:OperatingLeaseLiabilityCurrent", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LeaseCostTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } }, "R62": { "role": "http://www.cadre-holdings.com/role/DisclosureLeasesComponentsOfLeaseExpenseDetails", "longName": "41002 - Disclosure - LEASES - Components of lease expense (Details)", "shortName": "LEASES - Components of lease expense (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "cdre:FixedOperatingLeaseCosts", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "cdre:FixedOperatingLeaseCosts", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R63": { "role": "http://www.cadre-holdings.com/role/DisclosureLeasesWeightedAverageRemainingLeaseTermAndDiscountRateDetails", "longName": "41003 - Disclosure - LEASES - Weighted average remaining lease term and discount rate (Details)", "shortName": "LEASES - Weighted average remaining lease term and discount rate (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "63", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "p", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R64": { "role": "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails", "longName": "41004 - Disclosure - LEASES - Future minimum lease payments under operating leases (Details)", "shortName": "LEASES - Future minimum lease payments under operating leases (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "64", "firstAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "As_Of_9_30_2023_j8VrrcKbGkuj1AjDDAThHg", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R65": { "role": "http://www.cadre-holdings.com/role/DisclosureLeasesSupplementalCashFlowInformationRelatedToLeasesDetails", "longName": "41005 - Disclosure - LEASES - Supplemental cash flow information related to leases (Details)", "shortName": "LEASES - Supplemental cash flow information related to leases (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "65", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:OperatingLeasePayments", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "cdre:ScheduleOfSupplementalCashFlowInformationRelatedToLeasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:OperatingLeasePayments", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "cdre:ScheduleOfSupplementalCashFlowInformationRelatedToLeasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R66": { "role": "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails", "longName": "41101 - Disclosure - RELATED PARTY TRANSACTIONS (Details)", "shortName": "RELATED PARTY TRANSACTIONS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "66", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "cdre:NumberOfDistributionWarehousesAndRetailStores", "unitRef": "Unit_Standard_warehouse_tcylS7UKskKUCLI5rlivTw", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "cdre:NumberOfDistributionWarehousesAndRetailStores", "unitRef": "Unit_Standard_warehouse_tcylS7UKskKUCLI5rlivTw", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R67": { "role": "http://www.cadre-holdings.com/role/DisclosureSegmentDataOtherDetails", "longName": "41201 - Disclosure - SEGMENT DATA - Other (Details)", "shortName": "SEGMENT DATA - Other (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "67", "firstAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "Unit_Standard_segment_XKyh_hXx0k2EsbBNSoPMKw", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "Duration_1_1_2023_To_9_30_2023_sl5P5EaaY0q-AhTaSfmO2Q", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "Unit_Standard_segment_XKyh_hXx0k2EsbBNSoPMKw", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true, "unique": true } }, "R68": { "role": "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails", "longName": "41202 - Disclosure - SEGMENT DATA - asset information or operating expenses by segment (Details)", "shortName": "SEGMENT DATA - asset information or operating expenses by segment (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "68", "firstAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_10oAE7lhTk6fB2W6Z0ni3Q", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "Duration_7_1_2023_To_9_30_2023_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember_lvXG3dTjEU6fSZG-Kb01Dw", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "Unit_Standard_USD_2Gke9UkNV0qRQvE-CmCVYg", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdre-20230930x10q.htm", "unique": true } } }, "tag": { "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentData" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Disclosure [Text Block]", "terseLabel": "SEGMENT DATA", "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": [ "r248", "r249", "r250", "r251", "r252", "r264", "r269", "r273", "r274", "r275", "r276", "r277", "r278", "r281" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "terseLabel": "Expected timing of satisfaction", "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r166" ] }, "cdre_ScheduleOfDebtTable": { "xbrltype": "stringItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ScheduleOfDebtTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "documentation": "n/a", "label": "Schedule Of Debt [Table]" } } }, "auth_ref": [] }, "cdre_ScheduleOfDebtLineItem": { "xbrltype": "stringItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ScheduleOfDebtLineItem", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "documentation": "n/a", "label": "Schedule Of Debt [Line Item]", "terseLabel": "Debt" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsDetailsCalc2": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "negatedLabel": "Less: Amount representing interest", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r484" ] }, "us-gaap_LesseeOperatingLeaseRenewalTerm": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseRenewalTerm", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Renewal Term", "terseLabel": "Optional lease extension terms", "documentation": "Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r767" ] }, "cdre_CurrentPortionOfTermLoanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "CurrentPortionOfTermLoanMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "documentation": "The represent information pertaining to current portion of term loan member.", "label": "Current portion of term loan" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "negatedTerseLabel": "Prepaid expenses and other assets", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r7" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "terseLabel": "Summary of segment data", "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": [ "r52", "r53", "r54", "r56" ] }, "us-gaap_SharesIssuedPricePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesIssuedPricePerShare", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Shares Issued, Price Per Share", "terseLabel": "Issue price", "documentation": "Per share or per unit amount of equity securities issued." } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesWeightedAverageRemainingLeaseTermAndDiscountRateDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Weighted Average Remaining Lease Term", "terseLabel": "Operating leases weighted average remaining lease term (years):", "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r482", "r693" ] }, "us-gaap_SaleOfStockNameOfTransactionDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SaleOfStockNameOfTransactionDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Sale of Stock [Domain]", "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetUsefulLife", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Asset, Useful Life", "terseLabel": "Weighted Average 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_ProceedsFromIssuanceOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromIssuanceOfCommonStock", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Issuance of Common Stock", "terseLabel": "Proceeds from secondary offering, net of underwriter discounts", "documentation": "The cash inflow from the additional capital contribution to the entity." } } }, "auth_ref": [ "r4" ] }, "cdre_InsurancePremiumFinancingMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "InsurancePremiumFinancingMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "documentation": "The represent information pertaining to insurance premium financing member.", "label": "Insurance premium financing" } } }, "auth_ref": [] }, "us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]", "documentation": "Schedule that discloses the location and fair value amounts of derivative instruments (and nonderivative instruments that are designated and qualify as hedging instruments) reported in the statement of financial position." } } }, "auth_ref": [ "r89", "r91", "r98" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingInformationLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Information [Line Items]", "terseLabel": "Segment Data", "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_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiability", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsDetailsCalc2": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 }, "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails", "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability", "totalLabel": "Total lease liabilities", "verboseLabel": "Present value of lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r474" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "lang": { "en-us": { "role": { "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": [ "r52", "r53", "r54", "r56" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 }, "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Inventory, Net", "terseLabel": "Inventories", "totalLabel": "Total", "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": [ "r183", "r662", "r694" ] }, "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Acquisition, Percentage of Voting Interests Acquired", "terseLabel": "Percentage acquired", "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination." } } }, "auth_ref": [ "r76" ] }, "cdre_ScheduleOfEstimatedFairValueOfSwapAgreement": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ScheduleOfEstimatedFairValueOfSwapAgreement", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtTables" ], "lang": { "en-us": { "role": { "documentation": "The tabular disclosure Estimated Fair Value Of Swap Agreement.", "label": "Schedule Of Estimated Fair Value Of Swap Agreement", "terseLabel": "Schedule of fair value swap agreement" } } }, "auth_ref": [] }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "lang": { "en-us": { "role": { "label": "Acquired Finite-lived Intangible Assets, Weighted Average Useful Life", "terseLabel": "Average Useful Life", "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r141" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Current", "terseLabel": "Current operating lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r474" ] }, "us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Acquisition, Goodwill, Expected Tax Deductible Amount", "terseLabel": "Goodwill, non-deductible for tax purposes", "documentation": "The amount of goodwill arising from a business combination that is expected to be deductible for tax purposes." } } }, "auth_ref": [ "r83" ] }, "cdre_StockSplitAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "StockSplitAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "No definition available.", "label": "Stock Split [Abstract]", "terseLabel": "Stock Split" } } }, "auth_ref": [] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "Comprehensive income, net of tax", "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r35", "r196", "r198", "r203", "r513", "r529" ] }, "us-gaap_DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeAssetStatementOfFinancialPositionExtensibleEnumeration", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Derivative Asset, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes derivative asset." } } }, "auth_ref": [ "r437" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Business Acquisition [Axis]", "documentation": "Information by business combination or series of individually immaterial business combinations." } } }, "auth_ref": [ "r75", "r77", "r427", "r688", "r689" ] }, "us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAccruedWarrantiesAndRelatedCostsDetails" ], "lang": { "en-us": { "role": { "label": "Movement in Standard and Extended Product Warranty Accrual, Increase (Decrease) [Roll Forward]", "terseLabel": "Changes in the Company's accrued warranties and related costs", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchase of property and equipment", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r133" ] }, "cdre_CommercialMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "CommercialMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to commercial.", "label": "Commercial" } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAcquireeDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Business Acquisition, Acquiree [Domain]", "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree." } } }, "auth_ref": [ "r427", "r688", "r689" ] }, "srt_StatementScenarioAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementScenarioAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Scenario [Axis]" } } }, "auth_ref": [ "r232", "r400", "r716", "r717", "r735" ] }, "us-gaap_PaymentsOfDividends": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfDividends", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments of Dividends", "negatedTerseLabel": "Dividends distributed", "documentation": "Cash outflow in the form of capital distributions and dividends to common shareholders, preferred shareholders and noncontrolling interests." } } }, "auth_ref": [ "r40" ] }, "cdre_U.s.FederalAgenciesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "U.s.FederalAgenciesMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to U.S. federal agencies.", "label": "U.S. federal agencies" } } }, "auth_ref": [] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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": [ "r450", "r451", "r454" ] }, "us-gaap_OtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Assets, Current", "terseLabel": "Other current assets", "documentation": "Amount of current assets classified as other." } } }, "auth_ref": [ "r185", "r694" ] }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "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": [ "r75", "r77", "r427" ] }, "srt_ScenarioUnspecifiedDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScenarioUnspecifiedDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Scenario [Domain]" } } }, "auth_ref": [ "r232", "r400", "r716", "r735" ] }, "srt_ConsolidationItemsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]" } } }, "auth_ref": [ "r218", "r254", "r265", "r266", "r267", "r268", "r269", "r271", "r275", "r326", "r327", "r328", "r329", "r331", "r332", "r334", "r336", "r337", "r756", "r757" ] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Selling, General and Administrative Expense", "terseLabel": "Selling, general and administrative", "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": [ "r129" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 1.0 }, "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Noncurrent", "terseLabel": "Long-term operating lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r474" ] }, "us-gaap_BusinessAcquisitionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "label": "Business Acquisition [Line Items]", "terseLabel": "ACQUISITIONS", "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": [ "r427" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "label": "Finite-lived Intangible Assets Amortization Expense [Table Text Block]", "terseLabel": "Summary of estimated amortization expense for definite lived intangible assets", "documentation": "Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life." } } }, "auth_ref": [] }, "cdre_InternationalMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "InternationalMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to International.", "label": "International" } } }, "auth_ref": [] }, "us-gaap_TechnologyBasedIntangibleAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TechnologyBasedIntangibleAssetsMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Technology", "documentation": "Technology-based intangible assets, including, but not limited to, patented technology, unpatented technology, and developed technology rights." } } }, "auth_ref": [ "r17" ] }, "cdre_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of amortizable finite-lived intangible assets, in total and by major class, including the gross carrying amount and accumulated amortization, and indefinite-lived intangible assets not subject to amortization, excluding goodwill, in total and by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.", "label": "Schedule Of Finite Lived And Indefinite Lived Intangible Assets By Major Class [Table Text Block]", "terseLabel": "Summary of intangible assets" } } }, "auth_ref": [] }, "cdre_OtherMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "OtherMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to other sales channel.", "label": "Other" } } }, "auth_ref": [] }, "srt_ConsolidationItemsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]" } } }, "auth_ref": [ "r218", "r254", "r265", "r266", "r267", "r268", "r269", "r271", "r275", "r326", "r327", "r328", "r329", "r331", "r332", "r334", "r336", "r337", "r756", "r757" ] }, "us-gaap_TemporaryEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TemporaryEquityAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Temporary Equity [Abstract]", "terseLabel": "Mezzanine equity" } } }, "auth_ref": [] }, "us-gaap_SubsidiarySaleOfStockAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsidiarySaleOfStockAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Sale of Stock [Axis]", "documentation": "Information by type of sale of the entity's stock." } } }, "auth_ref": [] }, "cdre_FiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTable": { "xbrltype": "stringItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "FiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite Lived And Indefinite Lived Intangible Assets By Major Class [Table]" } } }, "auth_ref": [] }, "us-gaap_ProceedsFromLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromLinesOfCredit", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Lines of Credit", "terseLabel": "Proceeds from revolving credit facilities", "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements." } } }, "auth_ref": [ "r38", "r729" ] }, "cdre_FiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "FiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite Lived And Indefinite Lived Intangible Assets By Major Class [Line Items]", "terseLabel": "Goodwill and Other Intangible Assets" } } }, "auth_ref": [] }, "cdre_NumberOfDistributionWarehousesAndRetailStores": { "xbrltype": "integerItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "NumberOfDistributionWarehousesAndRetailStores", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the number of distribution warehouses and retail stores.", "label": "Number Of Distribution Warehouses And Retail Stores", "terseLabel": "Number of distribution warehouses and retail stores" } } }, "auth_ref": [] }, "cdre_DistributionServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "DistributionServicesMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails", "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to the Distribution segment.", "label": "Distribution" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "terseLabel": "Changes in operating assets and liabilities, net of impact of acquisitions:" } } }, "auth_ref": [] }, "cdre_U.s.stateAndLocalAgenciesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "U.s.stateAndLocalAgenciesMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to U.S. state and local agencies.", "label": "U.S. state and local agencies" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAvailableToCommonStockholdersBasic", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss) Available to Common Stockholders, Basic", "verboseLabel": "Net income (loss)", "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) available to common shareholders." } } }, "auth_ref": [ "r206", "r224", "r225", "r226", "r227", "r233", "r234", "r241", "r244", "r252", "r266", "r272", "r275", "r669" ] }, "cdre_ProductsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ProductsMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails", "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to the Product segment.", "label": "Product." } } }, "auth_ref": [] }, "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsByRelatedPartyAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Related Party [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": [ "r398", "r489", "r490", "r500", "r501", "r502", "r503", "r504", "r505", "r506", "r507", "r508", "r509", "r510", "r511", "r572", "r573", "r574", "r575", "r576", "r596", "r598", "r628", "r770" ] }, "cdre_ScheduleOfInterestRateSwapsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ScheduleOfInterestRateSwapsTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtTables" ], "lang": { "en-us": { "role": { "documentation": "The tabular disclosure of interest rate swaps.", "label": "Schedule Of Interest Rate Swaps [Table Text Block]", "terseLabel": "Schedule of Interest rate swaps" } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncomeParenthetical" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Tax, Portion Attributable to Parent", "terseLabel": "Foreign currency translation adjustments, net of tax expense (benefit)", "documentation": "Amount of tax expense (benefit), after 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": [ "r6", "r12", "r151" ] }, "us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredCompensationArrangementWithIndividualCompensationExpense", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Compensation Arrangement with Individual, Compensation Expense", "terseLabel": "Unrecognized compensation expense", "documentation": "The compensation expense recognized during the period pertaining to the deferred compensation arrangement." } } }, "auth_ref": [ "r69", "r148" ] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 2.0 }, "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss) Attributable to Parent", "totalLabel": "Net income (loss)", "verboseLabel": "Net income (loss)", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r126", "r136", "r158", "r171", "r194", "r197", "r201", "r216", "r222", "r224", "r225", "r226", "r227", "r230", "r231", "r240", "r252", "r266", "r272", "r275", "r285", "r326", "r327", "r329", "r330", "r331", "r333", "r335", "r337", "r338", "r448", "r458", "r528", "r599", "r621", "r622", "r669", "r706", "r756" ] }, "us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Unused Capacity, Commitment Fee Percentage", "terseLabel": "Unused line fee (as a percent)", "documentation": "The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility." } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentMaturityDateRangeEnd1": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentMaturityDateRangeEnd1", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Maturity Date Range, End", "verboseLabel": "Debt instrument, end maturity date", "documentation": "Latest date the outstanding debt instruments are required to be repaid, in YYYY-MM-DD format." } } }, "auth_ref": [ "r28" ] }, "us-gaap_OperatingSegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingSegmentsMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "lang": { "en-us": { "role": { "label": "Operating segments", "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": [ "r265", "r266", "r267", "r268", "r269", "r275" ] }, "us-gaap_LeaseCostTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCostTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "label": "Lease, Cost [Table Text Block]", "terseLabel": "Schedule of operating leases", "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income." } } }, "auth_ref": [ "r768" ] }, "us-gaap_OtherAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Other assets", "documentation": "Primary financial statement caption encompassing other assets." } } }, "auth_ref": [ "r89", "r98" ] }, "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementPolicyPolicyTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Fair Value Measurement, Policy [Policy Text Block]", "terseLabel": "Fair Value Measurements", "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities." } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingencies" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Text Block]", "terseLabel": "COMMITMENTS AND CONTINGENCIES", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r145", "r315", "r316", "r647", "r751" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Liabilities, Noncurrent", "terseLabel": "Other liabilities", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r30" ] }, "us-gaap_ProfitLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProfitLoss", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 13.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "terseLabel": "Net income (loss)", "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest." } } }, "auth_ref": [ "r171", "r194", "r197", "r209", "r216", "r222", "r230", "r231", "r252", "r266", "r272", "r275", "r285", "r326", "r327", "r329", "r330", "r331", "r333", "r335", "r337", "r338", "r430", "r433", "r434", "r448", "r458", "r515", "r527", "r557", "r599", "r621", "r622", "r669", "r691", "r692", "r707", "r724", "r756" ] }, "us-gaap_ScheduleOfDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDebtTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Debt [Table Text Block]", "terseLabel": "Schedule of company's debt", "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_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Par or Stated Value Per Share", "terseLabel": "Common stock, par value", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r115" ] }, "us-gaap_InterestRateSwapMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestRateSwapMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails", "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Interest Rate Swaps", "documentation": "Forward based contracts in which two parties agree to swap periodic payments that are fixed at the outset of the swap contract with variable payments based on a market interest rate (index rate) over a specified period." } } }, "auth_ref": [ "r660", "r703", "r704" ] }, "us-gaap_ShortTermBorrowings": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermBorrowings", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "label": "Short-term Debt", "terseLabel": "Short-term debt", "documentation": "Reflects the total carrying amount as of the balance sheet date of debt having initial terms less than one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r110", "r153", "r694", "r779" ] }, "us-gaap_BalanceSheetLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Domain]", "documentation": "Location in the balance sheet (statement of financial position)." } } }, "auth_ref": [ "r89", "r93" ] }, "us-gaap_DerivativesFairValueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativesFairValueLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Derivatives, Fair Value [Line Items]", "terseLabel": "Interest Rate Swaps", "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_LettersOfCreditOutstandingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LettersOfCreditOutstandingAmount", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Letters of Credit Outstanding, Amount", "terseLabel": "Outstanding letters of credit", "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date." } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "Accounts receivable", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r7" ] }, "us-gaap_AccruedIncomeTaxesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedIncomeTaxesCurrent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accrued Income Taxes, Current", "terseLabel": "Income tax payable", "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": [ "r112", "r154" ] }, "us-gaap_BusinessCombinationAcquisitionRelatedCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationAcquisitionRelatedCosts", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Acquisition Related Costs", "terseLabel": "Acquisition-related costs incurred during the period", "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities." } } }, "auth_ref": [ "r74" ] }, "us-gaap_DebtInstrumentMaturityDateRangeStart1": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentMaturityDateRangeStart1", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Maturity Date Range, Start", "terseLabel": "Debt instrument, start maturity date", "documentation": "Earliest date the outstanding debt instruments are required to be repaid, in YYYY-MM-DD format." } } }, "auth_ref": [ "r28" ] }, "us-gaap_FairValueByMeasurementBasisAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByMeasurementBasisAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Measurement Basis [Axis]", "documentation": "Information by measurement basis." } } }, "auth_ref": [ "r16", "r101", "r353", "r673", "r674" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]", "terseLabel": "Weighted average shares outstanding:" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes current operating lease liability." } } }, "auth_ref": [ "r475" ] }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SignificantAccountingPoliciesTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPolicies" ], "lang": { "en-us": { "role": { "label": "Significant Accounting Policies [Text Block]", "terseLabel": "SIGNIFICANT ACCOUNTING POLICIES", "documentation": "The entire disclosure for all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r137", "r214" ] }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current", "totalLabel": "Total current assets", "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": [ "r172", "r186", "r216", "r285", "r326", "r327", "r329", "r330", "r331", "r333", "r335", "r337", "r338", "r431", "r435", "r458", "r694", "r756", "r757", "r771" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value, Recurring and Nonrecurring [Table]", "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis." } } }, "auth_ref": [ "r450", "r451", "r454" ] }, "us-gaap_AssetsFairValueDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsFairValueDisclosureAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Assets, Fair Value Disclosure [Abstract]", "terseLabel": "Assets:" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "Current assets" } } }, "auth_ref": [] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "label": "Document and Entity Information [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "us-gaap_LeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCost", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesComponentsOfLeaseExpenseDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesComponentsOfLeaseExpenseDetails" ], "lang": { "en-us": { "role": { "label": "Lease, Cost", "totalLabel": "Total", "documentation": "Amount of lease cost recognized by lessee for lease contract." } } }, "auth_ref": [ "r479", "r693" ] }, "cdre_FixedOperatingLeaseCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "FixedOperatingLeaseCosts", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesComponentsOfLeaseExpenseDetails": { "parentTag": "us-gaap_LeaseCost", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesComponentsOfLeaseExpenseDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of fixed operating lease costs.", "label": "Fixed Operating Lease Costs", "terseLabel": "Fixed operating lease costs" } } }, "auth_ref": [] }, "us-gaap_LineOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCredit", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Line of Credit", "verboseLabel": "Amount outstanding", "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": [ "r19", "r155", "r780" ] }, "us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryRawMaterialsAndSuppliesNetOfReserves", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails" ], "lang": { "en-us": { "role": { "label": "Inventory, Raw Materials and Supplies, Net of Reserves", "terseLabel": "Raw materials and supplies", "documentation": "Aggregated amount of unprocessed materials to be used in manufacturing or production process and supplies that will be consumed. This amount is net of valuation reserves and adjustments." } } }, "auth_ref": [ "r139", "r720" ] }, "cdre_CanadianCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "CanadianCreditFacilityMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the Canadian Credit Facility.", "label": "Canadian Credit Facility" } } }, "auth_ref": [] }, "us-gaap_NoncompeteAgreementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncompeteAgreementsMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Non-compete agreements", "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party." } } }, "auth_ref": [ "r81" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, shares issued", "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": [ "r115" ] }, "us-gaap_FinanceLeasePrincipalPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeasePrincipalPayments", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Finance Lease, Principal Payments", "negatedTerseLabel": "Payment of capital leases", "documentation": "Amount of cash outflow for principal payment on finance lease." } } }, "auth_ref": [ "r476", "r480" ] }, "us-gaap_FairValueMeasurementFrequencyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementFrequencyDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Measurement Frequency [Domain]", "documentation": "Measurement frequency." } } }, "auth_ref": [] }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWorkInProcessNetOfReserves", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails" ], "lang": { "en-us": { "role": { "label": "Inventory, Work in Process, Net of Reserves", "terseLabel": "Work-in-process", "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing." } } }, "auth_ref": [ "r139", "r664" ] }, "us-gaap_TradeNamesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TradeNamesMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Tradenames", "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof." } } }, "auth_ref": [ "r80" ] }, "us-gaap_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Income Taxes Paid, Net", "terseLabel": "Cash paid for income taxes, net", "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": [ "r43" ] }, "cdre_ScheduleOfSupplementalCashFlowInformationRelatedToLeasesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ScheduleOfSupplementalCashFlowInformationRelatedToLeasesTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure for supplemental cash flow information related to leases.", "label": "Schedule of Supplemental Cash Flow Information Related to Leases [Table Text Block]", "terseLabel": "Schedule of supplemental cash flow information related leases" } } }, "auth_ref": [] }, "us-gaap_InventoryFinishedGoodsAndWorkInProcessNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryFinishedGoodsAndWorkInProcessNetOfReserves", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails" ], "lang": { "en-us": { "role": { "label": "Inventory, Finished Goods and Work in Process, Net of Reserves", "terseLabel": "Finished goods", "documentation": "The aggregated amount of merchandise or goods held by the entity and readily available for future sale plus items held by the entity which are partially complete or in the process of being readied for future sale. This amount is net of valuation reserves and adjustments." } } }, "auth_ref": [ "r139", "r720" ] }, "cdre_CashBasedLongTermIncentivePlanVestingPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "CashBasedLongTermIncentivePlanVestingPeriod", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "lang": { "en-us": { "role": { "documentation": "The vesting period for awards granted under the cash-based long-term incentive plan.", "label": "Cash-Based Long-Term Incentive Plan, Vesting Period", "terseLabel": "Vesting period for awards granted under the cash-based long-term incentive plan" } } }, "auth_ref": [] }, "cdre_CashBasedExecutiveCompensationPlanNumberOfAwardsGranted": { "xbrltype": "sharesItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "CashBasedExecutiveCompensationPlanNumberOfAwardsGranted", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "lang": { "en-us": { "role": { "documentation": "The number of awards granted under cash-based executive compensation plan.", "label": "Cash-Based Executive Compensation Plan, Number of Awards, Granted", "terseLabel": "Number of awards granted under cash-based executive compensation plan" } } }, "auth_ref": [] }, "cdre_LondonInterbankOfferedRateMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "LondonInterbankOfferedRateMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Interest rate at which a bank borrows funds from other banks in the London interbank market.", "label": "LIBOR" } } }, "auth_ref": [] }, "cdre_RelatedPartyExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "RelatedPartyExpense", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "documentation": "Related party expenses.", "label": "Related Party Expense", "terseLabel": "Related party expense" } } }, "auth_ref": [] }, "cdre_CashBasedExecutiveCompensationPlanNumberOfAwardsUnvested": { "xbrltype": "sharesItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "CashBasedExecutiveCompensationPlanNumberOfAwardsUnvested", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "lang": { "en-us": { "role": { "documentation": "The number of unvested awards under the cash-based executive compensation plan.", "label": "Cash-Based Executive Compensation Plan, Number of Awards, Unvested", "terseLabel": "Number of unvested units under cash-based executive compensation plan" } } }, "auth_ref": [] }, "cdre_RelatedPartyExpenseAcquisitionCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "RelatedPartyExpenseAcquisitionCosts", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "documentation": "Related party expense pertaining to acquisitions.", "label": "Related Party Expense, Acquisition Costs", "terseLabel": "Related party, acquisition costs" } } }, "auth_ref": [] }, "cdre_CompensationPlansTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "CompensationPlansTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlans" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for compensation plans.", "label": "Compensation Plans [Text Block]", "terseLabel": "COMPENSATION PLANS" } } }, "auth_ref": [] }, "cdre_CashBasedExecutiveCompensationPlanNumberOfAwardsExpectedToVest": { "xbrltype": "sharesItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "CashBasedExecutiveCompensationPlanNumberOfAwardsExpectedToVest", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "lang": { "en-us": { "role": { "documentation": "The number of awards expected to vest under the cash-based executive compensation plan.", "label": "Cash-Based Executive Compensation Plan, Number of Awards, Expected to Vest", "terseLabel": "Number of units expected to vest under cash-based executive compensation plan" } } }, "auth_ref": [] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Common Stock, Value, Issued", "terseLabel": "Common stock ($0.0001 par value, 190,000,000 shares authorized, 37,586,031 and 37,332,271 shares issued and outstanding as of September 30, 2023 and December 31, 2022, respectively)", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r115", "r519", "r694" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "Change in cash and cash equivalents", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r2", "r134" ] }, "cdre_CashBasedExecutiveCompensationPlanGrantDateFairValueCommonStock": { "xbrltype": "perShareItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "CashBasedExecutiveCompensationPlanGrantDateFairValueCommonStock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "lang": { "en-us": { "role": { "documentation": "The grant date fair value per share of common stock of all vested and unvested units under the cash-based executive compensation plan.", "label": "Cash-Based Executive Compensation Plan, Grant Date Fair Value, Common Stock", "terseLabel": "Grant date fair value per share of common stock of all vested and unvested units under the cash-based executive compensation plan" } } }, "auth_ref": [] }, "cdre_CashBasedLongTermIncentivePlanCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "CashBasedLongTermIncentivePlanCompensationExpense", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "lang": { "en-us": { "role": { "documentation": "Compensation expense related to the cash-based long-term incentive plan.", "label": "Cash-Based Long-Term Incentive Plan, Compensation Expense", "terseLabel": "Compensation expense related to the cash-based long-term incentive plan" } } }, "auth_ref": [] }, "cdre_VariableOperatingLeaseCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "VariableOperatingLeaseCosts", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesComponentsOfLeaseExpenseDetails": { "parentTag": "us-gaap_LeaseCost", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesComponentsOfLeaseExpenseDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of variable operating lease costs.", "label": "Variable Operating Lease Costs", "terseLabel": "Variable operating lease costs" } } }, "auth_ref": [] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations", "terseLabel": "Effect of foreign exchange rates on cash and cash equivalents", "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r765" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionTables" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Table Text Block]", "terseLabel": "Summary of disaggregation of net sales by channel and geography", "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r759" ] }, "cdre_RelatedPartyTransactionRentExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "RelatedPartyTransactionRentExpense", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "documentation": "Rent expense, in a related party transaction.", "label": "Related Party Transaction, Rent Expense", "terseLabel": "Rent expense" } } }, "auth_ref": [] }, "us-gaap_OverAllotmentOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OverAllotmentOptionMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Over-Allotment Option", "documentation": "Right given to the underwriter to sell additional shares over the initial allotment." } } }, "auth_ref": [] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock, shares authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r115", "r579" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "periodEndLabel": "Cash and cash equivalents, end of period", "periodStartLabel": "Cash and cash equivalents, beginning of period", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount 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": [ "r42", "r134", "r213" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssets" ], "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "terseLabel": "GOODWILL AND OTHER INTANGIBLE ASSETS", "documentation": "The entire disclosure for goodwill and intangible assets." } } }, "auth_ref": [ "r140" ] }, "cdre_NewCreditAgreementAugust2021Member": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "NewCreditAgreementAugust2021Member", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the \"New Credit Agreement\" entered into August 20, 2021.", "label": "2021 Credit Facility" } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails", "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails", "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "terseLabel": "Net sales", "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": [ "r253", "r254", "r265", "r270", "r271", "r277", "r279", "r281", "r386", "r387", "r497" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Common Stock, Shares, Outstanding", "periodEndLabel": "Balance at the end (in shares)", "periodStartLabel": "Balance at the beginning (in shares)", "terseLabel": "Common stock, shares outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r14", "r115", "r579", "r597", "r786", "r787" ] }, "cdre_ScenarioPeriodThreeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ScenarioPeriodThreeMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Period after the quarter ended September 30, 2022.", "label": "Period after the quarter ended September 30, 2023" } } }, "auth_ref": [] }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesSupplementalCashFlowInformationRelatedToLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability", "verboseLabel": "Operating leases", "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability." } } }, "auth_ref": [ "r481", "r693" ] }, "cdre_OtherLongTermDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "OtherLongTermDebtMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "documentation": "The represent information pertaining to other long term debt member.", "label": "Other." } } }, "auth_ref": [] }, "cdre_TermLoanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "TermLoanMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "documentation": "The represent information pertaining to term loan member.", "label": "Term loan" } } }, "auth_ref": [] }, "us-gaap_LeasesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeasesAbstract", "lang": { "en-us": { "role": { "label": "LEASES" } } }, "auth_ref": [] }, "us-gaap_TrademarksMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TrademarksMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "lang": { "en-us": { "role": { "label": "Trademarks", "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style." } } }, "auth_ref": [ "r80" ] }, "cdre_LongTermIncentivePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "LongTermIncentivePlanMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the long-term incentive plan.", "label": "Long-Term Incentive Plan" } } }, "auth_ref": [] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "Supplemental Disclosure of Cash Flows Information:" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent", "periodEndLabel": "Balance at the end", "periodStartLabel": "Balance at the beginning", "totalLabel": "Total shareholders' equity", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r115", "r118", "r119", "r138", "r581", "r597", "r624", "r625", "r694", "r708", "r730", "r738", "r764", "r786" ] }, "us-gaap_DisaggregationOfRevenueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails", "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "Revenue Recognition", "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": [ "r387", "r678", "r679", "r680", "r681", "r682", "r683", "r684" ] }, "cdre_ExecutiveCompensationPlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ExecutiveCompensationPlanMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the executive compensation plan.", "label": "Executive Compensation Plan" } } }, "auth_ref": [] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]" } } }, "auth_ref": [ "r279", "r280", "r562", "r565", "r567", "r630", "r632", "r635", "r644", "r646", "r648", "r649", "r650", "r651", "r652", "r653", "r654", "r655", "r656", "r661", "r679", "r698", "r759", "r781" ] }, "cdre_SwingLineLoansMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "SwingLineLoansMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Information pertaining to swing line loans.", "label": "Swing line loans" } } }, "auth_ref": [] }, "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price on total principal payments.", "label": "Long Term Debt Maturities Repayments Of Total Principal Payments", "totalLabel": "Total principal payments" } } }, "auth_ref": [] }, "cdre_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedLiabilities", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of accrued liabilities assumed at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Accrued Liabilities", "terseLabel": "Accrued liabilities" } } }, "auth_ref": [] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails", "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Table]", "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r387", "r678", "r679", "r680", "r681", "r682", "r683", "r684" ] }, "cdre_BusinessCombinationAcquisitionRelatedCostsAggregate": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "BusinessCombinationAcquisitionRelatedCostsAggregate", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "lang": { "en-us": { "role": { "documentation": "The total business acquisition-related costs for the acquisition.", "label": "Business Combination, Acquisition Related Costs, Aggregate", "terseLabel": "Total acquisition-related costs" } } }, "auth_ref": [] }, "cdre_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finite-Lived Intangible Asset, Expected Amortization, after Year Four", "terseLabel": "Thereafter" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies.", "terseLabel": "Commitments and contingencies (Note 7)", "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": [ "r31", "r109", "r518", "r578" ] }, "cdre_PercentageOfCommitmentFee": { "xbrltype": "percentItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "PercentageOfCommitmentFee", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage of commitment fee for funds borrowed, under the debt agreement.", "label": "Percentage of Commitment Fee", "terseLabel": "Commitment Fee" } } }, "auth_ref": [] }, "cdre_CyalumeAcquisitionMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "CyalumeAcquisitionMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "documentation": "Represents the member information pertaining to Cyalume Acquisition.", "label": "Cyalume" } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesLongTermDebt", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities, Long-term Debt", "terseLabel": "Long-term debt", "verboseLabel": "Other long-term liabilities", "documentation": "Amount of long-term debt due after one year or the normal operating cycle, if longer, assumed at the acquisition date." } } }, "auth_ref": [ "r79" ] }, "cdre_DebtInstrumentTotalNetLeverageRatio": { "xbrltype": "pureItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "DebtInstrumentTotalNetLeverageRatio", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the total net leverage ratio required by a loan security agreement debt covenant.", "label": "Debt Instrument, Total Net Leverage Ratio", "terseLabel": "Total net leverage ratio" } } }, "auth_ref": [] }, "cdre_AmortizationOfInventory": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "AmortizationOfInventory", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 14.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Amount of amortization expense for inventory.", "label": "Amortization of Inventory", "terseLabel": "Amortization of inventory step-up" } } }, "auth_ref": [] }, "cdre_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, Payments, Due after Year Four", "terseLabel": "Thereafter" } } }, "auth_ref": [] }, "cdre_DebtInstrumentFixedChargeCoverageRatioThreshold": { "xbrltype": "pureItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "DebtInstrumentFixedChargeCoverageRatioThreshold", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the minimum fixed charge coverage ratio required by a loan security agreement debt covenant.", "label": "Debt Instrument, Fixed Charge Coverage Ratio Threshold", "terseLabel": "Minimum fixed charge coverage ratio" } } }, "auth_ref": [] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Accumulated deficit", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r117", "r147", "r522", "r547", "r549", "r552", "r580", "r694" ] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligation", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Amount", "terseLabel": "Remaining performance obligations", "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue." } } }, "auth_ref": [ "r165" ] }, "cdre_DebtInstrumentIncreaseInTotalNetLeverageRatioDueToMajorAcquisitions": { "xbrltype": "pureItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "DebtInstrumentIncreaseInTotalNetLeverageRatioDueToMajorAcquisitions", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the increase in total net leverage ratio required by a loan security agreement debt covenant due to material acquisitions.", "label": "Debt Instrument, Increase In Total Net Leverage Ratio Due To Major Acquisitions", "terseLabel": "Increase in total net leverage ratio" } } }, "auth_ref": [] }, "cdre_DebtInstrumentPercentageOfUpfrontFee": { "xbrltype": "percentItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "DebtInstrumentPercentageOfUpfrontFee", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage of Of upfront fee for funds borrowed, under the debt agreement.", "label": "Debt Instrument, Percentage Of Upfront Fee", "terseLabel": "Upfront Fee" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted", "netLabel": "Weighted average shares outstanding - diluted", "terseLabel": "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": [ "r235", "r244" ] }, "cdre_KandersCompanyIncMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "KandersCompanyIncMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information about Kanders & Company, Inc.", "label": "Kanders & Company, Inc" } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format." } } }, "auth_ref": [ "r166" ] }, "cdre_SecondaryOfferingMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "SecondaryOfferingMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Secondary Offering.", "label": "Secondary Offering" } } }, "auth_ref": [] }, "cdre_FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTransfersOfAssetsOrLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of transfers of assets and liabilities measured on a recurring between fair value measurement levels.", "label": "Fair Value Assets and Liabilities Transfers Between Fair Value Measurement Levels Amount", "terseLabel": "Transfers between fair value measurement levels, amount" } } }, "auth_ref": [] }, "cdre_DeferredTaxLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "DeferredTaxLiabilitiesNet", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.", "label": "Deferred Tax Liabilities Net", "terseLabel": "Deferred tax liabilities" } } }, "auth_ref": [] }, "us-gaap_OperatingLeasePayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeasePayments", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesSupplementalCashFlowInformationRelatedToLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Payments", "verboseLabel": "Operating cash flows - operating leases", "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use." } } }, "auth_ref": [ "r477", "r480" ] }, "cdre_NumberOfEqualInstallments": { "xbrltype": "integerItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "NumberOfEqualInstallments", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "lang": { "en-us": { "role": { "documentation": "Number of equal installments.", "label": "Number OF Equal Installments", "terseLabel": "Number of equal installments" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Basic", "terseLabel": "Basic", "verboseLabel": "Weighted average shares outstanding - basic", "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": [ "r233", "r244" ] }, "cdre_SecondaryOfferingPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "SecondaryOfferingPolicyTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for secondary offering.", "label": "Secondary Offering [Policy Text Block]", "terseLabel": "Secondary Offering" } } }, "auth_ref": [] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]" } } }, "auth_ref": [ "r279", "r280", "r562", "r565", "r567", "r630", "r632", "r635", "r644", "r648", "r649", "r650", "r651", "r652", "r653", "r654", "r655", "r656", "r661", "r679", "r698", "r759", "r781" ] }, "us-gaap_VariableRateDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableRateDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "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": [] }, "cdre_ScenarioPeriodOneMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ScenarioPeriodOneMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "Each quarter starting with the quarter ended December 31, 2021.", "label": "Each quarter starting with the quarter ended December 31, 2021" } } }, "auth_ref": [] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementsFairValueHierarchyDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value Hierarchy and NAV [Domain]", "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value." } } }, "auth_ref": [ "r353", "r392", "r393", "r394", "r395", "r396", "r397", "r492", "r493", "r494", "r673", "r674", "r685", "r686", "r687" ] }, "us-gaap_VariableRateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableRateAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Variable Rate [Axis]", "documentation": "Information by type of variable rate." } } }, "auth_ref": [] }, "cdre_RadarLeatherDivisionS.r.lMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "RadarLeatherDivisionS.r.lMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the member information pertaining to Radar Leather Division S.r.l.", "label": "Radar" } } }, "auth_ref": [] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapital", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Additional Paid in Capital", "terseLabel": "Additional paid-in capital", "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock." } } }, "auth_ref": [ "r116", "r694", "r784" ] }, "cdre_PaymentsOfDeferredIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "PaymentsOfDeferredIssuanceCosts", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "The cash outflow for cost incurred directly with the deferred issuance of an equity security.", "label": "Payments of Deferred Issuance Costs", "negatedLabel": "Deferred offering costs" } } }, "auth_ref": [] }, "cdre_ScenarioPeriodTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ScenarioPeriodTwoMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "documentation": "From the Quarter Ended December 31, 2021 until the quarter ended September 30, 2022.", "label": "From the Quarter Ended December 31, 2022 until the quarter ended September 30, 2023" } } }, "auth_ref": [] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r709" ] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "terseLabel": "Recent Accounting Pronouncements", "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": [] }, "us-gaap_LongTermDebtCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtCurrent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Current Maturities", "terseLabel": "Current portion of long-term debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation." } } }, "auth_ref": [ "r179" ] }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesNewIssues", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Shares, New Issues", "terseLabel": "Number of shares issued", "verboseLabel": "Issuance of common stock in secondary offering, net of underwriter discounts and issuance costs (in shares)", "documentation": "Number of new stock issued during the period." } } }, "auth_ref": [ "r14", "r114", "r115", "r147", "r551", "r623", "r645" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Allowance for Credit Loss, Current", "terseLabel": "Accounts receivable, allowance for doubtful accounts", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r182", "r284", "r288" ] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionContractLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Liability, Current", "terseLabel": "Contract liabilities, 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": [ "r368", "r369", "r388" ] }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares Issued, Shares, Share-based Payment Arrangement, after Forfeiture", "terseLabel": "Common stock withheld related to net share settlement of stock-based compensation (in shares)", "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": [ "r14", "r114", "r115", "r147" ] }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 3.0 }, "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Businesses, Net of Cash Acquired", "negatedLabel": "Business acquisitions, net of cash acquired", "netLabel": "Total consideration, net", "terseLabel": "Total consideration, net", "totalLabel": "Total consideration, net", "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase." } } }, "auth_ref": [ "r37" ] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventories" ], "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Text Block]", "terseLabel": "INVENTORIES", "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": [ "r290" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r711" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "parentTag": "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Maturity, Year One", "verboseLabel": "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": [ "r10", "r218", "r357" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "parentTag": "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Maturity, Year Four", "terseLabel": "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": [ "r10", "r218", "r357" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "parentTag": "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Maturity, Year Three", "terseLabel": "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": [ "r10", "r218", "r357" ] }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AcquiredFiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "lang": { "en-us": { "role": { "label": "Acquired Finite-Lived Intangible Assets [Line Items]", "terseLabel": "ACQUISITIONS", "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_Dividends": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Dividends", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Dividends", "negatedLabel": "Dividends declared", "documentation": "Amount of paid and unpaid cash, stock, and paid-in-kind (PIK) dividends declared, for example, but not limited to, common and preferred stock." } } }, "auth_ref": [ "r5", "r147" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "parentTag": "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Maturity, Year Two", "terseLabel": "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": [ "r10", "r218", "r357" ] }, "us-gaap_LongTermDebtNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtNoncurrent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 3.0 }, "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Excluding Current Maturities", "terseLabel": "Long-term debt", "totalLabel": "Total long-term debt, net", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation." } } }, "auth_ref": [ "r180" ] }, "us-gaap_RevenueRemainingPerformanceObligationPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationPercentage", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Percentage", "terseLabel": "Percentage of remaining performance obligations expect to recognize", "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue." } } }, "auth_ref": [ "r718" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "totalLabel": "Income (loss) before provision for 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": [ "r0", "r125", "r157", "r252", "r266", "r272", "r275", "r515", "r526", "r669" ] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Other Nonoperating Income (Expense)", "terseLabel": "Other (expense) income, net", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r131" ] }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Business Acquisitions, by Acquisition [Table Text Block]", "terseLabel": "Schedule of total consideration", "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": [ "r75", "r77" ] }, "us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails": { "parentTag": "us-gaap_LongTermDebtNoncurrent", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Unamortized Discount (Premium) and Debt Issuance Costs, Net", "negatedLabel": "Unamortized debt discount and debt issuance costs", "documentation": "Amount of unamortized debt discount (premium) and debt issuance costs." } } }, "auth_ref": [ "r105", "r351", "r366", "r673", "r674" ] }, "us-gaap_DerivativeInstrumentRiskAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeInstrumentRiskAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails", "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Derivative Instrument [Axis]", "documentation": "Information by type of derivative contract." } } }, "auth_ref": [ "r90", "r92", "r94", "r95", "r568", "r570", "r584", "r585", "r586", "r587", "r588", "r589", "r590", "r592", "r593", "r594", "r595", "r610", "r611", "r612", "r613", "r616", "r617", "r618", "r619", "r636", "r637", "r639", "r641", "r665", "r696", "r698" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxAssetsNet", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred Income Tax Assets, Net", "terseLabel": "Deferred tax assets, net", "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": [ "r413", "r414" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation." } } }, "auth_ref": [] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfGoodsAndServicesSold", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Cost of Goods and Services Sold", "terseLabel": "Cost of goods sold", "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": [ "r128", "r497" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "terseLabel": "Revenue Recognition", "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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "terseLabel": "Property and equipment, accumulated depreciation and amortization", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r64", "r174", "r524" ] }, "us-gaap_NonoperatingIncomeExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NonoperatingIncomeExpenseAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Nonoperating Income (Expense) [Abstract]", "terseLabel": "Other expense" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Income Tax Expense (Benefit)", "negatedLabel": "(Provision) benefit for income taxes", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r160", "r167", "r230", "r231", "r260", "r415", "r423", "r531" ] }, "us-gaap_NonUsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NonUsMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails" ], "lang": { "en-us": { "role": { "label": "International.", "documentation": "Countries excluding the United States of America (US)." } } }, "auth_ref": [ "r788", "r789", "r790", "r791" ] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Axis]", "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME" } } }, "auth_ref": [] }, "us-gaap_CostOfGoodsAndServicesSoldAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfGoodsAndServicesSoldAmortization", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Cost, Amortization", "terseLabel": "Amortization expense included in cost of goods sold", "documentation": "Amount of expense for allocation of cost of intangible asset over its useful life directly used in production of good and rendering of service." } } }, "auth_ref": [ "r725" ] }, "us-gaap_CarryingReportedAmountFairValueDisclosureMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CarryingReportedAmountFairValueDisclosureMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Carrying amount", "documentation": "Measured as reported on the statement of financial position (balance sheet)." } } }, "auth_ref": [ "r102", "r103" ] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Amortization of Intangible Assets", "terseLabel": "Amortization expense", "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": [ "r8", "r58", "r63" ] }, "us-gaap_PortionAtFairValueFairValueDisclosureMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PortionAtFairValueFairValueDisclosureMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Portion at Fair Value Measurement [Member]", "documentation": "Measured at fair value for financial reporting purposes." } } }, "auth_ref": [ "r456" ] }, "us-gaap_NonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Nonoperating Income (Expense)", "totalLabel": "Total other expense, net", "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business)." } } }, "auth_ref": [ "r130" ] }, "us-gaap_CustomerRelationshipsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerRelationshipsMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Customer relationships", "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships." } } }, "auth_ref": [ "r82" ] }, "us-gaap_EstimateOfFairValueFairValueDisclosureMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EstimateOfFairValueFairValueDisclosureMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Fair value", "documentation": "Measured as an estimate of fair value." } } }, "auth_ref": [ "r353", "r457", "r673", "r674" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Accumulated other comprehensive income", "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source." } } }, "auth_ref": [ "r33", "r34", "r124", "r181", "r521", "r548", "r549" ] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Revolving credit facility.", "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": [] }, "us-gaap_ProductWarrantyAccrualWarrantiesIssued": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantyAccrualWarrantiesIssued", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAccruedWarrantiesAndRelatedCostsDetails" ], "lang": { "en-us": { "role": { "label": "Standard and Extended Product Warranty Accrual, Increase for Warranties Issued", "terseLabel": "Provision for current period sales", "documentation": "Amount of increase in the standard and extended product warranty accrual from warranties issued." } } }, "auth_ref": [ "r324" ] }, "us-gaap_ProductWarrantyAccrual": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantyAccrual", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAccruedWarrantiesAndRelatedCostsDetails" ], "lang": { "en-us": { "role": { "label": "Standard and Extended Product Warranty Accrual", "periodEndLabel": "Ending accrued warranty expense", "periodStartLabel": "Beginning accrued warranty expense", "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." } } }, "auth_ref": [ "r108", "r321", "r323", "r325" ] }, "us-gaap_TemporaryEquityCarryingAmountAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TemporaryEquityCarryingAmountAttributableToParent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Temporary Equity, Carrying Amount, Attributable to Parent", "terseLabel": "Preferred stock ($0.0001 par value, 10,000,000 shares authorized, no shares issued and outstanding as of September 30, 2023 and December 31, 2022)", "documentation": "Carrying amount, attributable to parent, of an entity's issued and outstanding stock which is not included within permanent equity. Temporary equity is a security with redemption features that are outside the control of the issuer, is not classified as an asset or liability in conformity with GAAP, and is not mandatorily redeemable. Includes any type of security that is redeemable at a fixed or determinable price or on a fixed or determinable date or dates, is redeemable at the option of the holder, or has conditions for redemption which are not solely within the control of the issuer. Includes stock with a put option held by an ESOP and stock redeemable by a holder only in the event of a change in control of the issuer." } } }, "auth_ref": [ "r326", "r329", "r330", "r331", "r337", "r338", "r410", "r520" ] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Nature of Operations and Basis of Presentation", "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [] }, "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCurrencyTransactionGainLossBeforeTax", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Foreign Currency Transaction Gain (Loss), before Tax", "negatedLabel": "Foreign exchange (gain) loss", "documentation": "Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction." } } }, "auth_ref": [ "r459", "r460", "r461", "r462", "r620" ] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "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": [ "r21", "r694" ] }, "cdre_ProceedsFromInsurancePremiumFinancing": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ProceedsFromInsurancePremiumFinancing", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Represents the cash inflow from insurance premium financing.", "label": "Proceeds From Insurance Premium Financing", "terseLabel": "Proceeds from insurance premium financing" } } }, "auth_ref": [] }, "cdre_RepaymentsOfInsurancePremiumFinancing": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "RepaymentsOfInsurancePremiumFinancing", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Represents the cash outflow from insurance premium financing.", "label": "Repayments of Insurance Premium Financing", "negatedLabel": "Principal payments on insurance premium financing" } } }, "auth_ref": [] }, "us-gaap_CreditFacilityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Domain]", "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "cdre_NumberOfManufacturingPlants": { "xbrltype": "integerItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "NumberOfManufacturingPlants", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the number of manufacturing plants.", "label": "Number of Manufacturing Plants", "terseLabel": "Number of manufacturing plants" } } }, "auth_ref": [] }, "us-gaap_CommonStockDividendsPerShareDeclared": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockDividendsPerShareDeclared", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquityParenthetical" ], "lang": { "en-us": { "role": { "label": "Common Stock, Dividends, Per Share, Declared", "verboseLabel": "Dividend declared (in dollars per share)", "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding." } } }, "auth_ref": [ "r147" ] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangiblesSummaryOfIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "negatedLabel": "Definite lived intangibles, Accumulated amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r176", "r309" ] }, "us-gaap_AmortizationOfFinancingCostsAndDiscounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfFinancingCostsAndDiscounts", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Amortization of Debt Issuance Costs and Discounts", "terseLabel": "Amortization of original issue discount and debt issue costs", "documentation": "Amount of amortization expense attributable to debt discount (premium) and debt issuance costs." } } }, "auth_ref": [ "r361", "r470", "r675", "r676", "r728" ] }, "us-gaap_ScheduleOfGoodwillTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfGoodwillTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "label": "Summary of changes in goodwill", "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule." } } }, "auth_ref": [ "r671", "r739", "r740", "r741", "r742", "r743", "r744", "r745", "r746", "r747", "r748", "r749" ] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED BALANCE SHEETS" } } }, "auth_ref": [] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]", "terseLabel": "Nature of Operations and Basis of Presentation" } } }, "auth_ref": [] }, "cdre_EmergingGrowthCompanyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "EmergingGrowthCompanyPolicyTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy pertaining to Emerging Growth Company.", "label": "Emerging Growth Company [Policy Text Block]", "terseLabel": "Emerging Growth Company" } } }, "auth_ref": [] }, "us-gaap_TemporaryEquitySharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TemporaryEquitySharesIssued", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Temporary Equity, Shares Issued", "terseLabel": "Preferred stock, shares issued", "documentation": "The number of securities classified as temporary equity that have been sold (or granted) to the entity's shareholders. Securities issued include securities outstanding and securities held in treasury. Temporary equity is a security with redemption features that are outside the control of the issuer, is not classified as an asset or liability in conformity with GAAP, and is not mandatorily redeemable. Includes any type of security that is redeemable at a fixed or determinable price or on a fixed or determinable date or dates, is redeemable at the option of the holder, or has conditions for redemption which are not solely within the control of the issuer. If convertible, the issuer does not control the actions or events necessary to issue the maximum number of shares that could be required to be delivered under the conversion option if the holder exercises the option to convert the stock to another class of equity. If the security is a warrant or a rights issue, the warrant or rights issue is considered to be temporary equity if the issuer cannot demonstrate that it would be able to deliver upon the exercise of the option by the holder in all cases. Includes stock with put option held by ESOP and stock redeemable by holder only in the event of a change in control of the issuer." } } }, "auth_ref": [ "r113" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Indefinite-lived Intangible Assets (Excluding Goodwill)", "terseLabel": "Indefinite lived intangibles", "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit." } } }, "auth_ref": [ "r144" ] }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Policy Text Block]", "terseLabel": "Revenue Recognition", "documentation": "Disclosure of accounting policy for revenue from contract with customer." } } }, "auth_ref": [ "r168", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r659" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "COMMITMENTS AND CONTINGENCIES" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by operating activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r134", "r135", "r136" ] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureIncomeTaxes" ], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Text Block]", "verboseLabel": "INCOME TAXES", "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": [ "r217", "r412", "r417", "r418", "r419", "r422", "r424", "r425", "r426", "r553" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r710" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash used in investing activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r210" ] }, "us-gaap_ContractWithCustomerSalesChannelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerSalesChannelAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Sales Channel [Axis]", "documentation": "Information by sales channel for delivery of good or service in contract with customer." } } }, "auth_ref": [ "r684", "r759" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 }, "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Goodwill", "periodEndLabel": "Balance at end of period", "periodStartLabel": "Balance at beginning of period", "terseLabel": "Goodwill", "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": [ "r175", "r293", "r512", "r671", "r694", "r740", "r747" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash (used in) provided by 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": [ "r210" ] }, "us-gaap_OtherOperatingActivitiesCashFlowStatement": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherOperatingActivitiesCashFlowStatement", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Other Operating Activities, Cash Flow Statement", "terseLabel": "Other", "documentation": "Other cash or noncash adjustments to reconcile net income to cash provided by (used in) operating activities that are not separately disclosed in the statement of cash flows (for example, cash received or cash paid during the current period for miscellaneous operating activities, net change during the reporting period in other assets or other liabilities)." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerSalesChannelDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerSalesChannelDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Sales Channel [Domain]", "documentation": "Sales channel for delivery of good or service in contract with customer. Includes, but is not limited to, directly to consumer and through intermediary." } } }, "auth_ref": [ "r684", "r759" ] }, "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomeNetOfTaxAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]", "terseLabel": "Other comprehensive income:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "terseLabel": "Cash Flows From Financing Activities:" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]", "terseLabel": "Schedule of acquired intangible assets", "documentation": "Tabular disclosure of finite-lived intangible assets acquired as part of a business combination or through an asset purchase, by major class and in total, including the value of the asset acquired, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period." } } }, "auth_ref": [ "r59" ] }, "us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "lang": { "en-us": { "role": { "label": "Equity-Based Arrangements, Individual Contracts, Type of Deferred Compensation [Axis]", "documentation": "Information by type of deferred compensation related to equity-based payment arrangements. Includes, but is not limited to, employment contracts with one or more selected officers or key employees. Excludes broad group equity-based compensation plans, defined benefit pension plans, defined benefit other postretirement benefit plans and other deferred compensation that is not equivalent to a defined benefit pension plan or a defined benefit other postretirement benefit plan." } } }, "auth_ref": [ "r70" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "terseLabel": "Cash Flows From Investing Activities:" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareReconciliationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareReconciliationAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share Reconciliation [Abstract]", "terseLabel": "Calculation of weighted average shares outstanding and net (loss) income per share" } } }, "auth_ref": [] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r317", "r318", "r319", "r320", "r391", "r399", "r403", "r404", "r405", "r495", "r496", "r543", "r569", "r570", "r629", "r631", "r633", "r634", "r643", "r657", "r658", "r670", "r677", "r690", "r695", "r698", "r750", "r758", "r774", "r775", "r776", "r777", "r778" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Cash Flows From Operating Activities:" } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFilerCategory", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r710" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent", "totalLabel": "Other comprehensive (loss) income", "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity." } } }, "auth_ref": [ "r6", "r12", "r151", "r195", "r198" ] }, "us-gaap_DeferredIncomeTaxesAndTaxCredits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxesAndTaxCredits", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Deferred Income Taxes and Tax Credits", "terseLabel": "Deferred income taxes", "documentation": "Amount of deferred income tax expense (benefit) and income tax credits." } } }, "auth_ref": [ "r136" ] }, "us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table]", "documentation": "A table containing detailed characteristics of finite-lived intangible assets acquired during a business combination. Finite-lived intangible assets are assets that have no physical form, but have expected future economic benefit, and are expected to be used over a defined period. Acquired finite-lived intangible assets are disclosed by major class (assets that can be grouped together because they are similar, either by their nature or by their use in operations of the Entity) and in total. Additionally, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period are also disclosed." } } }, "auth_ref": [ "r59" ] }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent", "terseLabel": "Foreign currency translation adjustments, net of tax(3)", "verboseLabel": "Foreign currency translation adjustments", "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity." } } }, "auth_ref": [ "r6", "r12", "r151" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r710" ] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Maximum" } } }, "auth_ref": [ "r317", "r318", "r319", "r320", "r399", "r496", "r543", "r569", "r570", "r629", "r631", "r633", "r634", "r643", "r657", "r658", "r670", "r677", "r690", "r695", "r758", "r773", "r774", "r775", "r776", "r777", "r778" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "label": "GOODWILL AND OTHER INTANGIBLE ASSETS" } } }, "auth_ref": [] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]" } } }, "auth_ref": [ "r317", "r318", "r319", "r320", "r391", "r399", "r403", "r404", "r405", "r495", "r496", "r543", "r569", "r570", "r629", "r631", "r633", "r634", "r643", "r657", "r658", "r670", "r677", "r690", "r695", "r698", "r750", "r758", "r774", "r775", "r776", "r777", "r778" ] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r710" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "terseLabel": "Anti-dilutive instruments excluded", "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": [ "r245" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Minimum" } } }, "auth_ref": [ "r317", "r318", "r319", "r320", "r399", "r496", "r543", "r569", "r570", "r629", "r631", "r633", "r634", "r643", "r657", "r658", "r670", "r677", "r690", "r695", "r758", "r773", "r774", "r775", "r776", "r777", "r778" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionContractLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Contract with Customer, Liability, Revenue Recognized", "terseLabel": "Revenue recognized from amounts included in contract liabilities", "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due." } } }, "auth_ref": [ "r389" ] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Abstract]", "terseLabel": "Net income (loss) per share:" } } }, "auth_ref": [] }, "us-gaap_TemporaryEquitySharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TemporaryEquitySharesAuthorized", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Temporary Equity, Shares Authorized", "terseLabel": "Preferred stock, shares authorized", "documentation": "The maximum number of securities classified as temporary equity that are permitted to be issued by an entity's charter and bylaws. Temporary equity is a security with redemption features that are outside the control of the issuer, is not classified as an asset or liability in conformity with GAAP, and is not mandatorily redeemable. Includes any type of security that is redeemable at a fixed or determinable price or on a fixed or determinable date or dates, is redeemable at the option of the holder, or has conditions for redemption which are not solely within the control of the issuer. If convertible, the issuer does not control the actions or events necessary to issue the maximum number of shares that could be required to be delivered under the conversion option if the holder exercises the option to convert the stock to another class of equity. If the security is a warrant or a rights issue, the warrant or rights issue is considered to be temporary equity if the issuer cannot demonstrate that it would be able to deliver upon the exercise of the option by the holder in all cases. Includes stock with put option held by ESOP and stock redeemable by holder only in the event of a change in control of the issuer." } } }, "auth_ref": [ "r113" ] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "INCOME TAXES" } } }, "auth_ref": [] }, "dei_EntityExTransitionPeriod": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityExTransitionPeriod", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Ex Transition Period", "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards." } } }, "auth_ref": [ "r715" ] }, "us-gaap_TemporaryEquitySharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TemporaryEquitySharesOutstanding", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Temporary Equity, Shares Outstanding", "terseLabel": "Preferred stock, shares outstanding", "documentation": "The number of securities classified as temporary equity that have been issued and are held by the entity's shareholders. Securities outstanding equals securities issued minus securities held in treasury. Temporary equity is a security with redemption features that are outside the control of the issuer, is not classified as an asset or liability in conformity with GAAP, and is not mandatorily redeemable. Includes any type of security that is redeemable at a fixed or determinable price or on a fixed or determinable date or dates, is redeemable at the option of the holder, or has conditions for redemption which are not solely within the control of the issuer. If convertible, the issuer does not control the actions or events necessary to issue the maximum number of shares that could be required to be delivered under the conversion option if the holder exercises the option to convert the stock to another class of equity. If the security is a warrant or a rights issue, the warrant or rights issue is considered to be temporary equity if the issuer cannot demonstrate that it would be able to deliver upon the exercise of the option by the holder in all cases. Includes stock with put option held by ESOP and stock redeemable by holder only in the event of a change in control of the issuer." } } }, "auth_ref": [ "r113" ] }, "us-gaap_InterestPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPaidNet", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities", "terseLabel": "Cash paid for interest", "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": [ "r208", "r211", "r212" ] }, "us-gaap_LongtermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongtermDebtTypeDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Type [Domain]", "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer." } } }, "auth_ref": [ "r29", "r65" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r710" ] }, "us-gaap_BusinessCombinationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationsAbstract", "lang": { "en-us": { "role": { "label": "ACQUISITIONS" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Diluted", "terseLabel": "Diluted", "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": [ "r204", "r224", "r225", "r226", "r227", "r228", "r236", "r242", "r243", "r244", "r246", "r447", "r448", "r514", "r530", "r667" ] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureAbstract", "lang": { "en-us": { "role": { "label": "DEBT" } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net [Abstract]", "terseLabel": "Total purchase price consideration and preliminary fair value amounts recognized" } } }, "auth_ref": [] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net", "totalLabel": "Net assets acquired", "verboseLabel": "Net assets acquired", "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed." } } }, "auth_ref": [ "r79" ] }, "us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Deferred Compensation Arrangement with Individual, Excluding Share-based Payments and Postretirement Benefits, by Title of Individual and by Type of Deferred Compensation [Table]", "documentation": "Schedule, table or text reflecting arrangements that are not equity-based payments, or pension and other postretirement benefits, with individual employees. The arrangements (for example, profit sharing, deferred bonuses or certain split-dollar life insurance arrangements) are generally based on employment contracts between the entity and one or more selected officers or key employees, and which contain a promise by the employer to pay certain amounts at designated future dates, sometimes including a period after retirement, upon compliance with stipulated requirements. This type of arrangement is distinguished from broader based employee benefit plans as it is usually tailored to the employee. Disclosure also typically includes the amount of related compensation expense recognized during the reporting period and the carrying amount as of the balance sheet date of the related liability." } } }, "auth_ref": [ "r67", "r148" ] }, "us-gaap_NumberOfReportableSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfReportableSegments", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataOtherDetails" ], "lang": { "en-us": { "role": { "label": "Number of Reportable Segments", "terseLabel": "Number of reportable segments", "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements." } } }, "auth_ref": [ "r737" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities", "terseLabel": "Deferred tax liabilities", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date." } } }, "auth_ref": [ "r79" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerAbstract", "lang": { "en-us": { "role": { "label": "REVENUE RECOGNITION" } } }, "auth_ref": [] }, "us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Compensation Arrangement with Individual, Excluding Share-based Payments and Postretirement Benefits [Line Items]", "terseLabel": "Compensation Plans", "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_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognition" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "REVENUE RECOGNITION", "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts." } } }, "auth_ref": [ "r168", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r390" ] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureAbstract", "lang": { "en-us": { "role": { "label": "INVENTORIES" } } }, "auth_ref": [] }, "us-gaap_EarningsPerSharePolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerSharePolicyTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Policy [Policy Text Block]", "terseLabel": "Net Income (Loss) per Share", "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements." } } }, "auth_ref": [ "r47", "r48" ] }, "us-gaap_BusinessCombinationConsiderationTransferredAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationConsiderationTransferredAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, Period Increase (Decrease) [Abstract]", "terseLabel": "Total consideration, net of cash acquired:" } } }, "auth_ref": [] }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnSaleOfPropertyPlantEquipment", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 8.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Gain (Loss) on Disposition of Property Plant Equipment", "negatedLabel": "Gain on sale of fixed assets", "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": [ "r8" ] }, "us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTypeOfDeferredCompensationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTypeOfDeferredCompensationAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Bonus and Profit Sharing Arrangements, Individual Contracts, Type of Deferred Compensation [Axis]", "documentation": "Information by type of deferred compensation that is not equivalent to a defined benefit pension plan or a defined benefit other postretirement benefit plan. Includes, but is not limited to, employment contracts with one or more selected officers or key employees. Excludes equity-based compensation plans, defined benefit pension plans and defined benefit other postretirement benefit plans." } } }, "auth_ref": [ "r67", "r148" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 12.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Depreciation, Depletion and Amortization", "terseLabel": "Depreciation and amortization", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r8", "r257" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "parentTag": "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Maturity, Remainder of Fiscal Year", "terseLabel": "Remainder of 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": [ "r731" ] }, "us-gaap_FairValueMeasurementsRecurringMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementsRecurringMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Recurring", "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value." } } }, "auth_ref": [ "r449", "r455" ] }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Incremental Weighted Average Shares Attributable to Dilutive Effect [Abstract]", "terseLabel": "Effect of dilutive securities:" } } }, "auth_ref": [] }, "us-gaap_DeferredBonusAndProfitSharingArrangementIndividualContractTypeOfDeferredCompensationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredBonusAndProfitSharingArrangementIndividualContractTypeOfDeferredCompensationDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Bonus and Profit Sharing Arrangement, Individual Contract, Type of Deferred Compensation [Domain]", "documentation": "Deferred compensation that is not equivalent to a defined benefit pension plan or a defined benefit other postretirement benefit plan. Includes, but is not limited to, employment contracts with one or more selected officers or key employees. Excludes equity-based compensation plans, defined benefit pension plans and defined benefit other postretirement benefit plans." } } }, "auth_ref": [ "r67", "r148" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory", "terseLabel": "Inventories", "documentation": "The amount of inventory recognized as of the acquisition date." } } }, "auth_ref": [ "r78", "r79" ] }, "us-gaap_EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "lang": { "en-us": { "role": { "label": "Equity-Based Arrangements, Individual Contracts, Type of Deferred Compensation [Domain]", "documentation": "Deferred compensation related to equity-based payment arrangements. Includes, but is not limited to, employment contracts with one or more selected officers or key employees. Excludes broad group equity-based compensation plans, defined benefit pension plans, defined benefit other postretirement benefit plans and other deferred compensation that is not equivalent to a defined benefit pension plan or a defined benefit other postretirement benefit plan." } } }, "auth_ref": [ "r70" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Right-of-Use Asset", "terseLabel": "Operating lease assets", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r473" ] }, "us-gaap_OtherCurrentAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherCurrentAssetsMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Other current assets", "documentation": "Primary financial statement caption encompassing other current assets." } } }, "auth_ref": [ "r89", "r98" ] }, "us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualShareBasedPaymentsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDeferredCompensationArrangementWithIndividualShareBasedPaymentsTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Deferred Compensation Arrangement with Individual, Share-based Payments [Table]", "documentation": "Schedule, table or text reflecting equity-based arrangements (such as stock or unit options and stock or unit awards) with individual employees, which are generally based on employment contracts between the entity and one or more selected officers or key employees, and which contain a promise by the employer to pay certain equity-based awards at future dates, sometimes including a period after retirement, upon compliance with stipulated requirements. This type of arrangement is distinguished from broader based employee benefit plans as it is usually tailored to the employee. Disclosure also typically includes the amount of related compensation expense recognized during the reporting period, the number of shares or units issued during the period under such arrangements, and the carrying amount as of the balance sheet date of the related liability." } } }, "auth_ref": [ "r11", "r68", "r70", "r148" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment", "terseLabel": "Property and equipment", "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date." } } }, "auth_ref": [ "r78", "r79" ] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesWeightedAverageRemainingLeaseTermAndDiscountRateDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Weighted Average Discount Rate, Percent", "terseLabel": "Operating leases weighted average discount rate", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r483", "r693" ] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt" ], "lang": { "en-us": { "role": { "label": "Debt Disclosure [Text Block]", "terseLabel": "DEBT", "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": [ "r146", "r215", "r339", "r345", "r346", "r347", "r348", "r349", "r350", "r355", "r362", "r363", "r364" ] }, "us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredCompensationArrangementWithIndividualShareBasedPaymentsLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "lang": { "en-us": { "role": { "label": "Deferred Compensation Arrangement with Individual, Share-based Payments [Line Items]", "terseLabel": "Compensation Plans", "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_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Related Party Transactions, by Related Party [Table]", "documentation": "Schedule of quantitative and qualitative information pertaining to related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates." } } }, "auth_ref": [ "r106", "r107", "r602", "r603", "r606" ] }, "us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "SOFR", "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": [ "r762" ] }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Foreign Currency Translation Gain (Loss)", "terseLabel": "Foreign currency translation adjustments", "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": [ "r300" ] }, "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsDisclosureTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactions" ], "lang": { "en-us": { "role": { "label": "Related Party Transactions Disclosure [Text Block]", "terseLabel": "RELATED PARTY TRANSACTIONS", "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates." } } }, "auth_ref": [ "r486", "r487", "r488", "r490", "r491", "r554", "r555", "r556", "r604", "r605", "r606", "r626", "r627" ] }, "us-gaap_StandardProductWarrantyPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StandardProductWarrantyPolicy", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Standard Product Warranty, Policy [Policy Text Block]", "terseLabel": "Product Warranty", "documentation": "Disclosure of accounting policy for standard warranties including the methodology for measuring the liability." } } }, "auth_ref": [ "r755" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByFairValueHierarchyLevelAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value Hierarchy and NAV [Axis]", "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient." } } }, "auth_ref": [ "r353", "r392", "r393", "r394", "r395", "r396", "r397", "r451", "r492", "r493", "r494", "r673", "r674", "r685", "r686", "r687" ] }, "us-gaap_DebtInstrumentInterestRateDuringPeriod": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentInterestRateDuringPeriod", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Interest Rate During Period", "terseLabel": "Aggregate principal amount per quarter (in percent)", "documentation": "The average effective interest rate during the reporting period." } } }, "auth_ref": [ "r27", "r104", "r358" ] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "us-gaap_GoodwillGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillGross", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsImpairmentOfGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Gross", "terseLabel": "Gross goodwill", "documentation": "Amount before 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": [ "r295", "r302", "r671" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets", "totalLabel": "Total 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": [ "r152", "r178", "r216", "r252", "r267", "r273", "r285", "r326", "r327", "r329", "r330", "r331", "r333", "r335", "r337", "r338", "r431", "r435", "r458", "r517", "r591", "r694", "r708", "r756", "r757", "r771" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Payment Arrangement, Expense", "terseLabel": "Share based compensation expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r406", "r411" ] }, "us-gaap_RelatedPartyTransactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Related Party Transaction [Line Items]", "terseLabel": "Related Party Transactions", "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": [ "r602", "r603", "r606" ] }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Maturities of Long-term Debt [Table Text Block]", "terseLabel": "Summary of aggregate principal payments of long-term debt", "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt." } } }, "auth_ref": [ "r10" ] }, "us-gaap_GoodwillImpairedAccumulatedImpairmentLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillImpairedAccumulatedImpairmentLoss", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsImpairmentOfGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Impaired, Accumulated Impairment Loss", "terseLabel": "Accumulated impairment losses", "documentation": "Amount of accumulated impairment loss for 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": [ "r295", "r302", "r671" ] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Operating Income (Loss)", "totalLabel": "Operating income", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r252", "r266", "r272", "r275", "r669" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsDetailsCalc2": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid", "totalLabel": "Total future lease payments", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r484" ] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address State Or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByMeasurementFrequencyAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Measurement Frequency [Axis]", "documentation": "Information by measurement frequency." } } }, "auth_ref": [ "r450", "r451", "r452", "r453", "r455" ] }, "us-gaap_RelatedPartyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Related Party [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": [ "r398", "r489", "r490", "r572", "r573", "r574", "r575", "r576", "r596", "r598", "r628" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "terseLabel": "2024", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r484" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "terseLabel": "Summary of calculation of weighted average shares outstanding and net income (loss) per share", "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": [ "r736" ] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "label": "CONENSED CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Share-based Payment Arrangement, Noncash Expense", "terseLabel": "Stock-based compensation", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r7" ] }, "us-gaap_PaymentsToAcquireBusinessesGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireBusinessesGross", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails": { "parentTag": "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "lang": { "en-us": { "role": { "label": "Payments to Acquire Businesses, Gross", "terseLabel": "Cash paid", "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price." } } }, "auth_ref": [ "r37", "r429" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Other Assets, Noncurrent", "terseLabel": "Other assets", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r177" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four", "terseLabel": "2027", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r484" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three", "terseLabel": "2026", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r484" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "terseLabel": "2025", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r484" ] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accrued Liabilities, Current", "terseLabel": "Accrued liabilities", "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": [ "r25" ] }, "us-gaap_DebtInstrumentNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentNameDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Name [Domain]", "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities." } } }, "auth_ref": [ "r29", "r218", "r340", "r341", "r342", "r343", "r344", "r346", "r351", "r352", "r353", "r354", "r356", "r357", "r358", "r359", "r360", "r361", "r471", "r672", "r673", "r674", "r675", "r676", "r729" ] }, "us-gaap_DerivativeLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "lang": { "en-us": { "role": { "label": "Derivative [Line Items]", "terseLabel": "Interest Rate Swaps", "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": [ "r445" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesFutureMinimumLeasePaymentsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year", "terseLabel": "Remainder of 2023", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year." } } }, "auth_ref": [ "r769" ] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesTables" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]", "terseLabel": "Summary of future minimum lease payments required under operating leases", "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position." } } }, "auth_ref": [ "r769" ] }, "us-gaap_DerivativeTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "lang": { "en-us": { "role": { "label": "Derivative [Table]", "documentation": "Schedule that describes and identifies a derivative or group of derivatives on a disaggregated basis, such as for individual instruments, or small groups of similar instruments. May include a combination of the type of instrument, risks being hedged, notional amount, hedge designation, related hedged item, inception date, maturity date, or other relevant item." } } }, "auth_ref": [ "r15", "r85", "r86", "r87", "r88", "r91", "r94", "r96", "r97", "r99", "r445" ] }, "country_US": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "US", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails" ], "lang": { "en-us": { "role": { "label": "United States" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]", "verboseLabel": "Summary of assets and liabilities measured at fair value on a recurring basis", "documentation": "Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3)." } } }, "auth_ref": [ "r450", "r451" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Maximum Borrowing Capacity", "terseLabel": "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": [ "r22" ] }, "us-gaap_ConsolidationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConsolidationPolicyTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Consolidation, Policy [Policy Text Block]", "terseLabel": "Principles of Consolidation", "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary." } } }, "auth_ref": [ "r84", "r666" ] }, "us-gaap_DerivativeFixedInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeFixedInterestRate", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "lang": { "en-us": { "role": { "label": "Derivative, Fixed Interest Rate", "terseLabel": "Fixed rate", "documentation": "Fixed interest rate related to the interest rate derivative." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Product Warranty Liability [Table Text Block]", "terseLabel": "Summary of changes in the accrued warranties and related costs", "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability." } } }, "auth_ref": [ "r322" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_GoodwillRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillRollForward", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill [Roll Forward]", "terseLabel": "Summary of changes in goodwill", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]", "terseLabel": "Summary of total purchase price consideration and preliminary fair value amounts recognized for assets acquired and liabilities assumed", "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree." } } }, "auth_ref": [ "r150" ] }, "us-gaap_ShortTermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermDebtTypeDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "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": [ "r21" ] }, "us-gaap_PaymentsOfStockIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfStockIssuanceCosts", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "label": "Payments of Stock Issuance Costs", "terseLabel": "Underwriter discounts and commissions, fees and expenses", "verboseLabel": "Direct offering costs", "documentation": "The cash outflow for cost incurred directly with the issuance of an equity security." } } }, "auth_ref": [ "r39" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventoriesTables" ], "lang": { "en-us": { "role": { "label": "Schedule of Inventory, Current [Table Text Block]", "terseLabel": "Summary of inventories stated at lower of cost or net realizable value", "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": [ "r20", "r121", "r122", "r123" ] }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Proceeds from Sale of Property, Plant, and Equipment", "terseLabel": "Proceeds from disposition of property and equipment", "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": [ "r132" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "APIC, Share-based Payment Arrangement, Increase for Cost Recognition", "terseLabel": "Stock-based compensation", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r72", "r73", "r401" ] }, "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityRemainingBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Remaining Borrowing Capacity", "terseLabel": "Available borrowing capacity", "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding)." } } }, "auth_ref": [ "r22" ] }, "us-gaap_DebtInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument [Axis]", "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities." } } }, "auth_ref": [ "r19", "r111", "r112", "r153", "r155", "r218", "r340", "r341", "r342", "r343", "r344", "r346", "r351", "r352", "r353", "r354", "r356", "r357", "r358", "r359", "r360", "r361", "r471", "r672", "r673", "r674", "r675", "r676", "r729" ] }, "us-gaap_LineOfCreditFacilityLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility [Line Items]", "terseLabel": "Debt", "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": [ "r729" ] }, "us-gaap_DisclosureTextBlockAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureTextBlockAbstract", "lang": { "en-us": { "role": { "label": "INCOME TAXES." } } }, "auth_ref": [] }, "us-gaap_LineOfCreditFacilityTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "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": [ "r22", "r729" ] }, "us-gaap_OperatingExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingExpenses", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Operating Expenses", "totalLabel": "Total operating expenses", "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense." } } }, "auth_ref": [] }, "us-gaap_ShortTermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermDebtTypeAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "label": "Short-term Debt, Type [Axis]", "documentation": "Information by type of short-term debt arrangement." } } }, "auth_ref": [ "r23" ] }, "us-gaap_OperatingExpensesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingExpensesAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Operating Expenses [Abstract]", "terseLabel": "Operating expenses" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "terseLabel": "Shareholders' equity" } } }, "auth_ref": [] }, "us-gaap_BaseRateMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BaseRateMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Base Rate", "documentation": "Minimum rate investor will accept." } } }, "auth_ref": [] }, "us-gaap_LongtermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongtermDebtTypeAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Type [Axis]", "documentation": "Information by type of long-term debt." } } }, "auth_ref": [ "r29" ] }, "us-gaap_RepaymentsOfLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfLinesOfCredit", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 7.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Repayments of Lines of Credit", "negatedLabel": "Principal payments on revolving credit facilities", "documentation": "Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements." } } }, "auth_ref": [ "r41", "r729" ] }, "us-gaap_FairValueInputsLevel2Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel2Member", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Level 2", "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets." } } }, "auth_ref": [ "r353", "r392", "r397", "r451", "r493", "r673", "r674", "r685", "r686", "r687" ] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r714" ] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails", "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "lang": { "en-us": { "role": { "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r170", "r249", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r265", "r266", "r267", "r268", "r269", "r270", "r271", "r272", "r273", "r275", "r281", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r312", "r313", "r314", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r671", "r719", "r781" ] }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncomeParenthetical" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, Tax", "terseLabel": "Reclassification adjustments for gains included in net of income tax expense", "documentation": "Amount of tax expense (benefit) for reclassification of gain (loss) from accumulated other comprehensive income (AOCI) for derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness." } } }, "auth_ref": [ "r192" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r710" ] }, "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "label": "SIGNIFICANT ACCOUNTING POLICIES" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current", "totalLabel": "Total current liabilities", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r26", "r173", "r216", "r285", "r326", "r327", "r329", "r330", "r331", "r333", "r335", "r337", "r338", "r432", "r435", "r436", "r458", "r694", "r756", "r771", "r772" ] }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, after Tax", "negatedLabel": "Reclassification adjustments for gains included in net income (loss), net of tax(2)", "verboseLabel": "Amount reclassified from accumulated other comprehensive income to earnings", "documentation": "Amount, after tax, of reclassification of gain (loss) from accumulated other comprehensive income (AOCI) for derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness." } } }, "auth_ref": [ "r191", "r193" ] }, "us-gaap_LesseeOperatingLeasesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeasesTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeases" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Leases [Text Block]", "terseLabel": "LEASES", "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability." } } }, "auth_ref": [ "r472" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "Current liabilities" } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r305", "r308", "r309", "r311", "r498", "r499" ] }, "us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]", "terseLabel": "Estimated amortization expense for finite-lived intangible assets" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTaxParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTaxParent", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Derivative, Excluded Component, Increase (Decrease), after Adjustments and Tax, Parent", "terseLabel": "Change in fair value of derivative instruments", "documentation": "Amount, after tax and adjustments, of gain (loss) from increase (decrease) in value of excluded component of derivative designated and qualifying as hedge, attributable to parent. Adjustments include, but are not limited to, reclassifications for sale and settlement, and amounts recognized under systematic and rational method." } } }, "auth_ref": [ "r190", "r438" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r59", "r62" ] }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationDisclosureTextBlock", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitions" ], "lang": { "en-us": { "role": { "label": "Business Combination Disclosure [Text Block]", "terseLabel": "ACQUISITIONS", "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": [ "r149", "r428" ] }, "us-gaap_InterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestExpense", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Interest Expense", "negatedLabel": "Interest expense", "documentation": "Amount of the cost of borrowed funds accounted for as interest expense." } } }, "auth_ref": [ "r105", "r159", "r202", "r256", "r469", "r607", "r706", "r785" ] }, "us-gaap_CompensationRelatedCostsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CompensationRelatedCostsAbstract", "lang": { "en-us": { "role": { "label": "COMPENSATION PLANS" } } }, "auth_ref": [] }, "us-gaap_RelatedPartyTransactionsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RelatedPartyTransactionsAbstract", "lang": { "en-us": { "role": { "label": "RELATED PARTY TRANSACTIONS" } } }, "auth_ref": [] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Adjustments to reconcile net income (loss) to net cash provided by operating activities:" } } }, "auth_ref": [] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateContinuingOperations", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Effective Income Tax Rate Reconciliation, Percent", "terseLabel": "Effective tax rate", "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r416" ] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentQuarterlyReport", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r712" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "label": "SEGMENT DATA" } } }, "auth_ref": [] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Basis Spread on Variable Rate", "verboseLabel": "Applicable margin (as a percent)", "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument." } } }, "auth_ref": [] }, "us-gaap_RepaymentsOfDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfDebt", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Repayments of Debt", "negatedLabel": "Principal payments on term loans", "documentation": "Amount of cash outflow for short-term and long-term debt. Excludes payment of lease obligation." } } }, "auth_ref": [ "r726" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r713" ] }, "us-gaap_AociLossCashFlowHedgeCumulativeGainLossAfterTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AociLossCashFlowHedgeCumulativeGainLossAfterTax", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "lang": { "en-us": { "role": { "label": "AOCI, Cash Flow Hedge, Cumulative Gain (Loss), after Tax", "terseLabel": "Cumulative gain, net of tax reflected in accumulated other comprehensive income (loss)", "documentation": "Amount, after tax, of accumulated gain (loss) on derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness." } } }, "auth_ref": [ "r191" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "terseLabel": "Accounts receivable, net of allowance for doubtful accounts of $819 and $924, respectively", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r282", "r283" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "terseLabel": "Assets" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification, after Tax", "terseLabel": "Unrealized holding gains, net of tax(1)", "verboseLabel": "Gain recognized in other comprehensive income (loss)", "documentation": "Amount, after tax and before reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness." } } }, "auth_ref": [ "r189", "r191" ] }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncomeParenthetical" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification, Tax", "terseLabel": "Unrealized holding gains, net of tax expense", "documentation": "Amount, before reclassification, of tax expense (benefit) for gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness." } } }, "auth_ref": [ "r192" ] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax", "totalLabel": "Total unrealized gain on interest rate swaps, net of tax", "documentation": "Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness." } } }, "auth_ref": [ "r189", "r191" ] }, "us-gaap_DerivativeContractTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeContractTypeDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails", "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Derivative Contract [Domain]", "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset." } } }, "auth_ref": [ "r568", "r570", "r584", "r585", "r586", "r587", "r588", "r589", "r590", "r592", "r593", "r594", "r595", "r610", "r611", "r612", "r613", "r616", "r617", "r618", "r619", "r636", "r637", "r639", "r641", "r696", "r698" ] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r710" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Statement [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r219", "r220", "r221", "r247", "r497", "r550", "r559", "r571", "r572", "r573", "r574", "r575", "r576", "r579", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r589", "r590", "r592", "r593", "r594", "r595", "r596", "r598", "r600", "r601", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r617", "r618", "r619", "r623", "r699" ] }, "us-gaap_LesseeOperatingLeaseRemainingLeaseTerm": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseRemainingLeaseTerm", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Remaining Lease Term", "terseLabel": "Remaining contractual terms", "documentation": "Remaining lease term of operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r766" ] }, "us-gaap_GoodwillLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill [Line Items]", "terseLabel": "Goodwill", "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": [ "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r304", "r671" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three", "terseLabel": "2026", "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": [ "r143" ] }, "us-gaap_LesseeLeaseDescriptionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeaseDescriptionLineItems", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Lease, Description [Line Items]", "terseLabel": "Leases", "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": [ "r478" ] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Gross Profit", "totalLabel": "Gross profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r127", "r216", "r252", "r266", "r272", "r275", "r285", "r326", "r327", "r329", "r330", "r331", "r333", "r335", "r337", "r338", "r458", "r669", "r756" ] }, "us-gaap_DebtInstrumentCarryingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentCarryingAmount", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails": { "parentTag": "us-gaap_LongTermDebtNoncurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "lang": { "en-us": { "role": { "label": "Long-term Debt, Gross", "terseLabel": "Long-term debt", "verboseLabel": "Outstanding borrowings", "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt." } } }, "auth_ref": [ "r19", "r155", "r365" ] }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueShareBasedCompensationGross", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares Issued, Value, Share-based Payment Arrangement, before Forfeiture", "terseLabel": "Common stock issued under employee compensation plans", "documentation": "Value, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)." } } }, "auth_ref": [] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Additional Paid-In Capital", "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": [ "r407", "r408", "r409", "r558", "r732", "r733", "r734", "r763", "r786" ] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "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": [ "r219", "r220", "r221", "r247", "r497", "r550", "r559", "r571", "r572", "r573", "r574", "r575", "r576", "r579", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r589", "r590", "r592", "r593", "r594", "r595", "r596", "r598", "r600", "r601", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r617", "r618", "r619", "r623", "r699" ] }, "us-gaap_PrepaidExpenseCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseCurrent", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Prepaid Expense, Current", "terseLabel": "Prepaid expenses", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r184", "r291", "r292", "r663" ] }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesShareBasedCompensationGross", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares Issued, Shares, Share-based Payment Arrangement, before Forfeiture", "terseLabel": "Common stock issued under employee compensation plans (in shares)", "documentation": "Number, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)." } } }, "auth_ref": [] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities", "totalLabel": "Total 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": [ "r24", "r216", "r285", "r326", "r327", "r329", "r330", "r331", "r333", "r335", "r337", "r338", "r432", "r435", "r436", "r458", "r577", "r668", "r708", "r756", "r771", "r772" ] }, "us-gaap_ScheduleOfGoodwillTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfGoodwillTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Goodwill [Table]", "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons." } } }, "auth_ref": [ "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r303", "r304", "r671" ] }, "us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Interest Rate Cash Flow Hedge Gain (Loss) to be Reclassified During Next 12 Months, Net", "terseLabel": "Amount reclassified from AOCI into interest expense within next twelve months", "documentation": "The estimated net amount of unrealized gains or losses on interest rate cash flow hedges as of the balance sheet date expected to be reclassified to earnings within the next twelve months." } } }, "auth_ref": [ "r100" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r14", "r32", "r169", "r199", "r200", "r201", "r219", "r220", "r221", "r223", "r229", "r231", "r247", "r286", "r287", "r367", "r407", "r408", "r409", "r420", "r421", "r439", "r440", "r441", "r442", "r443", "r444", "r446", "r463", "r464", "r465", "r466", "r467", "r468", "r485", "r544", "r545", "r546", "r558", "r623" ] }, "us-gaap_BalanceSheetLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Axis]", "documentation": "Information by location on balance sheet (statement of financial position)." } } }, "auth_ref": [] }, "us-gaap_DerivativeNotionalAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeNotionalAmount", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "lang": { "en-us": { "role": { "label": "Derivative, Notional Amount", "terseLabel": "Notional amount", "documentation": "Nominal or face amount used to calculate payment on derivative." } } }, "auth_ref": [ "r760", "r761" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets", "terseLabel": "Total assets acquired", "totalLabel": "Total assets acquired", "documentation": "Amount of assets acquired at the acquisition date." } } }, "auth_ref": [ "r79" ] }, "us-gaap_AssetsFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsFairValueDisclosure", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "lang": { "en-us": { "role": { "label": "Assets, Fair Value Disclosure", "terseLabel": "Assets", "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r101" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Accumulated Deficit", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r169", "r219", "r220", "r221", "r223", "r229", "r231", "r286", "r287", "r407", "r408", "r409", "r420", "r421", "r439", "r441", "r442", "r444", "r446", "r544", "r546", "r558", "r786" ] }, "us-gaap_TemporaryEquityParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TemporaryEquityParOrStatedValuePerShare", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "label": "Temporary Equity, Par or Stated Value Per Share", "terseLabel": "Preferred stock, par value", "documentation": "Per share amount of par value or stated value of stock classified as temporary equity. Temporary equity is a security with redemption features that are outside the control of the issuer, is not classified as an asset or liability in conformity with GAAP, and is not mandatorily redeemable." } } }, "auth_ref": [ "r18", "r66" ] }, "us-gaap_LesseeLeaseDescriptionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeaseDescriptionTable", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureLeasesScheduleOfOperatingAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Lease, Description [Table]", "documentation": "Disclosure of information about lessee's leases." } } }, "auth_ref": [ "r478" ] }, "us-gaap_FinitelivedIntangibleAssetsAcquired1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinitelivedIntangibleAssetsAcquired1", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "lang": { "en-us": { "role": { "label": "Finite-lived Intangible Assets Acquired", "terseLabel": "Gross", "documentation": "Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition." } } }, "auth_ref": [ "r306" ] }, "us-gaap_LossContingencyDamagesAwardedValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossContingencyDamagesAwardedValue", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails" ], "lang": { "en-us": { "role": { "label": "Loss Contingency, Damages Awarded, Value", "terseLabel": "Damage awarded", "documentation": "Amount of damages awarded to the plaintiff in the legal matter." } } }, "auth_ref": [ "r752", "r753", "r754" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Common Stock", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r696", "r697", "r698", "r700", "r701", "r702", "r705", "r732", "r733", "r763", "r782", "r786" ] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails", "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "lang": { "en-us": { "role": { "label": "Segments [Domain]", "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r249", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r265", "r266", "r267", "r268", "r269", "r270", "r271", "r272", "r273", "r275", "r281", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r313", "r314", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r671", "r719", "r781" ] }, "us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Accounts Payable and Other Operating Liabilities", "terseLabel": "Accounts payable and other liabilities", "documentation": "Amount of increase (decrease) in obligations incurred but not paid, and operating obligations classified as other." } } }, "auth_ref": [ "r727" ] }, "cdre_InterestRateSwapOneMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "InterestRateSwapOneMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "lang": { "en-us": { "role": { "documentation": "Forward based contracts in which two parties agree to swap periodic payments that are fixed at the outset of the swap contract with variable payments based on a market interest rate (index rate) over a specified period.", "label": "Interest Rate Swap, One" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAvailableToCommonStockholdersBasicAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Net Income (Loss) Available to Common Stockholders, Basic [Abstract]", "terseLabel": "Numerator for basic and diluted earnings per share:" } } }, "auth_ref": [] }, "us-gaap_RestructuringCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringCosts", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Restructuring Costs", "terseLabel": "Restructuring and transaction costs", "documentation": "Amount, after cash payment, 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": [ "r8" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Equity", "totalLabel": "Total liabilities, mezzanine equity and shareholders' equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r120", "r156", "r523", "r694", "r730", "r738", "r764" ] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Net", "terseLabel": "Property and equipment, net of accumulated depreciation and amortization of $48,994 and $42,694, respectively", "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": [ "r9", "r516", "r525", "r694" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Liabilities and Equity [Abstract]", "terseLabel": "Liabilities, Mezzanine Equity and Shareholders' Equity" } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables", "terseLabel": "Accounts receivable", "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date." } } }, "auth_ref": [ "r79" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Inventories", "negatedLabel": "Inventories", "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities." } } }, "auth_ref": [ "r7" ] }, "us-gaap_LetterOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LetterOfCreditMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt2021CreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "lang": { "en-us": { "role": { "label": "Letter of credit", "documentation": "A document typically issued by a financial institution which acts as a guarantee of payment to a beneficiary, or as the source of payment for a specific transaction (for example, wiring funds to a foreign exporter if and when specified merchandise is accepted pursuant to the terms of the letter of credit)." } } }, "auth_ref": [] }, "cdre_InterestRateSwapTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "InterestRateSwapTwoMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "lang": { "en-us": { "role": { "documentation": "Forward based contracts in which two parties agree to swap periodic payments that are fixed at the outset of the swap contract with variable payments based on a market interest rate (index rate) over a specified period.", "label": "Interest Rate Swap, Two" } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r14", "r169", "r199", "r200", "r201", "r219", "r220", "r221", "r223", "r229", "r231", "r247", "r286", "r287", "r367", "r407", "r408", "r409", "r420", "r421", "r439", "r440", "r441", "r442", "r443", "r444", "r446", "r463", "r464", "r465", "r466", "r467", "r468", "r485", "r544", "r545", "r546", "r558", "r623" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities", "terseLabel": "Total liabilities assumed", "totalLabel": "Total liabilities assumed", "documentation": "Amount of liabilities assumed at the acquisition date." } } }, "auth_ref": [ "r79" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Accumulated Other Comprehensive Income (Loss)", "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r3", "r13", "r34", "r440", "r443", "r485", "r544", "r545", "r722", "r723", "r724", "r732", "r733", "r734" ] }, "cdre_ProceedsFromIssuanceOfCommonStockNet": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "ProceedsFromIssuanceOfCommonStockNet", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "documentation": "The net cash inflow from the additional capital contribution to the entity.", "label": "Proceeds from Issuance of Common Stock, Net", "terseLabel": "Net proceeds from the sale of shares" } } }, "auth_ref": [] }, "us-gaap_CashAcquiredFromAcquisition": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAcquiredFromAcquisition", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails": { "parentTag": "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "lang": { "en-us": { "role": { "label": "Cash Acquired from Acquisition", "negatedLabel": "Less: cash acquired", "documentation": "The cash inflow associated with the acquisition of business during the period (for example, cash that was held by the acquired business)." } } }, "auth_ref": [ "r36" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Prepaid Expense and Other Assets", "terseLabel": "Prepaid expenses", "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, acquired at the acquisition date." } } }, "auth_ref": [ "r79" ] }, "cdre_StandardProductWarrantyAccrualCurrentPeriodClaims": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cadre-holdings.com/20230930", "localname": "StandardProductWarrantyAccrualCurrentPeriodClaims", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAccruedWarrantiesAndRelatedCostsDetails" ], "lang": { "en-us": { "role": { "documentation": "The net amount of decrease (increase) in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties.", "label": "Standard Product Warranty Accrual, Current Period Claims", "negatedLabel": "Current period claims" } } }, "auth_ref": [] }, "us-gaap_DerivativeVariableInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeVariableInterestRate", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "lang": { "en-us": { "role": { "label": "Derivative, Variable Interest Rate", "terseLabel": "Variable rate", "documentation": "Variable interest rate in effect as of the balance sheet date related to the interest rate derivative." } } }, "auth_ref": [] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Intangible Assets, Net (Excluding Goodwill)", "terseLabel": "Intangible assets, net", "verboseLabel": "Indefinite lived intangibles, Net", "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges." } } }, "auth_ref": [ "r57", "r61" ] }, "us-gaap_GoodwillPurchaseAccountingAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillPurchaseAccountingAdjustments", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "lang": { "en-us": { "role": { "label": "Goodwill, Purchase Accounting Adjustments", "terseLabel": "Measurement period adjustments", "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": [ "r1", "r746" ] }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 9.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Payment, Tax Withholding, Share-based Payment Arrangement", "negatedLabel": "Taxes paid in connection with employee stock transactions", "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [ "r207" ] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "terseLabel": "Provision for losses on accounts receivable", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r205", "r289" ] }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture", "terseLabel": "Common stock withheld related to net share settlement of stock-based compensation", "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)." } } }, "auth_ref": [ "r71", "r114", "r115", "r147" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill", "terseLabel": "Intangible assets", "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date." } } }, "auth_ref": [ "r79" ] }, "us-gaap_DerivativeAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeAssets", "crdr": "debit", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "lang": { "en-us": { "role": { "label": "Derivative Asset", "verboseLabel": "Derivative asset", "documentation": "Fair value, after the effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets not subject to a master netting arrangement and not elected to be offset." } } }, "auth_ref": [ "r187", "r188", "r457", "r560", "r561", "r562", "r563", "r564", "r566", "r567", "r568", "r569", "r570", "r585", "r586", "r636", "r638", "r639", "r640", "r641", "r642", "r665", "r698", "r783" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable", "crdr": "credit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable", "terseLabel": "Accounts payable", "documentation": "Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date." } } }, "auth_ref": [ "r79" ] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UseOfEstimates", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Use of Estimates, Policy [Policy Text Block]", "terseLabel": "Use of Estimates", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r49", "r50", "r51", "r161", "r162", "r163", "r164" ] }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueNewIssues", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfShareholdersEquity" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, New Issues", "terseLabel": "Issuance of common stock in secondary offering, net of underwriter discounts and issuance costs", "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering." } } }, "auth_ref": [ "r14", "r114", "r115", "r147", "r558", "r623", "r645", "r707" ] }, "us-gaap_CashCashEquivalentsAndShortTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsAndShortTermInvestments", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Cash, Cash Equivalents, and Short-term Investments", "terseLabel": "Cash and cash equivalents", "documentation": "Cash includes currency on hand as well as demand deposits with banks or financial institutions. It also includes other kinds of accounts that have the general characteristics of demand deposits in that the customer may deposit additional funds at any time and effectively may withdraw funds at any time without prior notice or penalty. Cash equivalents, excluding items classified as marketable securities, include short-term, highly liquid Investments that are both readily convertible to known amounts of cash, and so near their maturity that they present minimal risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify under that definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three years ago does not become a cash equivalent when its remaining maturity is three months. Short-term investments, exclusive of cash equivalents, generally consist of marketable securities intended to be sold within one year (or the normal operating cycle if longer) and may include trading securities, available-for-sale securities, or held-to-maturity securities (if maturing within one year), as applicable." } } }, "auth_ref": [ "r721" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangiblesSummaryOfIntangibleAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net", "terseLabel": "Definite lived intangibles, Net", "totalLabel": "Total", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r142", "r498" ] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements", "terseLabel": "Stock-based awards", "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": [ "r237", "r238", "r239", "r244", "r402" ] }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncashInvestingAndFinancingItemsAbstract", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Noncash Investing and Financing Items [Abstract]", "terseLabel": "Supplemental Disclosure of Non-Cash Investing and Financing Activities:" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Basic", "terseLabel": "Basic", "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": [ "r204", "r224", "r225", "r226", "r227", "r228", "r233", "r236", "r242", "r243", "r244", "r246", "r447", "r448", "r514", "r530", "r667" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One", "terseLabel": "2024", "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": [ "r143" ] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangiblesSummaryOfIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Gross", "terseLabel": "Definite lived intangibles, Gross", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r142", "r499" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two", "terseLabel": "2025", "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": [ "r143" ] }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CapitalExpendituresIncurredButNotYetPaid", "crdr": "credit", "presentation": [ "http://www.cadre-holdings.com/role/StatementCondensedConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Capital Expenditures Incurred but Not yet Paid", "terseLabel": "Accruals and accounts payable for capital expenditures", "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred." } } }, "auth_ref": [ "r44", "r45", "r46" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four", "terseLabel": "2027", "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": [ "r143" ] }, "us-gaap_MaterialReconcilingItemsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MaterialReconcilingItemsMember", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "lang": { "en-us": { "role": { "label": "Reconciling Items", "documentation": "Items used in reconciling reportable segments' amounts to consolidated amount. Excludes corporate-level activity." } } }, "auth_ref": [ "r55" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Indefinite-lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of indefinite-lived intangible asset (for example, trade names, etc. but not all-inclusive), excluding goodwill. A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of the company." } } }, "auth_ref": [ "r60", "r144" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "lang": { "en-us": { "role": { "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other", "terseLabel": "Other current assets", "documentation": "Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date." } } }, "auth_ref": [ "r79" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "crdr": "debit", "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForDefiniteLivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year", "terseLabel": "Remainder of 2023", "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_FiniteLivedIntangibleAssetsNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNetAbstract", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net [Abstract]", "terseLabel": "Summary of intangible assets" } } }, "auth_ref": [] }, "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Indefinite-lived Intangible Assets [Axis]", "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit." } } }, "auth_ref": [ "r307", "r310" ] } } } }, "std_ref": { "r0": { "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" }, "r1": { "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" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "SubTopic": "405", "Topic": "942", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481071/942-405-45-2" }, "r6": { "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" }, "r7": { "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" }, "r8": { "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" }, "r9": { "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" }, "r10": { "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" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-1" }, "r12": { "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" }, "r13": { "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" }, "r14": { "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" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "815", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-2" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "820", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6A" }, "r17": { "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" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(27)", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r19": { "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" }, "r20": { "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" }, "r21": { "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" }, "r22": { "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" }, "r23": { "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" }, "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-26)", "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.20)", "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.21)", "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.22(a)(1))", "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.22(a)(2))", "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.22)", "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.24)", "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.25)", "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.29-31)", "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": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14" }, "r34": { "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" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-5" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r38": { "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" }, "r39": { "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" }, "r40": { "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" }, "r41": { "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" }, "r42": { "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" }, "r43": { "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" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-3" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-4" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-5" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9" }, "r52": { "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" }, "r53": { "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" }, "r54": { "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" }, "r55": { "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" }, "r56": { "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" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1" }, "r58": { "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" }, "r59": { "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" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "((a)(1),(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r62": { "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" }, "r63": { "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" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-5" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "480", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480244/480-10-S99-1" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "710", "SubTopic": "10", "Section": "25", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483070/710-10-25-11" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "710", "SubTopic": "10", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482943/710-10-55-8" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-1" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r71": { "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" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "25", "Paragraph": "23", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479405/805-10-25-23" }, "r75": { "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" }, "r76": { "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" }, "r77": { "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" }, "r78": { "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" }, "r79": { "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" }, "r80": { "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" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "14", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1A" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1B" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4C" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4D" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-5" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-8" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "55", "Paragraph": "182", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480401/815-10-55-182" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "25", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480238/815-25-50-1" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480870/815-30-50-1" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "820", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-11" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-12" }, "r104": { "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" }, "r105": { "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" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "850", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "850", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-3" }, "r108": { "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" }, "r109": { "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" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r111": { "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" }, "r112": { "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" }, "r113": { "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(27)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r114": { "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" }, "r115": { "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" }, "r116": { "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" }, "r117": { "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" }, "r118": { "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" }, "r119": { "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" }, "r120": { "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" }, "r121": { "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" }, "r122": { "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" }, "r123": { "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" }, "r124": { "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" }, "r125": { "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" }, "r126": { "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" }, "r127": { "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" }, "r128": { "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" }, "r129": { "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" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r131": { "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" }, "r132": { "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" }, "r133": { "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" }, "r134": { "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" }, "r135": { "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" }, "r136": { "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" }, "r137": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//235/tableOfContent" }, "r138": { "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" }, "r139": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.BB)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2" }, "r140": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350/tableOfContent" }, "r141": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r142": { "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" }, "r143": { "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" }, "r144": { "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" }, "r145": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r146": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//470/tableOfContent" }, "r147": { "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" }, "r148": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "710", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483043/710-10-30-1" }, "r149": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//805/tableOfContent" }, "r150": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Paragraph": "1", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1" }, "r151": { "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" }, "r152": { "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" }, "r153": { "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" }, "r154": { "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" }, "r155": { "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" }, "r156": { "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" }, "r157": { "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" }, "r158": { "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" }, "r159": { "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" }, "r160": { "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" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r167": { "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" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r169": { "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" }, "r170": { "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" }, "r171": { "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" }, "r172": { "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" }, "r173": { "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" }, "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(14))", "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(15))", "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(16))", "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(17))", "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(18))", "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(20))", "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(22))", "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(30)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r182": { "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" }, "r183": { "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" }, "r184": { "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(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r185": { "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(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r186": { "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" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483466/210-20-50-3" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-10" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(dd)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-12" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-15" }, "r194": { "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" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r196": { "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" }, "r197": { "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" }, "r198": { "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" }, "r199": { "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" }, "r200": { "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" }, "r201": { "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" }, "r202": { "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" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r204": { "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" }, "r205": { "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" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 6.B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-5" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r208": { "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" }, "r209": { "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" }, "r210": { "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" }, "r211": { "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" }, "r212": { "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" }, "r213": { "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" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1" }, "r215": { "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" }, "r216": { "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" }, "r217": { "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" }, "r218": { "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" }, "r219": { "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" }, "r220": { "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" }, "r221": { "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" }, "r222": { "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" }, "r223": { "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" }, "r224": { "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" }, "r225": { "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" }, "r226": { "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" }, "r227": { "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" }, "r228": { "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" }, "r229": { "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" }, "r230": { "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" }, "r231": { "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" }, "r232": { "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" }, "r233": { "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" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-11" }, "r235": { "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" }, "r236": { "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" }, "r237": { "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" }, "r238": { "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" }, "r239": { "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" }, "r240": { "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" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r242": { "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" }, "r243": { "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" }, "r244": { "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" }, "r245": { "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" }, "r246": { "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" }, "r247": { "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" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//280/tableOfContent" }, "r249": { "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" }, "r250": { "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" }, "r251": { "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" }, "r252": { "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" }, "r253": { "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" }, "r254": { "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" }, "r255": { "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" }, "r256": { "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" }, "r257": { "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" }, "r258": { "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" }, "r259": { "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" }, "r260": { "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" }, "r261": { "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" }, "r262": { "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" }, "r263": { "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" }, "r264": { "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" }, "r265": { "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" }, "r266": { "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" }, "r267": { "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" }, "r268": { "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" }, "r269": { "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" }, "r270": { "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" }, "r271": { "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" }, "r272": { "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" }, "r273": { "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" }, "r274": { "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" }, "r275": { "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" }, "r276": { "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" }, "r277": { "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" }, "r278": { "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" }, "r279": { "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" }, "r280": { "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" }, "r281": { "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" }, "r282": { "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" }, "r283": { "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" }, "r284": { "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" }, "r285": { "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" }, "r286": { "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" }, "r287": { "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" }, "r288": { "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" }, "r289": { "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" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//330/tableOfContent" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "340", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482955/340-10-05-5" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r293": { "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" }, "r294": { "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" }, "r295": { "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" }, "r296": { "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" }, "r297": { "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" }, "r298": { "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" }, "r299": { "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" }, "r300": { "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" }, "r301": { "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" }, "r302": { "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" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r305": { "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" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r308": { "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" }, "r309": { "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" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r311": { "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" }, "r312": { "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" }, "r313": { "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" }, "r314": { "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" }, "r315": { "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" }, "r316": { "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" }, "r317": { "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" }, "r318": { "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" }, "r319": { "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" }, "r320": { "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" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r326": { "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" }, "r327": { "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" }, "r328": { "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" }, "r329": { "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" }, "r330": { "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" }, "r331": { "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" }, "r332": { "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" }, "r333": { "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" }, "r334": { "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" }, "r335": { "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" }, "r336": { "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" }, "r337": { "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" }, "r338": { "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" }, "r339": { "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" }, "r340": { "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" }, "r341": { "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" }, "r342": { "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" }, "r343": { "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" }, "r344": { "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" }, "r345": { "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" }, "r346": { "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" }, "r347": { "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" }, "r348": { "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" }, "r349": { "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" }, "r350": { "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" }, "r351": { "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" }, "r352": { "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" }, "r353": { "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" }, "r354": { "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" }, "r355": { "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" }, "r356": { "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" }, "r357": { "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" }, "r358": { "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" }, "r359": { "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" }, "r360": { "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" }, "r361": { "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" }, "r362": { "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" }, "r363": { "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" }, "r364": { "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" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4" }, "r367": { "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" }, "r368": { "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" }, "r369": { "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" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-17" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-19" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r386": { "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" }, "r387": { "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" }, "r388": { "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" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9" }, "r391": { "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" }, "r392": { "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" }, "r393": { "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" }, "r394": { "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" }, "r395": { "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" }, "r396": { "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" }, "r397": { "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" }, "r398": { "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" }, "r399": { "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" }, "r400": { "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" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2" }, "r402": { "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" }, "r403": { "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" }, "r404": { "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" }, "r405": { "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" }, "r406": { "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" }, "r407": { "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" }, "r408": { "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" }, "r409": { "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" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.E.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r411": { "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" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r413": { "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" }, "r414": { "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" }, "r415": { "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" }, "r416": { "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" }, "r417": { "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" }, "r418": { "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" }, "r419": { "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" }, "r420": { "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" }, "r421": { "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" }, "r422": { "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" }, "r423": { "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" }, "r424": { "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" }, "r425": { "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" }, "r426": { "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" }, "r427": { "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" }, "r428": { "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" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r430": { "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" }, "r431": { "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" }, "r432": { "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" }, "r433": { "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" }, "r434": { "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" }, "r435": { "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" }, "r436": { "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" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4C", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4C" }, "r439": { "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" }, "r440": { "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" }, "r441": { "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" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6A" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482736/825-10-45-2" }, "r457": { "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" }, "r458": { "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" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481839/830-10-45-17" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482014/830-20-35-1" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481956/830-20-45-1" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481926/830-20-50-1" }, "r463": { "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" }, "r464": { "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" }, "r465": { "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" }, "r466": { "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" }, "r467": { "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" }, "r468": { "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" }, "r469": { "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" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3" }, "r471": { "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" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//842-20/tableOfContent" }, "r473": { "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" }, "r474": { "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" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-2" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r485": { "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" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//850/tableOfContent" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-1" }, "r489": { "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" }, "r490": { "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" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-6" }, "r492": { "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" }, "r493": { "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" }, "r494": { "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" }, "r495": { "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" }, "r496": { "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" }, "r497": { "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" }, "r498": { "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" }, "r499": { "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" }, "r500": { "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" }, "r501": { "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" }, "r502": { "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" }, "r503": { "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" }, "r504": { "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" }, "r505": { "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" }, "r506": { "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" }, "r507": { "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" }, "r508": { "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" }, "r509": { "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" }, "r510": { "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" }, "r511": { "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" }, "r512": { "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" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r514": { "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" }, "r515": { "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" }, "r516": { "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" }, "r517": { "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" }, "r518": { "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" }, "r519": { "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" }, "r520": { "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)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r521": { "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" }, "r522": { "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" }, "r523": { "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" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r525": { "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" }, "r526": { "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" }, "r527": { "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" }, "r528": { "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" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r530": { "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" }, "r531": { "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" }, "r532": { "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" }, "r533": { "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" }, "r534": { "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" }, "r535": { "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" }, "r536": { "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" }, "r537": { "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" }, "r538": { "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" }, "r539": { "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" }, "r540": { "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" }, "r541": { "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" }, "r542": { "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" }, "r543": { "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" }, "r544": { "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" }, "r545": { "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" }, "r546": { "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" }, "r547": { "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" }, "r548": { "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" }, "r549": { "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" }, "r550": { "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" }, "r551": { "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" }, "r552": { "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" }, "r553": { "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" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-2" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-5" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-6" }, "r557": { "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" }, "r558": { "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" }, "r559": { "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" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-12" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r569": { "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" }, "r570": { "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" }, "r571": { "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" }, "r572": { "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" }, "r573": { "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" }, "r574": { "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" }, "r575": { "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" }, "r576": { "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" }, "r577": { "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" }, "r578": { "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" }, "r579": { "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" }, "r580": { "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" }, "r581": { "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" }, "r582": { "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" }, "r583": { "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" }, "r584": { "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" }, "r585": { "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" }, "r586": { "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" }, "r587": { "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" }, "r588": { "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" }, "r589": { "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" }, "r590": { "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" }, "r591": { "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" }, "r592": { "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" }, "r593": { "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" }, "r594": { "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" }, "r595": { "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" }, "r596": { "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" }, "r597": { "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" }, "r598": { "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" }, "r599": { "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" }, "r600": { "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" }, "r601": { "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" }, "r602": { "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)(c)(2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r603": { "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)(c)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r604": { "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)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r605": { "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)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r606": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r607": { "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" }, "r608": { "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" }, "r609": { "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" }, "r610": { "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" }, "r611": { "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" }, "r612": { "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" }, "r613": { "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" }, "r614": { "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" }, "r615": { "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" }, "r616": { "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" }, "r617": { "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" }, "r618": { "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" }, "r619": { "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" }, "r620": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r621": { "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" }, "r622": { "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" }, "r623": { "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" }, "r624": { "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" }, "r625": { "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" }, "r626": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r627": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r628": { "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" }, "r629": { "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" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r631": { "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" }, "r632": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r633": { "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" }, "r634": { "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" }, "r635": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column A)(Footnote 3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column G)(Footnote 8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5" }, "r638": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5A", "Subparagraph": "(SX 210.12-13A(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5A" }, "r639": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column E)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5B" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5B" }, "r641": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column H)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5C" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5C" }, "r643": { "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" }, "r644": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r645": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r646": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "948", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1" }, "r647": { "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" }, "r648": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r649": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r650": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r651": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r652": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r653": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r654": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r655": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r656": { "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 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r657": { "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" }, "r658": { "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" }, "r659": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r660": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(a)(1)", "SubTopic": "10", "Topic": "815", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4D" }, "r661": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(b)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r662": { "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" }, "r663": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r664": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r665": { "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" }, "r666": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r667": { "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" }, "r668": { "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" }, "r669": { "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" }, "r670": { "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" }, "r671": { "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" }, "r672": { "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" }, "r673": { "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" }, "r674": { "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" }, "r675": { "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" }, "r676": { "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" }, "r677": { "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" }, "r678": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r679": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r680": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r681": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r682": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r683": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r684": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r685": { "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" }, "r686": { "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" }, "r687": { "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" }, "r688": { "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" }, "r689": { "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" }, "r690": { "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" }, "r691": { "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" }, "r692": { "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" }, "r693": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53" }, "r694": { "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" }, "r695": { "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" }, "r696": { "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" }, "r697": { "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" }, "r698": { "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" }, "r699": { "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" }, "r700": { "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" }, "r701": { "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" }, "r702": { "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" }, "r703": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column A)(Footnote 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5C" }, "r704": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column B)(Footnote 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5C" }, "r705": { "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" }, "r706": { "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" }, "r707": { "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" }, "r708": { "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" }, "r709": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r710": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r711": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r712": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r713": { "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" }, "r714": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r715": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "7A", "Section": "B", "Subsection": "2" }, "r716": { "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" }, "r717": { "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" }, "r718": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r719": { "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" }, "r720": { "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" }, "r721": { "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" }, "r722": { "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" }, "r723": { "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" }, "r724": { "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" }, "r725": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r726": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r727": { "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" }, "r728": { "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" }, "r729": { "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" }, "r730": { "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" }, "r731": { "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" }, "r732": { "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" }, "r733": { "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" }, "r734": { "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" }, "r735": { "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" }, "r736": { "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" }, "r737": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-18" }, "r738": { "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" }, "r739": { "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" }, "r740": { "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" }, "r741": { "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" }, "r742": { "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" }, "r743": { "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" }, "r744": { "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" }, "r745": { "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" }, "r746": { "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" }, "r747": { "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" }, "r748": { "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" }, "r749": { "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" }, "r750": { "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" }, "r751": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r752": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r753": { "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" }, "r754": { "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" }, "r755": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r756": { "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" }, "r757": { "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" }, "r758": { "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" }, "r759": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r760": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1A" }, "r761": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1B" }, "r762": { "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" }, "r763": { "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" }, "r764": { "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" }, "r765": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "830", "SubTopic": "230", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r766": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3" }, "r767": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3" }, "r768": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r769": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r770": { "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" }, "r771": { "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" }, "r772": { "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" }, "r773": { "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" }, "r774": { "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" }, "r775": { "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" }, "r776": { "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" }, "r777": { "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" }, "r778": { "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" }, "r779": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r780": { "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" }, "r781": { "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" }, "r782": { "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" }, "r783": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r784": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r785": { "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" }, "r786": { "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" }, "r787": { "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" }, "r788": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r789": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r790": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r791": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" } } } ZIP 87 0001558370-23-018286-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001558370-23-018286-xbrl.zip M4$L#!!0 ( +&":%<"G5+?GQ0 &7; 1 8V1R92TR,#(S,#DS,"YX M6)<&+;UZ:)] MV;H@S-)LW;!6GRY<9]GXZ>*?G__G+S__M='X]68Z(KJMN1MF.43CC#I,)\^& MLR9S>[NE%GE@G!NF26ZXH:\8(>W6Y?O+UF6[2QJ-SY+'#160Q[:(9-:Y; <) M?9^=;5V3=KOY4[/3ZG1)][H%__U$'A\"N@U(SE66W^>O(L'X/*(6A):L&"<=: M.;MMBE8R)4(NN)-6"_ND: 9GRU-* BG1HC@\5;VK)J2&RKRB=)M89$R(<#6A M5A2UALD+:"QA!5,J9)\4X<]>M'6R@I@2(7V)E<6WT?;5U553I@:D%C4TDH M[!QJF. ?7Z?#K/++RID!;SE@]&U+!XB9#G\(VS1TK.4;:J(9S=:,.>*"& !0 MD0Q!^8(2ZFQI6(;4!>RUU2(-LF<'?_#:XQ;]FD]'PMC>''S>]46_< M'Y#9E\%@/ONY>,OJPR[?S^R3*#)JU-1'<-]JI@L)]N@Y?8L(-I _:RQ73^Q(3A8&Y8'XD+\E!;0R6L!LSG\ M\S 8SV=D-)J0SBAM^A3L;XS[>=BR(HWMK",VTA^'-Z,!Z6J;2^7[=VRA8-K0;IK,O#'P#.FUFZ&7U-,*#N#TA(^QCN,V\'- M' =^GRDZ[)K']F\"8%XX-93YH?2\I\FRMUIQN=((@ZBE&5MJ/M(=.L^3YP])%!%X8))4SU M&TOQ4!E#NQ4?*$:#WLP#/314V(&D '2<(9@'8;41%# "',YMRUN;D5]\)U") M>E:F#)AC \(>Y@-CV>TCZ[T+6*.:']4[UX&_'Z @&W M#/"O8N![*.[!]P5XWTD@XH R03&D4X-]P@+^;$TY0P:,B\$?KN'LBJ[D)W!0 M+NF_+[>D/_O2FPZ^3$:W@^GL;V3PR]?A_+<:^9P+PW.*/KIJL=>G4"#7;77B M7GID ?>=QZ3N?56PS(R592P-C5I.3Y/11$#Y" U+ Y>UI^NR9-0<6DN;;Z1V M*<-R>4;*J5@[[GW/AO?CX=VPWQO/ ?#^Y.MX/AS?DT=HJ?VA'*T/XDA(7CT> MG\$B$F91#S >0CZ]Y^QW82;6E&&8)>2\H<)(<^5>4U2&5<6<_1Q6E3RMV_AE M(M0A2]P0>I(;0KA%1'A0-++ LM46>+H%?F?&:@UC?N\)O.T5D\.]F+@.A@\B M1S"8,7.\6(J1+<0CXY*FC F>*BO#!F-;$=DV&)2(4*](1,@R$?M0*&F@%G.( M(Q.:WV;1KDP#OHF.HMZ!.#3?H[ MZ+DW:3U%=H8,1&.K"ZD!)S[?&LE7"CG)#W0I?AEV$.OV3PH[J6WE7+UZ?JO( MR)F!_\<2/7N-V2M.M^M= M"N(EN2C1[\:GL]/!M\'XZP#^[4_ _4,K@*\@B@B4118[HGG29.-?!?)J6RAI M"^"OFZX.$TS3!#+OU!-\ELCF-H4\3#(L(38%3;:$0!*AIDG"LGS[J,V@G!D4 M6=PJF#L#^)@CF Q\:!7+J%>Q7@MO>=#Q5-@C3%X5?5]6;05G"6C=APGA>+YB MX-@%.4K&K68SS A/C;D'.<-30^%'FB<:S(:L?.&UN9S77,X4Y7Q:E-J'@E%J MB<92QZJ5CW'MM#KM/F?03]]1#;<#TF82:N*,.-48R'Z<*C(D'D<2L*S!RPU> MGUI4-ZB5&T!UA@P08X.^#V+ M ;R#(<&H!=E4 '.E#IL]DRW:=URSEP9D,:6 M\1*.#Q@^;\(QB%P@]QK9$LCN5UH1H-Z*,QFKDPM>==8,C&-+=0D8A_9\$6!" M QDUTKF0QN!:9@E9[D>36B(XRS&T-*@'XXGAUQ2LBV56HGT5][WQHH;!>":O M;B"/HYYR#,99, >6X=+A'TOA83% MU,@769(Q,5CSD7)G-^< '-7D;DKJXHN:7(5J.R%L;#H8R3C.Q]YT_AN93P'6 M7M^/%*SQRQ.6PU9RZ*0.E;/4T K8Y!!P[Y^Y$#>[@#XE\.8T;DKT$X[VSP;W M&+M+;GOS'OR4<]W(PIH=#N#W#W?(S1?A":Z-1&4D_GV6P;\]2Q_ R.CL0JCZ M!I"'4@%NJP4]-H(;W* 9^A.WQSQFX;#/&JY3KE"#[A?HULPQ0,/"]ZE%9] M.9-).N93V\BY8KD+!6.K\&V7."=2PY8S3DX5":<&)>.2M1J!0@$,V=$):C3R MQ9[5H.2[MTQQ89D:!O5-977UG[ _7W3_70U4R6",&L&,;9VD_1HU$BEW==4U MK5YGWQB.=)WE?$OZ4LQ*!9SK5DSW+#PS;"9V ##'?9.>9/*\%RTC7+DGG&@HO;::DG-" MW.7B5'.R^Y-">956D'/N*%\0E0+(J.X?SCQ_&6ZVU.#>HT$GWO6@8J6T@P_Q M=;R&<<2&BKPOU-7W!;U*N,2(K:CYR&V- M,9D]_5QB40Y*0R@:7(&S091#0H)J\(N&7J0^1QJC4(*7$8A1XU)@V>3H%NXI MVU HE/^T#Q[$AN:&>=!QQTL#+.W6Y->:Z#FL%+[J%QUY^NS>T<[TJ58Y5A';&K0@X/R(7$$0WD MD24(C(S?P7S/L>MWI4HN]TD7+?L<%_6W.V_'2A(6Z=5J?;NNJV_@6J7KYLS( $V4=@?EEP\]+F MJV8'^E@/X>/:\04'+"C78ER>NY)'^^KJJBFI@ D>]L9Y=3,H_ 5IGDLKP*&H M5D?055 I,)*B2D7MJH(ZF7115"?(PLQ75>?4?@_? :%M=WEHO _,D471'X)Z\A&U:'_H\R3 E'A<";(E'M_@(E/Q_[-G_+GY(O1K MNMWB2(Z?_ ^697NEE]_P$]BHS1UBT0T36ZH=#$C:GF#:Y33:'<:[8^ER]%M&A:^L:.Q?&606?!7(\B'I>AB*;KM8GCX M[#[(7[J36WZ0 05_R"UR2<5"SY">X4DA_0 M>[+AUPG&ISN\B2,),NPT +IN.[T863GE;U$*!+1D<3H*DLV9VF).&PRU0T?1 M!IDW!9(%^'3AKU^).VYOAA8,)]AV'F':;+B;.\."7S#T>4,8CN;_RDGO^018 M-.-Z8T.!*-\-';;!3ANT<1?",1QYL?X]M]UM0&H R06Q#-/$W?Q/%PYWT:60 M:3"4&[8^EXQUE_O7W%#@A+LWGRZ6U!1[XH5W,0I0LH7AI*L_9<&[PG@W9;;Z M.>DKH[XF;SI-UW^P87P%189B/#MK/'1#K9W.T$2?^9*DC3=>QN%HQ/E@_40P<6W O%L4>"C21655&%<\;K1%>,_ M5J>9 ]4ZVYJ&T_.SA%1)2@QK@*];6*M75L"C32L_KN,SKAG4?&!8[Z'2QY.. M[4J7SNT/+?_72W%YQ_#!*+/G[S_$%%'05% C>4.O1;V]K9@NB:D5U$*N",5* M'_E:P5*'+M+%B1 ;&4\,YXE#RY\:>5^.]S]O=@_TWS;OFU1XH8U)7?;DLECA'+86856Q4"GR V] # M4-_E?5BN\&/2<*49QE?.DGR'G/DJYTV$RSUC_,G0$H8S%5$%^U28L.BNYL3U M.$ZH8-G1_F;F5HI7#W*, MTIEY*CKZ'C08@.P-+@@>GH]?1MX%2-0[1Z[*:[X_YI.H82BULAY"M+3!2)VJ MSH&@8B-YZAI-PLPF@[*"/6C?Y7@WYJ/-,=]DB2$U(YM:\;ET!F$%=4O5Y0V4 M78Y

    ,8V#Z29Z))%!74)E),B@MBN*4:7@F=VPZ&7!K07K;PA_\]I&YY%J\\ MVGN[1G=@*(MIO#"]OZ9\Q?JV'Y>(=31?@[>%6_WAJ4[1G&%KW6(D MZX^=SD6*+UO8F#DC%BI[JK(IU%56$&8('&/VAE9BX6]=-K?EZD/\OMV$"BC) MK];Q- -13" MQ9J11UG#XVD6Y9M9\@@60 =_N'@8"^S$-(]]005-Y19$DY\AC4^OE&05M,TQ M>_;*NE]5Z;DK5\AW!I.=)'^9$X)'K1\ M;^>'NM!%@?YJ/4&G<)*M'%B\JK&\?EU@OZ#)HVK849Y0(\>,JE8OQ[=R)^UA MJ8@JNG63V/'''"$E504]H%2;BVF625E![6Y<85A,X(Q^87@A::&EF/"M0;T5 M.*YX-"&D<:G<;V743U#.OU'G3YA;ZFB\2X,>[L] Q;D,WPDM)4":NX&/WL5( MH01U+9Y5T%M9R;A+C7@*.O3>!O?>_O0,;>DP_ANC_,YVPZWP)"Y5J:HLAW0' MWM F_*Q9?#:=2E+!7F@$UL_8/DI%GE0/3'@7+.S'CX?E+F MCTJ1T6A_>>0-XM#$ M8O$&D$91Q080*>O\V<[0)D11?6W6G&6A$Z&IH$9R%SXZ7A[OIZ23O)4F]0WP M0%%J/954;T750R!AL=N D4& M:07;=W@GQE]N#\T$CIM +NJWTA02E%&K^G94.XYF3_(2%#05M-/CTB9Y"@J: M"FH47"+C'XSQ+^'>R749Z$#]$&(IHF]2(W((K$3>MV*ZD1L/_+@,+^[1W\^) MQN7D(Z^@\MZE.=Y%$Y__#U!+ P04 " "Q@FA7O@,I $P4 #4,P$ %0 M &-D#TEX##.3 MJ9G=(H3,4$4""\RDB>S?O]#_/9$N-8+4=K^\NNC;Q=+S5E^NKU]>7JY>VE<.7I#Z MC>;UOQZ&4WT)+7");-<#M@XO-%+^B\L^'#HZ\!B9$M5?G[ 9-="^COOBEJ!_ M74;%+NE'E\W69;MY]>H:%^$0Z=<"G43%7[?*AYB:-S M8205DIYC&] F#">_N(Z)#,K@6V#27J9+"#WW0J/=_)P,4N/2 6USZ9A4$MTK MW;&N:;%KJ889:"%*7A\6]H"[O#>=EU(G$:>#(Q+@#KFZZ;@^AEW]OSYR$>/,U+M: M#O;0'XP;_=<5G;;W#F'#'-G(@T.BJHRW5?8DS2%'5 F)[^"31PT\PS% M9*$3WK$#BXE]$FK#4NB0VWB%P.]]C_S^0/2]Y5OLHW!^NS^)88ECQ@6E2R%' MP2Z5)%(XNAXP]=:AJ)+N0YH,.JGGFVR)'Y+O0NAT# ?8KB=(#5\]2&H8\:?( MHUTV&LU&0[O4XG;)[[W1XUW_<=J_H[]-1\/!77=&_KCM#KN/O;XV_='OSZ82 MT!EP MUT]-203.K_<7":_;0YE[3'VIH#]XDUZ+N7"P!6S"MU#4W/C3YADL*D M)/S@WX%.BQHUP1,TF>,M]>7U<2 M>3C&< 60$7H,LKFWLVP*Z$?RL]$X00:*0U/2O@P"%&O^^I4L4@^.Y2)2T&+L MZKKCVYX[@3I$SX!8P63P.0M91I5Z,%(:H8(6)0V"T_^H.?4,3.I5(\;5=.E@ MCT8PJ*RZ'G.V<=@LWD ]F+XG7@6MTK1;>4*',9K_=(-]+L\$VSC"RZ8^UZ'D9/OD>WK#-G##)V\=+MJ,?[(H98.; 55-!4GE&P/V6G M 6RZ]X&V3HB3,;DY->K!:UF "NKI!.S\O5X]N)8'2$&=S R]Q+C%\H]V5E": MASL'QPD]B:-3WNPFFH+6)L5ATK MEN>G!++R5\CM3&3Z29S10W;(246RY;;.+GS*W"F 3,&5,3'J[*#B=L%39IXD M*@5C1TFED,.Y[9)*LRYKC-G*48"%*ADQ75W'?B(I,F\*36/I-NG"]V"D*4-SB^7K]YE#8$4Z*2=[5 MD6 *]R!92_0@V71&?CST'V=3;72OC<;]27]'^0:H-??6WP M2/[N7ZAZUHQ8NYNP&6=.O"ES]&3'J.M[,@,"/Z-/!&7#\ULX=S!,K#K]5P\# M(KW(!G@](,QD3A)2DX@5&=IB8'L00Y>?.WFP'M/SK-UIW70J5B0[!2"==WE< M:BAHZ\4^F=RILJ.D>BP_-D[]AKQESW<]@AW'!Q%IUB+Y9_ S;@JTI![O\SBXS?.R M8"LH&SW']49S>@25!<\@?D8Z=*?$".4&='D5ZL!I272Y>_?+"E?I\%!/[AH= ME5./?\6UM!@X%=DWA@]0U+&0CUZ-XGJ,K;GB9S4*5%69T)KNV MV;P'7@5U\818CMC7/1\33%03\:;N=L'ZL%006_E>4TZ0< )9FNT88&^]>_+Q MBJ7'_8&,^^.)\40*F8(N3[(Y<])+2+;ZY)97CY75;U[EB*5@E"/"FRT3;TJI M)PER?-CEV,H'F+M85F'GT@0PV1F>7:E^S"V 5\F9&BJQ<-RWQ-[C.YXXI15D MKIC/60R)Q%[F\&&JPT:GFF^C4XD.-U^XFC/7-GUJP#:T5*^:] 7V1T^V?TNB MG -QF36J4,\YY]+&])9L,N'$#Y3LV:IZ.D" R5OZO&3\"NZ$LV!&#R_\@,8" M?@?(IA]VY\2(F4#=!*Z+YBAXCH:H&?Y<*;,+]<3J$'(B)XVET+ .HAGLP[9 M4TJ4*)W9O:2)V^FT/E5](N#@HE."M!:@:1T$]M"B^BZD90II$?%4*N#!0WQ/ MYAY:V$%FGKZ>86"[0(\(2O\*I<'XCQ_6C@>D15T;4@G M'JHG/9);F'PTXFRJ.N$V^0B=_M#NAZ/?U'VL88^<9$>FZ7?]TZ2F3>V0#6Z?I1T1I/F<=XQ=O0$$M4XF O5%<^U!/ MP:U!]!+.:'Z'*";;X$G.CI+JB#-KFN"CJ X3'.-D(B1%%SQ&XKD^?"MJ5 M+R)2I<9L+ S_ -LD;G;)*A[?P'9]3 9[I8C7DL!3GWZ9<*M'5RX$-D0^H-(,9%QDW%G/)GQN1\ M[+E7I%? [:0V$N$VM_P9<%L.>\CMSPIIZ\A^"#.?9\X,O-+S7J&G\-[!TR7 M\!8PSZ!%4[,8D7/VSK+-G8.HE$F:4))N5-4;T;Z33(?-M< "^F-GO7,0CD(T MB'PQ#844"H;ZHG=GDS?EJ+RZ:-@1& ;9/A"8.0\#3/1(ZR9;[07:RQ-JD_D9[O^HE28 M,"IF]&S#BQXME-$^B3IG*1)Y^%5T8?-UY.:50^GE9U/U+.5 D P'\&N7D]JW M@Q91VDR<").5EB=2_PP$8S]:*.@3YZ?]I?.O^9G'$BV<@8#L2PT5G>R,.BX9 M!P%WY_A/WMPW(WW(]YQPJYR!%$C#5_!!TDA>1_84F' T)Y@(/;SUV 2V1YT# MJXPU0ZSR&4C"'H3(]P1P\8+EZ1&KOD)NY^HM6/P-!V(L4 MD6BHY)N\@RL,=<0 D=]-&!X12@+EK@+Y5<] ) J3(1('E6(@P;V>&<>F-@7. M@+4Y8",&'OY1K;3:B9R8ZS<\RBI:8VY)PX[XIM)S6QQJ4"#N/M'L'0VH)PK* M1K-%J:?@-8W)1(\=>U5"T;Q-OT0+ZHG4G@S-3IPI0@T%X])1HMC,Z>ID[!A* M2XAP VF2W)"?55_F4[Z [$<,%6/.6Y!N?9?FGKHPN,& J>;@&][-]C)-G*.0 MR))#Q0!UL*R.YLFE=F3OM:C'RS?94:\<%YC?L>.OHATVNY<7&IM["#G"5_W MU!/IZFTM1;E2]8MT=*BFX_H8,@7@(C;4*64I7D^ ? =] RQ:[%^!!>Z;EI ME?S1[?WSYV Z")Z3N]3"MLEOK'GM;V$'_WNAZH48QUZ0E%IRV<,K\JA8-?7T MD"P?I-92/F8%S? D4KJ[2$Q_#K;%,N]=8_R>T&D2"U'.L)V0S M,!.H.PL;_4&L=(,('9HCED3.4GTC$:(/4;T@D[YLDT@F)V5\"QI$)#F3[F"] M'5G=%,2Q<_R9F>KE=Y2:[9_(SX]5/\AS8!%,:L$CD5/!!;),Y.&;U$')3?;O M,628UW5MI%I6U XKXU+DKKG4\R*&!^WK7:XKH*^"YRH/-JG#\UTRI^N2:@ M!^P%B@LS#3!; COR*QS%S,\9P_M$4(CNN><0*SB0EBVK[V*T)48B'%;IR&&9 MA,J_:N= O:6)W3Q=^:O:YYQ'4Q43X Y@LR>_2%]U=+P-&G\,M9'V0B)XE$V; M)/%K[IF.SM'.P.MQ5?SNCM_E_W#R+T'Q\KW8G(-5I=IRNH[]+$OE"#V^RV_B M3%@%I*ZY5_G1L?6M56SHV(L9Q%;&'?Q''//[J/\Y&DT%_>@+)ISW/T]LI&[#':L]%:%WQS\.[W- MT]%A^'3J!+H0/V?<>RG=DGI*XRTWMB=V63 5W&+$T(KSOJ:\+L9;E?)!8B@3 M\/( /(@1,*G43OW5RD10CLLB;:0)T^JT&ZW3X7=A@.*FZ*$7W83GD44KWH8P MDGWT>CN]\&PZ'6?;S31K,?_0E9 MSV?=Q^^#VV%?ZTZG_1E-G$\.38/!V+2Y@S4C')UFTN%I*!Z?!M@ 3\ BN.>3 MEV\CY%4Z_O-^O.'LD*H)M B$H+IU4TND>__@X"7%U-"R^KI'3&6OWD+\"!D M4-#FD(/Z2+3-[ 6:S_#!L;UEQEN2>S1Z?A(D1 $%C1HYE'1:S%Z<4F0F;.O\ M1"4+N()^N +@2,^\J&#!ULY42KC0%#VYD&LV[ MBP6&"^#1RT)L':V &5ZC,IHG22:K\;?N"8DT?G@3%%'X(.I96T5=:^%#X_1K MD_1^219+ZTCK <=22A+A 7@^9H'HY)/H,\^S:8FUN>/Y&=5E[^6(AI)E7,0TBBX6DG@'-B"GL^]VGR7*0FZ*.@.E0*9 M[0TMTM2[^.230T$7J3RV# ]IL<;2I/K4:7VHRD160'*X!%'0;2J-+L-K6JBM M=\D1H(>X*[6ZI!0WWH7MEW5RTVA+99U,TQNQ]Y228-NN5 0FZP[>O&KJ* AQ MRDO%5?@H%=SR9,6'=-VW*"^@R#-H\@W57A!D<"OD@1O2R^S=36QE\Q15@"IU M($)J+6@VMH,MPWYW&NC\1+C%B;J,=#Z]G-?<]'H":T!,-4;.B&*\FP>YI8^L M#CCCR(T@Y=93;[+G,"@YQXNA4U#;[F^Y*25U[C-U9"N6*A MM]V9*;O+I@7O2.^]\KN=8L'H%K@FAH4D%?PLWJ*)^$.?;#B=GN910T @6 MI8]H@+=@@L^UJ*_-=E:C_6FML]_5MM5:(W[:1IC?#XW^*[WU)O-8 M3*&VTO/EIM-JG8S&:$NO%E)$4' ;6TJ L6X(L1\$SAWVO15TG-N;]]^]OWE_^]&YNOI;VL<=B$@; M%#II9Q_>W^8_#/?=H? GY_;V^L?K#S$6:W]Q>_\_7R=Q= MPPVX\L,H!J$+WSD$_J/O^-?+>[5&D/RL,DH/37[WXT* (_/UU]F,1U!=T72 [@S]#9<^NVT^? M/EVGO[[[V[\XSL\8!7 &ET[ZU4_Q;@M_>1?YFVU NTJ_6V.X_.6=ZV%*]8>/ M-Y\^WE":_W4>$X%351JBT(,AT0OR1X0"WZ.*4=/1GXD? M[]XY=-QOLW$)11?002@@T=[HO8LVUQ3LNMY(*4.4I')=DR/W?N0&*$HP'+AD M\,BG2AE;-D\T&X-T,> #7Y).T6].T/B;879/^'['O M0FKZ?&+?4I4G\CN(JFE65!G5-*?&(5D%5SXQDYE^-\T3[X1J$(0R(T+Y M,)@N][5Y$;5T>S@S#AT@\0C>X,@(& Q]I\2^G6*?^., M41K,#KZTL;W5'<5J3BQ!$L1=,:0\F F^?$'(>_$#.I6G\1KB4[NW7RZG2SKE M5Y#8Q;Q%31XU,+#5_#K]H2MV<<DRD&,8SB&8CA M_ 5LZ\YMU=[-4WXX$%#$!BL,4V=EH^1+AC#! VI>8!BE:_9C ,)H@L+5 N(- MV?<1W/QG2+^MR07-0:S@P^@5N@E%[?27IGDA'\@$/R:0=!@=57>Z38_.X8KE MD*S)DFICF=EI!_0JXQ'@>+? 1'C 34_4M??4DFZ->,KA*K5.( :I' J;^RD^ MB&CT2G66GIMS^)K.\)JCZG(J94;.KE.4ER!Z2ILFT=4*@&V&+(3>YGKT&A,, MZ%9T%":;O5MI0@[(49G#M*^,2P[ ;D[1_L\B40=)^F%\ M[?F;ZSW,-0@"=M>GDF"H1'Z#2Z^*OT])2GNKCQ3YFVH("J^\E D-8GC>=0/H MICU=;>#F">(F<2WW6Q_1-<$)N\D3O#JPH4%TF;TWJ@S97&A'&_*^E1&FO<-H M ][#!*,M_2?M_AI&<'E _H7ZS:]"@#%ZJ:H; <:'_NB 5_L/A(S;'Z]N;Z\^ MI!$:_WHZ5H$20IV?>9PFY.-^1-I'>U8OHQ%26^]![_"M']-!/WWZ='/C7#G' MGLF'O'.'].YDW3NT?R<;P#F,0.G**0N06QHPH($P"%=>2>@WQX5D_\7?#P$8 M6<0%W6ZBD,9C4/SRL0+P!(-?WBFU^?OM"4>46UUW3_T)*O*-,+$&/SRSHS"' [K=[M]P 6EYC.&?R8P='>"2:/0DJM,BFU-\H.%EW Z M*;24\T/M*?CH97F5"RU,\"#1X13 MS3[&?AW^.&Y$OI9V\2?\T.B!RQO-/MJ9GBP1HLHX6C)%"T05IZPFE@E:ZP0 M69-364B=;,$54F5T3M]#[#\#>DTQ#J,8IV]39G[TAV FBYIP%5/6R"CI0Q3& M&+CQ@HPFG*2B)@JDLQO5G8**\D#J&'4^S\0D%&>7#'6CDRE'Z7<_7F<^(HC3 M@+H\]I _J52:F^6D: MX;B@C^3341?)AZ/;*@_^]5W FH]"V#--DT)W15UV6UK$@#FQA+!LZD305:>- M*I.1 @Z=30L)TG0>2)$UNCH=D+]+(C^$4;1'5>F>@-5&?D_ :V6"^GU @6B] M*<'PJ3N%:NP^0,)D),#!W#T &^GBLG"&K%DO!J4$3L@.TCN-.[[;?07_0'@8 M@$CH>%3O@7]0U^O#+CX=\7L &_&)2;.7*OSB]5/;M5%)S*@6SMU[.'2(++DY M](DS.NW'X9[Z6E-?LQ>N.E?HQSZ>:9B!"CU5Y5U;YJ"ZZ%%MW#LW"]K$%DU# M12([/Q,>LYC0]Y!D-\.:^7Q YGF)#VJ,*.Y)D >J2%@SYT I;Y%\_$[/@#R$ M\P.@"%&SY[_D*4KO_>/1,_D?]9N*3GYL:/ZIB ]O!ZWBDQ\/7H?>!D^$4N8C M14RZ/Q?R4"^="$4H&Y\DON<#O*..R^ER'B-7=!G&A1%"8J/6-#U>+HL MO%01SQEI0SX/E)HV,8MDLD&Z2!F94!PJ2E-*"7NCV.,(]@1[]+$3]B'WKT0:#T]-3&4/RYV=)@ M=6TP854PG*DA$7W*R<;[?)LXJ)K=$+0A_2QVGQ@@7*5A =L 8G"R< &5B:S MN:D@X392P:'SBO3#%1Y6)CX7HX%+;I3XL$;H#7=KR\A MIGD1YA _^ZX?KJ9+!I(1E5#$_DDXBYH<@LO5I@=IX!I/HA6H/>1-W.>QJ2W. M]J:I-!MT64JY) JQ/ /D1PXR08T3)PZ69( J$MA@(*2(QT@^?O=!C@R$2R&- M'$2-JOQO /LT%SU-MR50^%,PKC:P V3)53U:Q!S%$ZO2,MH)5? MBYZ@8]1^\O)RW>V*OP@LJWH'7,.DUX5A)@FM\3F@$M'-6>-*TD RK#JWTSID M%"TX&WUS+RSF+@S)HH)DKRN*<.*7%:>075&T'_9;&&VAFY;-XK^JX,&R*1-! M-_*J@L-W2BA( *GBTOG:P$>^N!*(D38Z74:;;8!V$*8!"M.7$.)H[6_I M->1H/GT\IKH@JQW]4C"3*O3$U;B*?5G'OS2ML##SF6+SBIPJ=U!WIM:3,*J& M=.=3NA*5I?1J&M09?GKAH@T\/A@K6*E!Z!W+C)1H)A^V* +!%XR2;915J_'# M%85!M))> KU]VF"R11:^V.AB<,%CA:Z&-Y%!0P=/:913Q=ZXK*_17_VW(ATK M'6J$; //3+KA4RF#2'7^F,W44\0[?3Z3%A>5G#LDK=0F#[N=73Q0-RVL=E7X MT& &'V4A\>8Y#[/N,_G(2.%.11X)C4VZ"+KO5^CYVH-^IFODCZ.*D0]_G\ 5 M"$;$"#"=OPR(,[7AP+2.>38<838@W6FI$SLJ$*RL#)J M[ O^7TGX'P-2')IS#FN6/GG$DM*3DE9>D(B9>QHW9/RI"!/=L\ ?J]Z$T*2( MJ<%?0'<=^G\FXH &%K#@[I\';@6ADA '-K@&L4V&.TCXCM3P,!#ZP$:\' #! M1]CHU"CD#QV'VT06!\X#YVJ,J($EY JG"+^!%LG-31,%"2!57#J?*GSDBY-% MC+0MV:GSLG([:28G41M^W+BLE4GJ"R7U]L+RIN$,N@G&?KA*LY!_"]%3!/$S M#?M*I4B+/HFRA@K&R8K=)E\E,VBQ&,!-H MM\D HZ;J$:,MQ'%ZKT,=G;10SC9U@.XDB[Q"2^Z$46QK$S^D>P"%EOK\:'97 MH"-!FTAG4LBY0*S: Z+5+?-O MB@&\PJI-FKUP.5.AG]K>48GH4"WLNO>>LLDI3KL*9%BPJBW ZR")UPB+WT>R M@27VG 5N!:$**]@YN :Q3:]; KZ?+5EL/ RM5N>(GR]4;(0-%SYZBI6R"IP# M\H,%F*#&B9-'7G' %0EM-G9*R&^DAH.! D;G2)?+%O&1-?N,89^]?^"20UGD MRUXQL*'Y$?U\>$MHI7]B*)X>TG9:])^UK/VP02H4I(E1]\\;>"247C>HH&[6 MK[?/JB9RX!5 ^)ZI$R"#I(B];VH9!9O/!.%?^H@:6D#N!(1& . 69I)D6^:<-:ZMU'GY]E[*3NA4=$-HPP]O<%I&%(F$;3 M>V:."N9 HF.,8;P$APD+,#.H*704&'(DOECQEDR,YYK4U MH%2V[0Q9_ZAI@>:Q3K9M,LW V=@XE\M'\3:Y>SEKSSF#NUA9]$=M9MVH-JZ) MA][D1!OO4DR+MPWGVAA57 6:&X#_6+S1(3JU\K7T$[7% KMM=A6>E1ZR-\HK MLR4NPMCW_""A!>KG-%(MC5[+%C7H?29Z29%.XA3GZ7($<$A6G>@1XHR).W8' M NO;XHC\N^9VQ[1&;E('F*R9)@<;+IC1B68@/:*Z+Z71)A=*L0$*U'=?XC#9 M) &@*(V62^C&A"P?>=/EP,MDP,G1IM+L3+=U&EI"/C>=FUK#2BQH)M&;IH20 M+F[=EE14(N908%&9"+-; >\?212G.YG/"#_ EX'KHH1FF%B1(V=(_G3W@42" MQ5VG#_YBH]N+N9#!O0B%$7,L4%G X!EP[<6UHF20'+7NET@]6DH/BCDTG,R\ MGZ]/^#PA'],?&-_O\2V1>Z92*:T0>IOKT6M,"7X*X"A,-OO$+1,_B@^3*A,E MI'!DR3_AQ[&Y4VCO9$;$R2B*WADP'VFMY,%3E)Y\>/:!"70Z_4^ #,SN:;R& M.,/C 87T 0]1)PY-0M@3TCBPM27G9)-%P >7;-RH TL>Z[+DZ@5T!G*-1W*?SI M=.;#U[]%YC,;*6'0Z01@H%LZD/'1M&#6O *Z1>0TX!O&LP:7;!_YYQU1BP9M)(_]*J:R@8U^96-Y@K>2S2QO MZDU/FI/G;Y(9(X$6OU.L,U=<#\,4^9M/'V]2 N@WF4':YY@,5]EXIQX .> > M;1%@PR\J68HN&KY3_>;@2I5;A*,].ITB6)AX:@K2FZ0FYOO;FZ<*^?0%?E[.'VX'SW,1_?TK_ET,KX? M+,B'^8+\\W7TL)@[T\_._-?!;/3K='(_FLW_S1G]][?QXG])WYL@C$J4'03W MX>;F8\JE)Q#!@V.EFP+<.7$+FB^$,ZU.@:[-H)C)CMY-H5#B)9:TR0E0FM7* M\VU-6F(W>8)7!X]C<6JP; 2;_:7JX6)*3BQ$MY(Y04DAQN8,MAU)%#R^^W$4 MQ2!2L?-8EC-JC$J#8+-!85KZ0'A9P(!K20KE]4JDGJ-OE.W'E.R/ MP/?&X1!L_1@$X@P'XC9=BN-#37%(2#$K&M?-+D:AE^Y>*#ED)T!-PS/,]KMB M,:FW[U)D'^N*3)TLH^*;P9A0 +T\ $4H*QYPEX+YKJ9@>#08E<(QHPY!;4S^ ME.ZY"H#M5=!%>;[$BY M_SU Y/3QR[L8)YUOCLETQ9"<&NYA]N\X6QE+IYT9"H+/"+\ ['%$I]V+!2N4 MFH2U*3L>8,_=D5U/O%-$N1/O'-""'5U%U2S/SW/*[!%082>:NABB:1)',0BI MHT*^]V8TL6!6-2 T,8WVB.\!QMEF9X(BWIIV F/!+J\! 9T098]$4DK&491 M[SZA;\^R.,8T\^T#?$E_X>\^E-I:L!ULRB[*B;5>LIE]J"C:L\9=RO;[KF5[ M1JT]PKVG;Y)@Z/$+KAU^[U)$/[0FH@)!]DBA$+*Z0!RO3*I$])*A]%!L!K/L M07 .\;/OPDSA:-KP52:CU*YP75EM#]NESOQ':SK3/I_L4471\G1\&5FD\0OF M[\$J]]:EXOQH9*T7DF^]/F1+6F,*H=!=EQKQR'U$./TACK'_E,34K[] CT 6--8=#ITJ7GM>OHZY9K_*4F?:/9E\ MS]D[W/UK^L.MWRG+!\L8XL*A@'*'\*"*HC8Z297RY^O&PQ[O M_8C>-R88%I+^1NG]I=KKSH\W'VX^.E?.L2/R83#\[V_C^7@QGC[,G7_/>OM_ MUL8LNFOH)0&<+N_.\Q]'=[O")V%4HW8WW1H:!E;Z>3%>?]R QX $\@H%:?>F8/=^3$N2FN1WRN\V$MN/S69S>?'-L,TD02O25N8BR.2X62TGE8 M>Y&YO)@O'1H)#7<$BS\:V ,=N[)SJC:F%T="[3EU'O'?7_S\$WICCVBDO_2A MMW_IG=DJCQQ2BF^YHHA8*"_5=G5U:&@4"P)FJFM*0SRP48D^4VG "3D">^,P M!N&*9OLYH2TBQ]SX.%_(&?G)#X&>56EL' OB=JHK4F-<,.MPF/MD-BQ]EY8L M/J;#0H'O4N4_7&F/PR7"FRP%+0UH#]3\$M_=W-[$, MAL/IMX?%^.&+\SB=C(?CT9QZ+@[C.H6!G7_?#VVO$^,"'EXF3Y'O^0#OYH"J M<>J$$SVZY,/;XX20/[CD4V'6>!^QH1E4I\N":UWH95!I:(>;0:IP)3DID-7" M87=.-@4A.6/OILLEI!=N_+,N%]0"SX*Z-AW.NEQRS%['/$,\" *4^N>G\E29 M G@+CC5Z8E&@R? #OO21(=W9%"\"R7&K^(M@1='IH/LE1O8PB;O$Z)!EC0"% M:PP+T(XU15\'>9)J<5'Y+T#+M=%-_Q:$NW'H\A<5+J@%BPI?70Z+"!?]_HUK M_\:5M\3C%0C]?Z8'NV..GRRBY!'#B."Y+U5 #MH@='T0'-/_2!*A-=2W#5L' M)6UHB-[&?%H<@_B04)*GRZ\@3)9DQ"RT+0!A?#HSY> 6&,9&-?A@2X54MRVA M['WG-O!YJ0:Y4!;XA,5SA8NY19[[F3B2%3LLM_+9:AE*#_B[$5/^AU/ M7GQX@^N.CHCX!+1MIAXQ;V\O1Y_L&JMT$?H5 MK.&\2?@8_3 M]RC3<$8+@%'[? *)+VWR(=^"L20X'W!. !A;@D"M$%5(/]=VM&#HC?[?9HTNGU&<,_ M$_HL0>!S5&IIS7U6XPI0-$I*K#"Z6APP9.$G]%@JM;3#A:FARTSIB2BT3GK1 M056%USAJ32TX^FMHJ$QXY_39(;V26J861=N\%EI9?CCN D3SD^M'FPVLV?Z7-JUZU!I-E<=P'A'M'(&MP1GLC7?T'V\KE2U>[' M %?0Y5(V.UV2S69DCV)_ V(: M<;A-XBBEZX/:J8?5PH*UMI+",L7'(M!LDL-#TH!Q&,4XH:3-_$@4#RUNTKV= MY;QK:-7.BGE@B42'*$P=\PLRFM"8BIO883M5%)4M(19-1B4T#F.(813/R/9L M_@*V0MO( [; +*IH6CEI/9L4.U:K&F9B(@FO:W@,8Y%YK?"*N4[6M]F7%P^8 MT_EOY/D$5@YH^0955^6#Z!%5]@JHWEZ"J M3YSTEA,G<:86(V5& =G]F[0TD'*P6F&X(A]9TZU2-Q:<%U0%79U(>TX#ZNA+ M)JM*!Q:\4]&=Q#KDV2?5 JJ/9.]&'T6MB#WZ#=%XX]PG=LB8HVZ.E3J[P 1# M54FU3_(%?:7/XWS"I2SU$7VPO828QI*+?3N5>K*@8%@#,UQ.IST"SY\Y+-!> M'7-Z8"2J^")O9M%>N((RLUZ"\&FU1YQ#$*USNT(?&!6TF!M!)FAAT6ZJIA"% M9-HC/X&NI549BF3H3TU&%Q;MJ=J;I@RZ[7'4/B;878,(IN\P2X0/0N_@9*[D MQSU[HW7BQ\V'=M*QG=+@Z3,M.KR3CM_[>GM?;^_K[7V]O:^W]_7VOMZ_H*^W M#=?">3YO<):'^0M"WHL?!,S,WF1CI^^&:'94BXY(-5P6S?*D/T_9L"RT/-%: M/'O9;I.8+,H*+,89).D%^L^E&G#-&";-H2VR3AVJ8S>\?9MJ/ Z?"3S"NP[T MMC"6G7ZH2U+4 C/?IF:69N(CAEO@>Z-76D49$OBTOFCV6]<65XR+1?>8%ZK9 M&LS^"VA^2F_7*KX?U*+[V;>@RWNNODVE?<1H"W&\2_/?$@A:)7J[X1?3[FCL M+E7XAS>IP@+FODU-/BT1ED[;Q1J$N40ZV2I+<>A2L__C36JV I/MT7")\IG1 MBQ^MT0L;1=:DKG9VU#%QCOEDC1JUP]A%H:V *^%'SO0:][ G2JS/==-7;"V[3H(C2XLKHL3Z/%U MLI,1.U5&\Y=-G?#T;=K1!Q2Z9VO(!(6K!<2;>_C4A8M( 8=.%?IM7DHI 30>885/F43R8M>O2Z,O?"M0JGB"J>^/;J\1\ 9V8&([%OA3DC6 MU ++VXQJR BUQRNM0._OT%^M::V^9XC!"GZ+X#())OZ2FS2^5I<6F/:Z.E"/ M ?;H!N,T7\IW- C2<XQYZB1NG%*R_4.B375WD54&?[*J_%VCK7F!O MNPJ#\B\$^+ 6.*'T;P+XY-@V)V2G8'&3/J]57\.@W3.LJJ#[&@::'5AP-M6= MQ#KDV2?5XAFHKV&@+FU=4NV3?%_#H,8,[VL8]#4,^AH&?0V#/N=F7\.@J1H& M%=VVWS=:Q:!W[?:NW=ZUV[MV>]>N!;O:WK7;NW8MCE;*;\?S'<8^S0G9$0V\ M?R11G.[5.&)6;&O1Z415\HJ4V7,@86S.^\H3MKB2^\H3%W@*MB<54%]YHJ\\ MT5>>>!-JW%>>N%!%[2M/])4GWF8>H+[R1%]YXDWJ>Z"M/ M])4GC&MX7WFBKSS15YZX)//RESBD])4G^LH3;U7%^\H3;T^9^\H338W85Y[H M*T_TE2?ZRA.:7'Z;*MY7GKADM7U;-KBO/'')"GK)E2W)Y>+OHW(O\/IEX?TBH%\2\9T M(CJH\[1SW&S8-(O9*A_8_HL&0B;89WHF7)PN]YP5W2"(FW1\S";[&GJ5]KL? MK_/39:H'N1;P76AJ3:VY-% 15.FLK42>61^)!$6A$TRUL1V^+QT]U9%BB]<& MW]Y'[Z,8Q/3Y[(2T"P8K&+H^9!^JU9I8X,;24[K#38*4M#8N;M"&(.?Z0% G M_!S&@M-.11Z?T]*26G^&-.FHHD)S@"TX4-1090Y1+? [S3^?>2A$>LP$LV#; M79''3'):X&[Z^)#/U=+/%KS+K\C-$AE&MRR<79C,@2EO9LQIJ4I1<5 MG@=RCS]-U,[2T-&K&R3T+$J/V>0_>B+F"+I23Q:LV%6TH!*MMOD-QB'%$D:# M("!@,?:?$OIU:I1TW08?U-P&^9 .F9U.<="],Z'W&51 /\)Q 77RZ8@V^?#W M.=VZ4WN3^X1\NH4_=PY(8"_.&R"AI_FU5":'S.H7,6&>\B6P9@_U2@IUX#Z? M"J,[F0<4?A/?CY<@#)[TCQ"GVH0NG3X&?ZF;(C'E=13+BHV/!=IC4SB<$L+'NLYUQ%_LQ8+[2PL4H !/(*!6\MY_]BEM\_?XO2#67]K$@F="^KG&I%09G2B'>+6Q(IE2 MF!Q*$F,B;X_7Q\K:AI(9PM 8V^L1YCCE MV6+V9;QHE*GWCR2*TY5>(@-)6XLFA** ) 39)SU"$_1785:5S=TM, BC+ GG M%\*D"8ID(E3IP (?N:8<5:BZ$$_DZ0^ZCLB/]1V1_K'D LA*+K3MAN1L9 M) ML@C?QN%>&/+DPRP?9",]6I-G^FTD&#]99AL4>I]8O$\LWB<6[W)OW"<6YPBN M3RQN8V)Q2H9"8O$2F 4;XZ82BY?H,OV"G>R7MS"&@Q6&J9M(^J"=V\""R(P& M)"2BT*BL-'9C@DVI=B_&KZA:VIAJ,\)FX6ML4"OU9,(,T)"ZUF;5X'ZO MACJTMQHU[4C@7=\TUFOGEST-\^-P$U?7.E[>]9%@H6=4AU4_HY<:&SP5M* I MNM3;XX 78/P%\]WN\F866'(]15:4XYZ\BY#@P'6331( 6G)C@W#L_U/TY*1* M1W8?[JM+F4OP1:K5&+= =M(Z0VI-[?875):CG16#)+N' M0]HK242(?C<&9VN+FRA]/MBD"F>:KBY^E:8&)W:K(E>AW6RDPSU\BH]!@D.T MV8)P-Z??ZH4R_'#^INI^=+>@H0K[WM-'4UG__Q8Y'AG!5*#"D5Y*)S?Z@ G6 M<73ZFNS2%A!O4@S(0**' VQ8.\($!"POA:NR:3#[0N 4)_%; 1ZT'0Y1H4() M)='BNX%Q2"P&?:WZB.'&3S;$&I-/Q&*)*I=(FEAP4)KFA,6E8%/G(L2M-VA%1Z2F*3F[F)&6H6* 66&I% MAG)):(&S98.5G^ODYX(CI)G+03'>!U8R[?'EW>(=EO@[A#%ZH:=:V4:\"&GZ M?DXN+"'Z]GB$*/IDWTI4@*K&$&"\H\]Q1-7!Q4U,._W4)2.FPU81?0M!=N,# M/>JDHWJJRKH"J3:HPO%-92&*V8'(,&> ME@5LL)2EIN1X%)AWM1+)W XQ]/SX,W#]@."BZV8]>S&V=[/2GIVL:R?OV_Z$ M5%2*TV69(Z*45 )XD]95<$AG 1KWR2JSGV\/+3BIEQ&2QK'RP>TXK?-5BB^% MIEY(<0Y%#_ E4XY#9/L@6251:L;X)T^55A:;%(XN:VU2SNFPAOO" M#0H+T([M"4^!>%RW8FM"W]939(36^Q3(@LT'7U]*&9!/$#>]0$69/.%M;I"0H]%(Y#LBMX M N$?T^42$@2Y E-L8\&.2"P013J:GV@1C@N3C'PZ3K"TA'V>+)[\;7K(8$L_9>()H]XP$KV)&EG\WO$2)&%E&U*P;FV&&)I)B M"Y(VQ@HO*-%2\FOS;?#E1>"RB-EKVB%4=0BVY)=XIR%8?A<6^$\:D3B?0GOB M!,LA$:GS 49QZJ5(<%99DNS E.)K^(TM\+]H"U25-EM%>6$1VAJ.&PVQV1NK MG=U\1CEMTR2.8A!Z,H')FQF,V:UN/*54620X!G&'.KQUUD-1)UT*]8<65T01 MC?:(N&Q#[D#D1_,MAL";AD4W/J^.M7KS+L7Z'ZT86!%UC0F45WSP4"0]36.R M\=.R0)\A,[6' +A+*?Q84PHR6MKF>5GZG_U7Z W7 *_@$#U#3#":T?QRU&$7 MT8<1+$EH=]&E?#XU(1]M"KN5V@+%('B \006L)%+BM.L4[?23?/BX9#5K4C& MH4M,: 3'(1.=^P0N4)J"JE GF9GRN)%N.Q5I79=+R_V M'>>]6-Y[_V:L?S/6OQGKWXPUEUJ*:;8$B:6$\!:$02J_$Q-38M'KI/Z%F'D9 M]"_$^A=B;^2%V%_KD5/%IV7M/7+J7^7TKW+Z5SG]JYS67N6\V=<9E9[+V/HZ MP]K(U+JO,/K(U#XRM1L3VT>F]I&I?61J'YG:1Z9:%X53Q%M!>)<995JFP![F MO\D0J'9B3#L)@6K%5'X+"4I>/O=+D43'$",-NZG8WT5&J%8GM]M(DF)LV+UF?O2',-I#U,2:N \.^\M+H8@2PUN8'+4A MF?6T1NMB)ZGM(VYBA^==1=W8$F+19+K(:,GP"?WR/& +_/,JFG92)91)2BN% M]LI#";.="( M./BJ6&LJ T:/IE?CTFI#%OG@!O MMDF_6,]=>9?^%<0)W8W?$SU*G9($%X%'H5 M99>UM,H,UI%<1HY-D 9!I+7X3QP"[QVVK;RE 8;Q9*^%2NNJE+),%I8 MX%_3%@Z##!OED[MWM43$;F2!8TU;2FQ*;/*E?08^_@T$2;H=/11OT76H_:#@ M4%N2D9QG.E3J37- /IC];K4#DZ*C:*,[$-!:=O,UA/&$#DLD<[=C'P?N=K]" M;T4D<@\C?Q6FL"(/79L#]LZ^9IQ][2M%[S?L_8:]W] ROV$#0=7G)D)@#?G@ MUKPYZ]82\AEBG5B%-E#4P X+*--4F52LL'W3> WQ,"MO.X@B&+.+&?V<8"W[^ EJ(PVERF+O%" M(2 9.3D1=W") M,)Q!-P!1Y"_]_;Y\8 MDX@%NBLH/_2R/.X/9$=[^^$KV=JNHP?(NPIOJG,+,OYJ:TM3M)N])Z3J3G0] M5=]';V]*9P./WZ.'J8#Q;CZ8/S.!D\ MS,F7=*@K.I9S&,RAH]E_57B\6;V'2X@Q](I\'&!,PUSHCO1W/UZ/0\]_]KT$ M!*-7-TBH*.9K@"'-3.$]@AV%BP:A1[:L,8:QC].6=S D(HZCN]V"\I6^A\B[ M(;#D6T(>>WC1E>,E(-[UP:Q]/G I%MZ/&L?+FDO82]!:UBG5N 0-NSPRM.Y0 MF*1$8$2PIO31"A9'1AR94'3#LW-Z ==S46J!1?S]M@>SO9FLXW.,)$ M37QP"VZ+VI]EQ5Q/?%9886I:FQ?RZY/N$#!X%],UEXMFYA(V 9U?$'%LW$-" M)^5T.?J3H$X#FXAT4Y)9%DX ;,4MD FEDS&F[>P%U*&0HL^TN;_!*.85(=1O M;L4-D#$A:['*K-B+W!F]TC^9&2PJ=&+%;9"E*L!DF&5.N]$K=),LD*'\BZ[C M[H.2X^XPG%,<[VW[[LXUK04_&W<0B[?3YSAWX?&J,NJE^[,D*EC9]U2%ET:/ M>V1#1FQOBG&!J.C\B!M5]"0U.< %>HZJ3^FB#C;)Q!;V6MPUD^\+DC:QP!_4 M_-PX[).DY%^.#^A(Q%:&V[>TL5=E@C]2UN*&N#_6[ MM2+,MCU-J<\@LV[]":W.'AU/4M-M^EXI7&7/V0:A-_'!$TWT[4.];-BW-^0\C%_M;64RLL,5?N%P9 MK[:.G,%]P;(W4K#,WCI;F@7+;*JSQ9P_,O>CM)6Y6EMJ])1+_PI,R.4]LL_( M.:S6*5TS2+4V_T2#"H2"E3>VP E86=)RZNS9O+,Q#N$+"+2E6&AE@>NN,?$5 MR+)';B=(^JMU/%U^B[(, 1RI2=I8X%^K(#,)4;9*+#_:[/:YC)1$=M[( H]8 M;9F=4W4I0E/+Q#'QS_SAS7=O@5>L<470H=]ZE7E H5MEJA?;6>#0:D[(1<*L MEYZ>S+J5U(]M2\JTHW & ^H0?P0XWBTP""/@TDXU?8*WYS[!V6@R6(SNG)@/AC3T=VZ_X^_H-^6QYVY7^D4I?%>KKVYGIAIJ@H!;G0ZL<3_6 M$G-Q;NM0;]0"%]$11JVR .V(/M5759ZD6@P(_2] S"2.Z,40"'?CT.4'@G)! M+0@ Y:O+X6J=B[XU>EY0$IEG5-[,F&M4E2)V(*66?;,E7C*/R2#;BAC[3PE% MZ'> X1H1#.D5YBS=1LQ)?U#X&E6Q POL9F;V"IY\JK2SP:M82"8\N>X[,>;#*=)F& MIHZC**'9IUDS2:V)!4[-*DN9F"BS1^AYMA+>@QBDCO%QN$1XDT8#3?'AV+]7 M+K+DYO!:)^P/Y^]IYZ,O7T,?!R=B* 3AP/WXSM/.V:_= MEW00WS-M!K<(4WH*3#YP5.T8KM%3MW/]X)*]2R(R%Z)HCTPD.'=+VEAXU-86 M9&E'*R;7J*G.I[7H6'T"8\>)6DGO2E(H4]'"EN41(R]Q.?4^F! 6G):9"G#8 M=YPBW +7BH> .<3/O@L%'!1!6W 4$G-3A'SGL6U#^E1BS=PG!B,'F MUA3FJFFF131:(!6F:1:#FH_G%"L7G^MVU-+*MY_YDB(NX,2#-AP-*M,DYC7? M*0U&Y?"5K/#8!\$,NBAT_8!.:$J'4!RR1@87"5VIR$BQ8>/(,K4RA[5:4V-. M:QW*V(YKC67H\H)]9_ 9A@G\3'B69]*@#XN&212C#<2'S&34JT#^\_C5-BKU M9,\F3UM!*M%KCU>/NJVFRR\(>=1%G^]?YR@X?=.KTL "OWA5,8K(LD=:7S"* MHBP7,D<\)0@+G.)5Y5&BHX)3]>?KC#M[7^'?_C]02P,$% @ L8)H5SA_ M,J^.=@ 2(@' !4 !C9')E+3(P,C,P.3,P7VQA8BYX;6SLO7N3XS:6+_C_ MC=CO@/5.;)$ MAF[D^>'V/[_*TLW[/WWU/__K__@?__%_OG__WY_NKHD7N=F.ABEQ8^JDU"// M?OI(UM%^[X3D,XUC/PC(I]CWMI20C]]^^..';S]\_)Z\?_]?G,8G)V%]HI!P M8M]]^%A\<9:3B\(_DX\?O_G3-]]]^]WWY/L_?\O^[T_D]G/1[C,3;>-W-0S\ M\-<_P_][8/P(4S%,_OR2^/_YU6.:[O_\S3?/S\\?GK__$,5;UOW;C]_\]^?K M>_>1[ISW?IBD3NC2KPAK_^>$?W@=N4[*[2-U?WF(@X+ ]]^4O)0MX*_W1;/W M\-'[C]^]__[CAY?$^RH7$;[68%(T?SEJG^OT\8O>_J?7R7^;A\ 5_[98TPWS4(&M0K- 26+92Y1-S= M@3"0CMP:O0 B.(J/#984P9!0]\,V>OK&HSY'%/C'>_@'MQ/[X^]G$8/)Y4.2 MQHZ;%I2X^/_Y5=/W_:P!0@.M95R7W(G=@A?[9X<=\A;?N!%#L'WZ/LA_&-Y] M$T>[9DD%NZCAR[\'#_U_V$*5FAXQ3:(L=FFO7U067V7I4D36 L8L&K[_[%Y ;3H/^FOFQ"F-@]<[NH_B)KQ2M\3O5PKM#EWLH!EN M;U,)>[+CE82)H#R=$][2V(^\B] [9W.%%M4/V^%WP$;-#MVOU@BW\S6+>K+K M";)L5/4($)YP (V=,/%A_.[$OX:F^/U/I=_1('O0#K<7*J4]?? M*4\&@F(J M>>D']";;/="X0>^&)GA=3Z5/X7*'W^-T-:640UTL7S$ 12)(3N5:=W3KP\HD M3&^<7=/PJFB&W<6:]:J[6;T-9E=32'JBNU54"9"=RN6N0C>*&7SRE?%]RH;T MLR@+T_CU+/+4'MC5"[M#:FE=]\_6+IC=54_P$[VWQF1!.!L2Q21G18#75"Z] M=EZN/#9%\#>^V.7O&*W5[;&[<8>F=0=6-,;LNETBG^BTC#RITY]XO%]Z'C-: MDO_GV@_I1Z4MFMMB]] 6#>O>V= 0LV>VB7NB5^8T%\4_"% GJW R_,SYGK%_ MKN)U]!QV6:'6>:Q=HS]6S6;@C0W"FO)%( WC.1"?V _Y7&(5W\;1DQ^Z MZCFILOE,/%*A9Z-;'K2=@6^J)#;CH/F$M**GT*=SK\'J=+*:4VG01-"-33!ZUHJ?0K7.OP>IVLII1SJ6IP*B3;DXW?O M'KXF!?WQ_6L=.Y#K?/^Z>XB:-#W\'J]G-6I2N%7M2YP^U2SB8(<2U(@@-QU. M7;RXCTQBJCB24S3#ZU5M>AUBEMP&IX^U2CK4U0JBI* ZZ9'<61;'-$Q%5@/$ M#UO;9HER#:-LCM<%=?2L+RR;V^)T22V)3UQJP];87>V M1JWJSE9K@MG9F@4]T=DX45)0GDX?SZ+=W@G5"*=JC=WY M6K6L.V%C4\S.V"[PB4Y9$">".LG)3^:=+U5NMK@NH#9#4U/T?JG4[\ IC]JA M]DBUM*>ZXXN<:Y3QU1 ::4T,> M8[>#Y-K(_?7^T6&&6F4I5)V #4OU#D%[)^QNJ*/SP29.2P_,;JHE]ZD;.IP' MX4P61+ A$I_)/)DMT&,GN H]^O*_J!HSC]NA]]=FS0YEAG/PQB9Q3?EC7HIA(H]<,M8>5RQPFM8TA]_C];Q&30IO MJWV)T\.:11SJ524U N1.]:.-DSQP+EGR?NLX>^%,-$B3XI/*J_(/_LYS]T&" MU>;2#YW0]5G<1&*[2%&=K6=7G+XX1']PTS[]\'GP(.D'3R57-^<7-_<7YX3] MZWYU?76^7+,_/BVOES=G%^3^+Q<7ZWL;/K],$IHF'=Y]U BW'S?K)'MLO05> MWU3(.1AB.3EUV4$C^J1RW<[)E+(7._DJ42N$CMO.(9(4&AX'U$%#['&E$O^,-Y0$Z#'9]QH9%-_O_1.*VX-5].XGM@A7WX5_T(JAE>'8=:'(3W)'7 CH#4V;$X(UN^".?1U]:V-T2WN\ M\:TE]> 1.R=.*NHLG#*Z!;*!\5$P]/R7745*-[W8&]4G,$4OF M"&D*M^>#?_GANS\N&)%D3WG6=7#RV=T0 M/ "@"QG95V8AA34/FN".]R9]Y/B6O\<;SXU2#G78DMB",')6 G(4?7PZSM0A M2IU@,F76P,U&X-_&=._XWL7+GH8);9\!J-KBAH)6#65,:&R(%QS:Q1WJB#E5 MDI.U.X"/JR(59*W,OU?I(XUKFPX*$S0VQ!UP:MWD:#MNA3?46F0=ZH2<)#G8 M!;,29*,IYUK?_=()L'G%5F=8S22BS/K;%&'4-1TTJQ&?#R*(H-LXVM,X?;UE M>J3+T(-]LCWLAZG7B1U=<,>7CK[U.:.Z/=[HTY)Z^/1*$%\03EZ\YU8PL+?V MG$1GKBRME"WV@UPWVV4!?UG5H_N8NKZH7 W-G1T4@_A-? [0W_\T^*''_XH M-H?^^-WBWWY L#^T8NHY4++BFC*%[_SM8[K:?$DH1SW5Q**C#VXDT-*X-J%M MZX 7"_3$'CP3+*@33GY!.(/WT>8]8R&FOW8FO1-I'0!YB^/W.=U0-H?PX*F' M'5T[+V*:HAZ]6SO@CMAN7>5P5;?&&ZL:,@_.4\Y)$T&;/[-03*MM#=E3J)LR M/9U[ M']Y8[B7]\#.2@HD)47F2E[[:OJYE0_T%^4Q_^\T)X6'/W KB,HL3TYSY'_(O M+.."WBW+U@ZSB7V-^Y;JUK.(;].7$FLNC>3ZY8CJ%AH&%0N;%ZYNG5>X*J)W MU>JH,>ZP;->QZ7I5O27><.R0]^0[1#E='->EQE)R+^A:BKXXH]XQS*A-H6R/ M/@;;-3T(P^;&J".Q0^03_!0HDZ;QT58\CJRJ_3$1Q"B/]S6CLK']+*)2K6E# M5!XW1A^5+2*?ZJI56@J2L!Q!UUQ'2$FQ.%9>1^$6:A^.B@#-+7%'8HMV MM37C<3.\T=X\QPK&=H[UTQA^#6I/3.C<,?!/AS3B:"?;3 M1_(/-N](/-\%]=B0QH8P8HRMK.W=B8I]]_X, M^N!KT$:QY8Q ,6)E'(%?T)H*IE;730#'>(JO0Z7)3+;?"&HU+2 M4]:C44@XQ07Y20Q25WSPL;;V'D/!EA'YA]8A^?M_7_SKG_YM\>WW'_D8R_[\ M_OOO%M_]^T>C(W6]NK"5<7OI>;XXSKQU?.\J/'/V?NHH,_"5K7'#08>6M3L@ MS4WQ@D.7P(-/U$NZ! @3/R0Y:3N7/\97$]ZF><_4=!O5G.IB5E&OG!^",1S; MLXD"#1,&$>*6"KSN=T/3U6;MO*ALU9L*\O =9I6#JUU]2" .]X&*G' -K*R@ M+\YE:QR+ZV'O@.G7HL@I&P$99UM7Q*Q9)Q)O[]2LXW.6-I#DCJ:.'U+OPHFA M]& B27I.-[[KJQ;F6AUQXX6^[C)$=/?"BPH]9!_JZ@4+4O @[V3OS]G8J68\ M@?K+VDLBG":.?3;MS0OT8:O6K7T_#6]8ML@ZP?Z9M0+!(Z@ME=-EPRR4"[98 M)'A\_]-66W&R)1MOY MA./H>I1DN""[@\P);@,L(;X,@N@9(/4RBL^C["'=9$%1$.N.NM1_TJ@&UY,& M[N ?9)':'DH? GAA89@:)Q=AJT@O2"D"V40Q.8NIYZ<$-B8L%]BQ8YE8LHQ3 MLXR7"P'O./*VEO=DSZ4G)-F_ PK_8'B[E%Z25#YWV;UE=2IYY/ACV(Z*[=V3 M:"-&+=,:FM@(D259D%(6/A&0I5F0@[=I%_7':6WO%=NUJ.H-6^W':Q&DK-XZ M\2IF"V\B-17 7,)J(P58;,#P4RD MKQ#&3E2$QY!V.IHM#I)-%U5*"P(,X"HFRS*-1L]6#;UF%?,JK5MB_;#+;&)< M*;BYV!8L2,4#0SP;U_LHCH]RT-#$LT@+[&.GLL<,X[BN;6<,B^8SB]\#H8W' MKL5$TC'U5<6LWZ2NO7A=5>FH?8Q4[S;#R&W0NS-\I3XSB^$FR8T'LL0$3S2; MU%P5TI%2\:EO9?1<5^OUQ!W=/;177.>8WUJZC_!F+GW@6T-/: ,,BV=)7O#@6R1/HBVEU?*1NZ\I8W7IF@:I>$2N:SBA M#:T,FX(3RWW*,13%LOX]4K-[[=O196:QV;'F;6L_HR@UN>)K#M61%[I:2=.C MJGV^6$>P:/FS=^^/S""Z.:D=#7+WC*[I=]P/9ZM:X M\;E#2QF:%4WQHG*7P(.]=75S?G%S?W%.V+_N5]=7Y\LU^^-^S?[S^>)F?4]6 MEV1U>W&W7%^Q!F1Y RT_W]Y=_(5UN_KI@ES=L+\O[-RQ?*)A1B^9$T"]2+#' MSW[Z>):QV-O1N'RZ9IDDE/V?I[ZQ/8P2[F@XP3KU:YF]R>"-HE.4&7YQD_,D M\.N0@JMXT*#@*S^S5+"V=H?;AHW@VGKB!+9*)R?I:O-C%'G\[@:-GWR7)O=1 MH-Y;:.F &Q2Z=:TO8%2M\8:XALS#9W8)KZ[ B?,LT((\ ?J6IK*CJ[OEZB;' M&DX2G3_&49+<]#7>"&L205IVV4^I]"5 MYJ2ME RA 2.W_9&&3)H ;K5X.S_T04+B[B0NY>R!:SNNF?0-V M3+TX42M#];0_&8KUL>Z*!"UX=&K6N@[&.P2K136W[K6RW61>,5$8*D*QU"VU MJTK]=MFAUG(F07:L76.85:K7BU';C;13][)67OHG"J*Y:#B@= M6[XZ_7!'H;;FECM&NE.9ZN^0Z//$VU%IO5,KK(#_;#C&FI727,%.YD%D<\-+,:.PPXM14R@]?$(M[9]5%PB$@*22D#QP$0L@Y$(N2%TH4DAE!1WG M8.6 6SDWY3Z.GOP$CK"A$+J8$9$4Y+('N\PL^9CRB894G1"M;CT'N%-J>0Q5 M1TVQPXQ:X!.=EQ$N-A/(NYRVV7E0GVV%<51]=UO$)$0IIXDB.&]HVGG>==@& M=R V:E1;B\@-\ 9=LYBG7%*KC\C3O?O6O?PPKJHO#XMCZ/1$XX>H8_=_4JTF M08OBCJMGB1I5/BH3Y:ONY:%@.T?0(WFJI'X4C8 M8D 4S/@SALC\Y"2^JVF4HNV\8K*F85M \H;SB<:ZN.9"<4$X911A:$;')GVL M!-NY'V2ILIJ?NO6\ NY R[:0RYO.)^@.!389=CEM%(%G2L]FG28)OI^IOWUD MO)=L"NYLZ4VV>Z#Q:G-4"ZMC;CJ #.YP'6H7.8[[TL ;X(,U&1H1!4.2!^2.)F3EM M3QBQ-Z6?UBRCZ:FQCV?) =0 2=Z3!UM+'X4Q\N%,MY)R?RJSQ,HNJVB@I8K$ M[/"R4Y%I)U[C'"^VEBNV9IA6)/$LKDZGMHC%5>M9M-O'])&&B?^4)XKEOZH^.'\*%(+;NC;N D MB;_Q79YQMMPPXZI+0IOG@AM?1K+JT:T3$B>/](TM2J+66\(QG/J@ , :9)X S/,REJ@TYW\UFR!G-ILM=E+'5 M6ES29W;C%VH0/',(LW-A)IV/.D MP:B%_AL:CW2TM#8DB0'H&'S#\=[BZ2Q?A6#+,$W%'_45T('D4 >:'V>.:8410SP4GA>1$$EV =R4\J:2O;^[G M.DQYHVOHYA;.'ZKX%=SB5T@EJTOKE]JZY'MLZY)YVQ;30 O!:7[HU*245<1T%JQOJ^0W_NQ5T&TY..]_U(X><#2TU$/F4([@1$Q?>)!*.A8%O&_U0XMZ, 6\,>P[,2V 86)5HPPB%3;M^ MA_M\HY\ ]68X3]@T9^NA9SO]N,T/8@WJ//FI3<,IS5LXGIG8_$/.8@I<)N\> MFJN'3O-6>NJD%&1;;8I1+>FXV]71!3=*ZNA;>PV]I3U>I-*2>O!.U.KF_.+F M_N*OR34NPK+=^26;NH_^:E/NWQ]$"'<$3#<-@?U:'M2P1LM)^AR2B5&OA(J MF)*'5_(.^+*9^]>D9$TJWK;O/5JP4KE63 @4L6\TBY4+D.\^A9O_#;(:*SB] +^9(MK<#K5G'C*9Q^ZHM2P+:Q?!:NF\,DZNJ/@ MSWY :U6JUY&9L7XD5KBC?TS[RC@R!A^\B#2JMH,OY$A[APRU2K'(<9E]]O7, M9B=SL'A<6OSH\AA\#1^Z8/6]9/7JS37'[I3GG.Z9_#[?TF#_#FB>H[G(.LE_> *1Q*3!2G9\%1RF9$58)G< EQM1ZWV M--,NB?]J<^F'#@.N<'L6)6G"E#_W$Q=N=ZJ6/SVZXX[ZOG:H37DT^^*-_MX: MG'!7N&0$V^/G](%-29(D8PPIX?QX6)0<['[;SD,P"<'ZEZ%3VP>$\6O!\;I:(HSO'7T@U!N M:V7<0Z,;3E#JJW=]E='> M!^\<0UORX7-KP:#V5F]18X#D7"PM+:92W?:#G<7[2=2#_ TV4+1M%R@;XP[; M=AUK.06-+?&&:(>\0[V3DWT/__;(K?,*LQFRC&-&C.;7Q9G183_LHC&!<9H8 M'4OW-')_S75W)<(V@K-(8%V%]TY 5YO;=T]=;IEMZ\<_,W^_4"9?:G7$' M;S\;R,&LUQ-O4_Z32D_GI IMCLK7R/DK\8KY9,"6<*RG96BI,-Z5-F $2 MQ@2LL/%?H/!]DE [E07*U[XOH_@\RA[2318LW=:-OHXNN(->1]^#7 AE>[P! MKB7UX(5C3@A.$ZG_!!D1BWQ.32""BK&;O+NC3VRL=8)1"I#HI$6,9X22.-_] M@/,\>+ BA$*'PCAQ:1P;8:TNL5*_JZ>^=M:/ NZ@'V -&0-Z=,<+"4.4.#4U MOK%85-.=5WOU:&V8A;ZXC[#B(>_@*M?7'#VLW=1JR(4HTL?+C'*%[?KTQPT0 MO2UQ="U*IS-><.BOPFF7EIJRB>1KHB4_>Y>.IK.&C="_"MV8,A'.J?BOE!-U MYNS]U DZ$B=[$< =_/UM(4>_?F^\X3] AZ$>7[ B[PIF4)Y* H2WAO3O>-[17Y ODF[ M##V^"%GR^8:VI32)S2V^^]BH/?!U*,T)$7KI8Q@J& M;30 I(7*[(!$1Y>1 *5DC:AP@P4K'9:5:C*+G;)2(@L^64=+.,F):2WQE,W. MNK*Q>Q' C2?];5%+U=3NC1<_!N@P> LA9P5E2')F94[V0B1E+_A\W79F]I0V M8>(_PDHOVL!D1.2G@PVHP@93Y6B[E'H) %=#,C]/K^W,"%2],CWMF04KWZS!1%R'$+GIRSQ0PK)ZOR1*I@5 MY=]XNNC;3@(Y=@RP1^L4HZ4_8O08HH7):4;%KWS6C<_/"Z98)AICVJ6@74O@ M*O.[^':(,ZHY4C2F$$_>L_!-V&HPSDN",0'MC")O5O.N'3^,FB/;XCMY/P/] M"-G?%L.V\O".C@-TF'#K#M-9P%@FX8-?)JS RQ(E>,\!RHIPIYX#M!.:)6AH MV$8#/%JHS Y$='09"4Q*UOC/ <:TTN$Y0)-9;#TO4>Y>7,.TBTVX^)UZC=V. MP_:XT:)34]5V7:TQWMCO%MG,KA.GS=?.G+KU/;QO[ M;!C=LS5]I76(.6RAW+2&E?)F\PE262]5;$*;>81D35(SD0@D$82?$$]=>]+"&NU0MY0?%^ M.IP0GTQZ<4CT2,7VCQ]NH! (G_SY!6>R%ZS)IN ];;7Q:Y8VH0F:YVUFD>[DU9)0EU[#M;%2X.*06#'#[>J#$P9[:5RK#-G6 M >\*2T_LP64.!77"R2](Y>L%!YOWM<=5O2AISS-X1!VK #C9*>V<:W5' VZ: M:.V\_.RGCX]1 $\;7T9QKR<:3B"'.^I/M5-3@F!?6GBQXF2-3HRE!7^R1>*X M(!V/2%C.'IS<4.)Q&UX.P@\AI2JDHM+N,^-.Z&X?1*^4D@2>GR!I5>#65KWY M:@69/_:WVC![[**0/Y"A<="DZH<<9G0U5QU_-G9"#!S:HIO9)RB?CH1#%LZ% M<#;6ST6G4#Z!9Z8])WYEVF]HS&$R3R7.0H_&S['/9"Y?D32Y,2SM:.=/6^7Z M\C1.KO@C.0^^E;;P.WMD>^0Z$H_>.PZVA")8OZF*3Q?EO%WS#P_9N-9 M\"J&,]A!\&ML/<54]2%?+?24+^0TML0):AK:-2UPI&:(IR MPAJ)PX*JS1V- M,90L*<&,(8W]ARP]NH:$+.M:89U>!'!':'];#,NNQAO/ W28,)L:T]6,L4S" MYVKOLL(,>.H>@J!"/!_^ *^),3B(T:@#:7 M(1N_V19Z]0^DEE>A&V2PB2.>,'2"'^,HV[,>Y[">"E,_S*B75\:*0A44H1 , M-\2A,-$1=-J7"B\D([+-4%P3*L!\KE""@!9P(@N2Y>\220(N2"6[^!(*/1Q^ M5NM0ZD0*I0C7BO>4]2*58E8VKM[4[[DY?'"-L1#/-+K%K\;_02MA;8Q8)UGW MEJV*(^^XS&MN<_EW%(91_/"3"X%[)++SF\BCSK02X!UA+-GAE N&1H8,(3II M*#XM#R?U(4OH8&4A,K>?25C-?TM#P1B_S-L&:N.X^T9A% LJCH%L>XX]%V%K M7#YNB#O>U;H=/%IT MT IO%+?(.M1-!4DBTCB!*"^*:>NU(-/:\4CCR:F0VN,+75/@8*W>WU7(#,'F M(EWA=M@*>ZPU:E4/M%H3S%'6+.CP$!/T\O"Z>"FV3_*WO/W?()DJ;[28[A&> M[G@T:X?#8!34K21V,(=FPE0E!$.O/+.^2NFNLXI>C_ZXX[:W)6I9';J=\<9Z M?Q4&)S (3E)=35@R5JDYRRIQ(P8H\ M9"D+F)2\4C&_L (;D]EBZ;IQY@3BQ6'G\'U/GKZ?6XM*LEC93F2G]3@1=7#C.0KA2&;YXJM. MJKOZS,0?VS1N=,^F#C/PUE:Q!V?OB4M\%56V(&-TK?CP@8+GT<[Q5>4Q5&UQ M^VRKAK4'VT75Q3ODE^$82M.*=TF?PSW3W06&&*IG:XG5*I66WY>M@( MKS.J11T\]537-YC$]Y:>QQ\L@]))OG<5YJO/5C_LZH/;)[4TEOVSM0->7]43 M>_#F04F=[Y2\OPJ+$Q@K7NRZV2[CU7I6Z2.- ==C^DC#Q'^BXBBTW:-[]$?N MW7TM4?-TWA=.#%ES M26L$*!OC=O=V'>M5\YM:XG7D#GE->.TYW?CNT0L6T^XI7#,=^6%8UQ)5;HC; M)]6Z-6X9E*WP^F*+K 9VMH"H.+&ULOHZOJMRO--\%P7!910_.['J(+(_%=Q. M/- J!\F ?4C@=?^ABIR01GAX40RN-\E,_T#R'8Q?@#').5O:'F9B0:DHZIUG M4-=)7 '[R0DR>D.?^3=J=-?KBSM6>EF@/@9H=,0;%_W$'SY20+53P88(/OF- MR@7AK"#)]EDTL)/;-XT=Y*J8KM@U$H5@&33T+1K)C_S+FGO6ZK I#,>KZR8# ML>.X\RS!0V$##?0XZ#D[^%#)/P9^"%Y8 <2T)6XR6$("*"2<,D> HVIP1E1^ MHO%#A$+ID6&3O ,Z7&8KFSQ=!2SG4[:RM5CE#$I4CE"ST5+]^U&J3U(W8$%B MY<;NTOM'EJ2\M.8Z4AR+<-AY.*SH?P<7D!,& O0 S.EO<$3V5W>N'=>/RQ(L_DVD^>.OY]NJL\\F/154F!S*0H?0TD22Q,CU# M;UD^E6.O'J@4)Q0MB"W5!^10+3$G)THYW5EE1BD:C &3#KE9(I.VG;1WJ-X2-NEK9 B:/3^&8;!$^V]W3Z8[FQ06&N M\*1AF]/F3+.#)!U=)IXI.1O83<4)16.:JP9"\/;5(PT\$HO7)4D:\3UGCCK,GR[&SUY69]=?,CN5U=7YU=7=Q;V2SQMZ&_\5TG M3(\57].7]!/C^ZMJ&:C;&;=/][-!;1=$JR=>7^\I_V"_K]B0B@\I&)%?@!7A MO"R]#C"1'?#%_Z#L MN+._?KFZOUI?K6ZPN&Q52;AKR-+N/#LW;K%!AT,W])R5:[?)/]3)"S9$XB,7 MK+8^9$UD!]O!?D>?:)C12^;]9U'( >QG/WT\RY(TVM&X8ZC2[XT[W'M:H5Y- M1*LKWH#OJ\!03[^[^.GBYLL%N;LX6[%I&G@\0H?O&M]Z=)^UR[>.<;I]9^OT MYO ]9T3 ^*1@Q8]72<',_E@WG35P8 "\@!$RLJ_5B-XQT+7WP!WI&MK6B[4H MF^.-9QVA!]\;OF%.NU[=6=I!:%"M:Y#JZ#([=VT=C-K:S\IAS<%L21S5BFI< ME>T&Z8]1Y#W[0; ,O:LP92KX#P%=)@E-$^TQIB\-W&$\R")R7/?;J^(,O[^XLUWOCH&M9Z$WD# M$=(Z]/6C,/,8,3=6%.QXAEC%D B.J,;,J2V#%#[.Z4.J/8XJ&^.&@W8=:R5P M&EOB#>\.>0>G+%U\6MMWQJY!2]UZ3N[8.@PIFL[%(-+K!I#5./CU(;! M!AOB,M+:>>EQ$-;6 S<@:&A[\&J!JCG>4-<1>O@>.W/@"[)>_C<:;^T^"6OM M,CM_[3@)4[>?E<>:/ GC-TL9]2G''8U+7>-J;3E0ZX4O>0$!*-_9E?BNT0UW MP.KJ?3#';.V#-W"U)3]ANG1[<7._A#0AZ$4NOWC>5$=(5_"A#KA^I(2Q]MF0X56C M!U0C/BX5]V&,@:0I_,966B9-.&U[Z[31=36!,"Z6[;U MP.RF6G(/=EM.?D%*!D1PL+^'-[;BUN(UGU/?.G'ZNH[9N,?@1^/ZL$8WW#&K MJW?]1DI['[QQJRWY\#L7U\OUQ3FY7=ZM_T;6=VR2LSRS>-^P65W]+;U^%.;I MZIH;?CVZSR\ QM@8RWD1SHS(W% =2TUJ$E3P<$^WL-B_H_LHAM&\8ZQK:8X[ M\+OTK!7!4;3%&]*=$@\N\'+Q(YR>DO/E>HG!/?5'+;V>\W):S5%*H]M\7'D, M",YYD)()JL%H$@M8CNM/3N(GJ\U!;:I7\?\[2][H=L8=W?UL4"MYH]43;XSW ME']PR1M@ X5U*T8+4:/ME?R2_]=VL$]DBAL'2NN#+?)]&YB!0ZI8::-;IEYQ MZF/G"#M,F-*>.'70PH&.+KBC7T??^K&UNCW>2->2>OC!F40<762/JOIM[(>N MOP\HC]T:*W-']O?%&^VK_(GV]K#4[8,S+GMI7![B=W5 ?I2O+?[P*M?EO)KY MJ5.52MV+((6C_:00@C414DQ[M#^Z$4H&I.!@':1L*6X.G"YV--XRBC_&T7/Z M""D+3MBQ?NC3#S%(]=&\!"J=3LC!JI<*8P$6FSVGCA_")VE$"I&(D(GD0DV+ M7Y/81:$I#B"S:0$;:Z4O"5UM+I+4WSDI53V3?-0()Z2UZR2O@.HM\*YY%'(. M]3M&#J"H)(ANH3.ROC8"[-+Q8_XLZ6?JP%@ XU*?'*&+=ML&L8(''?5:]4"A-Q'&-_="W<<:VHM M1W)'%[RQK"OXX VCG+[\LBFR,![;!#(H9/]T MQ:JBS^I^ !G<43_4+C(,]*6!%Q<&:S(\2IYKKTC66*+#C,G-PR;S]."=S1I7 M*S-\]Y%Z64!7FW(_1!0)7H;>M>\\^ %;?- DW[?P5B%3(HOA!)0G7*V=AZ [ M@]DP#]P8-(I%:RL.DPSPHMT>32P(Y^M9^W*"I_0P:B)%2QS^>1*"2E M7'F.XB]+"8+6[[V1$MM,G,!Q'YV:<8\/1IS@+6>FIA KL/]B!*S7B="I>[] MF,G-4\&.^\A(,)SQ0Y(^4LB9B3.&-L]" D @0*0XOPGJ0L4JNSASN.H%6'89 M>)_[0<9$[ DW?:G-!74&6:D9?'J1F@,/(!!0U;2IQ[CS(N M$EL;5Y4A/^6O9"_=?V9^PD^XDD^OTE_C3G@4T]- M3 !3P9+(/!?DX57^( >F0S2:YLKIL4V6+[XJ>U+=&G=$=&A9NT7:W!2O?W<) M//B>:(/KDE^ -!I'A7_&E)Y'.\<_3([OTV]^SMNH>9<;USK-RZ&;13?IV@M2 M,"&_"#9#W%QQ+>?.\9SXFCIL)1B?^T^,913>?X@_!)_I[H'&!X;0[(+3:_OH M6][#Z6B/_ J.KO3#CWKVXAIZPK<2=IPJFXAOHGB7E_ZMW;_A\I!<(%)(1+A( MTU["&=TR0-]@->Y7)V _M80*ZOAL:8LX,+LTK.IP*QHB#\5.L:>*P5P0>829 MN#3W6);("2.9 UZS#ZY2NNNQ8I&[X S5/OIV3/K*]K.:[QU+;785 _0)9V"I MOLV8*B_/_OKEZO[*7O'$'ALNVN<)O4CACNI3[#-TBVY.QP@#M)EZJP[1&8(E M:Z51Z@2$>7OB>WGI++M8DU]N^8UZ5QX\EK+QJ9NXGSG8;TRW7&,8T?G=;:YJJVQPG=UQXT-?.S3/<-K[XD6)WAJ8&")+5@N2,\."%M.9HP(, M/^<$BZTDY>G[3DJ"Z)G&/+<]^$.A# M15./N:"#4MMF0#AJ/@<,4 MM]@;+-N=CL(IZTYI@&;)E@4]+PHR637!W("IQ05;XT@TR?M\#LERV<90DQ'7B^)5? M >$;DKR?XS++9>+N6L%<9%'"MWYI'I48)(S8'#M[^ =U4TB7J=.@+X44!?"T MBOV!+.4_B<]DCG;[*($KTYL&YNDC&[!=)R0/7,=LSQJFT9;R?+D'ZCI90L$ MK\1A]DW\G<],SL3R18-7^,YG(WS^?(ST$73,;_Q%U9,R\ MQD2:O@HW/@2A6(\NS502[6FW[?E+D7[SL:9CH M;7:=2!+G,&[27K62PR?0PSL/-J+5X#J\\OC6L$"PLQP.%/,(NPOJ<_K0=_.ML0MN,-+1MWE-?=P>+YAH26UB,PW( M8T&"R93.)[]_2%A$/Z1VH_8S3-MYKL1J204//4)RE?/*RQW"]T%I ML8$@T[E7R:9+E)DUO6-"W#\[^UY[D-V=<2+%,!LT[!EV])S-7J"N'H/W^!XI M21OW^?R<,XDA"A+@;6L_:6PCR/M$!2\"S CG9AL/;5DCDJQ1.<$86%<\->65 M]1Q7&U!MR4"8EYAMMXA.]UG@G;8=&A"OL^]L,$]?$\.H5S*6*J4")@!S4G*W MA8+CFT7&03U;V,3!">W!D%!*E@<89!/$9A-,LL"\IDR^LRC16T>J6^,$14TM MY56AHBG>Q5^7P$-=EM-=$*!L>]HRMJIR=.8'H.&6!,#-RE[M-4T22E>%)%SM MLOAKOH+5JZ0\C!+V8!YLG7J@]R:#&02&*S,<((#G@I1<20X9)>-%L3F$IK:R M#3M)>T&;C.=>[/S0WV4[@3#59E!,\SL=6>A!5N;I2-2Y7+K/]ON 3SZ&LVD^>,,F"$)"$@"A$DH7<5483XM@>#K#: MLH<#VIN=2G:C6Y#UCNXA$2+<2C;[])I_J7\TV9<:SB'"D)6:#RI[D<([6SU5 M(2.P)8B3DK6,6+R 3M$"R=35FM&JZ6N26\1S4L<*\F0/B>_Y3)I[AQLB90JV M%/YN:X\&#JC%B!.@4>;"[.GE\ T6+E;\EO6Z<'?OG.G;"Q'$A2EM+ M?VMU1.Z]VKK7W+BS%V)_UI?=D&,;K_9]3]DOZ[&(7&TV%)Z14U<15C?%Z9&8]D@&.];(PFJR<:+X,@2L$)5GME MD6^=]CAC5%M3>WA>S?^KWQ.OP '88/5F)OC%.T./>7%6N=ZSH2Y MNO,092G)&9/_V]GM_Q^2\U\0)L&T<_6Q#*#6S\J%'@>_R/ M9>C=BA\JKQ9WZ8=.Z/I.< ^%F7@RP/(A26,V4JIFD89HX\2 42Q86S>8((QW M1#.KWN#UB"0%Y!%*?U8(0NIA&&3N%P<.X M!4P(3R\GXE7[2A9STXR;#& 9+LV%V88IDL'VQRU3(CU M\XW[?>"GBCF0NA5BB%%K51T\'#5!#B@M @]VLJ@HGL)G"4^.'T#RQ<1'">;U M$H=VG*:M*TP7=48 M[ZJE6^3!+LHI$T%Z03AQPJ@3_H6=;*[1E.4TQ:L]Y@;EVSAR*?622^:1P( M M=>AJ*3F#&7 8Y])@6_9R6> M!81=2Y>AA)\DXJ7:#:7BT[R YBB6>*+Q0V31%N=^#"7#HSR#C+^V8:>D<5'@ M(B^<6GM9\C-UX"J)XT=:\BH-K(I=5:1:D9,DC>*GR?EP-.:UJ_9=7Z>KM*_R]4/^\W+UY72#S^&S^GAF:7P MB5KO&8K<:R;>W*YU]\RD[#(#'^X0W 16B]0F>[.16[A;'X7+M%2Z_,=Y636F M%:S[4<#MY0.L4=L0U.^.U_N'*#%XNU#P@B=:I:*IDO^Q%[?^.A/!7>,#+2*'"<]2>"-E:&*#(V7L_IKCS:"HB@BO-H,'C%ZDL = M#D/L(<="G_YX V&0%B?M9%I[LEN:'9;__(M/8^8SCZ_7](FYGM8RH+TS;J?O M9P/%HJ"E)UY'[RG_Z9OUI*0N]NJ7/R';NTR.[=![%[.-QDPBH8]%.K=[5 1F M$!>]U!@G/#!L>EZ%^RQ-."!\I[?7V=AC)LZOUK;1U8^;S\"Q6X0>7EJ<$2/? MV7#4?@PNW2&W A0OJ5J<+AR_3 MMI737N1UBB ?N2!C% MHJ;S*4L&>.-N'#5-Y%4*@?A*5!*I.-#R"'\D0IEZF9\%@VB$RV9E3!(Z-.S> M=M3JT>F'.SZU-9=CKK,3WCC2%WUH; @."_EPM^)BN^C-5.K_&544]S7&?*.V M5[3.,$K'C4Y<(6E(5W,WQ5OG(+S^ZX8I^XFFSY2&39OC?.\O$0D#!]88A0'. M(![/EN4E=:/4D=]F'T?7P3''R_&XS"S!MV+]48I$N*B7(7WJ0//.'C,=A9F;_NS$3*$4ZM#&\*C>.17_O8N" MX#**GUDGQ:ALCCK.06@D*\KS3D.D\0)G+0]X5DGU-?@'A2"Z=G74J%M.>/;)^;#1AEH7Z)'G=Z3^P MX08,R"S[+(3P\TH'Q1.>UJH '-@F_YT55E8VQHU9[3K6+B,?G8H-)H(3HDZSB50OMB<%Y&OTX?J<6G[.*=?C M'BUF.GY8S'3R83TI\'&?0V(9+XZ04%0HVQ>%GG:.!V]PB-IV40S__-4/^2/H M";-!LGDE+E>#9% IB?-@4YX=WPIH9?B!P;,;9!Z;3M "IP_:^),_3#_YCU>. M5^IY:\Z6"+Y$,#9JEA^$64*ZA1F=MKKY%F<^WGE0;126UUGQZLJ%$\,<-BFJ M)[?5IC/.!#?HC&/36HUQHQSP@MA(>@X&NUPPE(%E)%N]I'C-&?FL(9 !YW@SBV$,:2\]JV+!//I<1,QL;L/%S/O]: MBNF7>#GU7$";>/AM5%7 ML5V1X^L$I)"%Y,*0_+G%92K>:BNPZ;S8U;C8;. U',M3']LFS*T 20>%89)R MN\?*;$?Z47-XYF:0?\=UQ#]C6$V]_,6D)9Q0;45=*X6IC1#[F;%<8.6[X&01W+AB"R=%5!#8%0^I\OMXD!^M943Y1/W M\QNO'YJFC1O1C%K0X&$2AON&(YXDF;IB:.88:6'CRAL^2[XO3>F7!=X@^5)( M8BY1^E.6^"%-$J;7@Q^*,P+WGYF?\(>0[\2]$?XDY7*[C7G2X8'M3B"#$XY. MM4N9+CV !O*$Z5,T.B5E.HU@PO20/B7?56PGOY>L14/XMZC=!H;DT5],RA&JEX$<.+L<%O(!T'A\,HS0->!EBG8[[2 M108_L Q19GCF8?+(,W?X/RY8N#PY >R.+(I;EXW%0^P>_=DPE%CVN#*;!4_ M9+#+KP@76&/EZ"\_"$C640ZCA8EH\F,<):IUCT8WW#"BJW?M3F9''[P H2WY MX*&SN/R>1L74@50\%H1SL7.]79DP*>[3WP!VT M&MK6'U55-L<;JCI"G^2J!7%Q$"21G[@^PA0*7[,X_W-]E$4RHX?[(-O0_XUZ M5QZ#)W_CPQ%]7N4Q%_7'*/*>_2"H5WUD;;(=]6YH5]K@^%QQH\5$5N]859AD MB1>UIE+<['YK)2*192R*QA92LNE++N?BJ)!L+NN"0/XQOM4-JA]!K(3V3.]' M6!;N8]^E]841-^\^IH&_8PK$KW)]65&K*8$ZR+E*,X+R1MOFI7I$2T:%LB4T MZ]GCK&D,UF\2U ?9WP"R]^+[YN!]F/96,%X-[$5!K>)M"$GD.:'\M+_%TG5+ MM,Z)SAVMK\(GUCZ*7R?X761>OQ\\/K+P6 !<,OI](.ZQNL@@MA1P]H!JSM0% M)=].8;;11IG;F,)FZ84H-[7 M;#X)P'..OT,DK^N-'+*YL&\+E\W87XQ;125E9^ASFJA ^#:.]C1.7V^935)X M5(FUW4/^Q 0_41OOWP\D=_X"8R&SDO'O Z"[U4>&TX7 [%\@LCB:+*6>/6"/ M]WL4E+G!J,)@LT/NJS!EYO#+QGQT6C\Z87&\.\GN5[<,OQ\DU_Y%QMOF[A#@ M]X'L^F9 AO"5X/7).$F9\&5.RNR1?OS?1S+DVYBF3[9=_CO<"Y]FH_OWM(N- M>XOZC6P\&S)R7J1!&$^1,VW&.,#H#1IG=F-)OC,F?Y$G[]PZKRVO:DTMP^]G M!-+^14;>I%<+\/L8M_3-@&Q(*[;PI2^AN$B>DI<+/_L1;_R?IS39OM%DLX/Z M/?#ZBWVWXL)&_F^ON [P[=D6%V(2UAXLHM9@_3(_T, MI;U29J] :2^S-3F'+T#@55_JJ5%W&HXXX79":[<5!37(;G[U0\=0?O"TB]_T M@_HHCB NQSX>^.@/2S7X.,__M4!O-&,IC&FWOS,IG(90A*P[VAD7+:W;4YK/$FLO)8 MXQR:M=U4(]H,5B%O:9/,I+G%*77#DGGVQ_@VK(1Y[.FJW&3V)]'@]B;''ETK M3U ([LV-/=H*HR[\-B=@'=WB4 AO@ORQ\99#""PTR:!SZ8=^2J_]I^,4['(4 M3FZ=.%UM&BRY;DD-,T,9]V!BT'KRP&& +-Y!PJ1R0X-/R/">"W%\PT):=D"B M5,Q/H9K&$/(+%^>PT*?MP/WT^MGY1Q2?!0Q?EB^^:O>A'X79!J+*&IH!=]A] MEH&E5&*D 'IX)9PAX1S)+\ 36Y14%KEQ=O0\VCF^JEQ^?RJSC98VJVA&3!.) M649-JR+C1,ZB%C? EOPB&%L)G[,L2:,=C?D[?VS 2Q[]??*9[AZ4=7G:>^ . M"PUM:R]+J)OC=7<=H0>_+)'3)K%,W(;?KJG[&$9!M'W]Q"0[#NPV#];MB]N7 M>UE ]FJMCGC]NY_X@_>-2RY6O#MV/+ISXE\['/FX&7*?5>A5<\^#-H@]427I M8*WQ [:]O,^MJZ].KOB!H(^^A^O MH-O[X0W\7M*?N%8..K9IK<3X) 9H>C$3RVC_,_6WCRGUED\T=K;T2T(W67#M M;U3G02>2Q T")NS5"JZ[*;]R>DZ]S$VYM?BMLHY4 5,\ M<$/6*!9M2G\RP@ OJ(VCYLFI3I(X<@93P9O?,*^X$\'>:@HM#@-6I@JC\+U7 M66@3Q?R:^3Z+]Y&EIQ8*X0K[Y+5)_'"[]/Z1)2E_Y%QA9MV^N%&KEP5D--+J MB!=E^HE_NO,7?$C%B$B#"*#7BD+^6D[>9LG86 MA?P-Z9_]]+$X*[YW IJT9]&.@8/K.X$Z2AO:( Y+E49E'!XV0!YX2G%'C32WY#IM6!G7MB)H=J2[ MI!Z-=<B5QEN#6V0!UJ;Q*.&6(WQM*$UALXUFN:"B=?>4@=1_6O$P=.@ M1QDTTG?(@Z5)TE&#).*EUQ*^.>"*S8%I0\6DQDT/5-L\G+GNR(77Z(8SXOKJ MK7%0ZA2 MX\E05UO$[MBE8>F.JH9(W;%37#/N:*@80$+=#]OHZ1N>0!._"I_,_ZA<,O_@ M[US@VO1-_@*GLQW+SM<$Y:?XW*A!ML&[,) H[A&.D592EFZB\$O[[>1Z"YP^ MU**-/*V5OL;G56U"&MF/.%PS6LNG*.KTO>9O BH,H=D5MT?VT;\KD^*P'UX? M[B6]Z2R*DE'YM*:5U=BT-I!*(R^(VZBV_7C/UX]56<\AIFLB,F,,4-I$&PV. M*,P4%]1ZC(@0!UL:OUFZI#RQ80JMXZJR,K@L<7;B!5T_=(/,8Y_Z(7$;(,8& MLI16V(F=\5L:\PUS%GZKA\ 7FU[EA2-_QYJL-O?LTV3#I.^H@6N,.&XD,FM# M&:',4,:+7(;U.S%P ;=R08@D":E$D2\0K*?]D%\0+AD!T2Q>L3C9OM<=1[9&&;SQJ#^R MI=&(/SYZ?'O1?JRC_4BW?Q:-SZRCG%J;AKU3K/DVP&HP#LT<8J9$#XLU1*:R M16&"O62"J&2 =P.#?>A"\N'VI)V*&I4W K'5ND-#Q6)F0-%@R(30$;%%2]L M&+1,10JF5G$7G!#*9S*0K%MNJ:*%F+99URVOHZ(J VN0_!L I1YV-+JHRFG/ M',;Z:&A_0<4!D,F$%_RFL&=II+0T4B*QL8%X5R&S#2/["C4WDT?Q'F2R#+V? MH_C7J_ VCER:)#AU'"C6,G6$>&K %D\*+3*2Y( MP967>DQXY0!@#">M.6O^2*VX6"#86P$=&V8J;;,%7E;A9#A\O 6X& @/LX:# M:<(?=ZR/: ,@_=X/W^\%<:O!?><\?W:857PG $2[S_;[P*?]PER3QDP"OH]% M&D-?A\ ,0*"7&@;@@/$C)4,^&2A8(D.&20P#UMC5K)'D?&S Q;W+IB)90%>; MHIYM6P:9NC5N".C04@YV15.\8=TE\% _+>A">!:4;>93E5MD'NFDT:U5Q1;H#8]1K% M/-W5C%/NAI<#;40N<'M2B35DFI_XU\DHY"F%'+9:3/E*2\R6)<+II MB^485CHG-^3RIB)>SOTDC?V'C*>JLHF[[[851VQMC3B.NK4L8TK=%'E\:0@^ M>JS),M@)N!&M().V^8S0=4?&^L2/_5S>\72S M&5-W41!<1O&S$ZNN(3>WG$=<-6C7%%E2,_RQU23LZ=$%5$E.UFY\F=3O/MOM MG/@5=JB@9.26PCC.SU5MQQW3D/K;4%1 <%_7L1,F@7@UD,TLKJ.D:Y#3(C"/ M*-6W15/P=O?&'],]=#@UU!0<Q@ M^0V]P@S\1?4.4Q5MYA'L-8V:XIDWP!^R=3%/CTI.SVK(&=((J* 88J]V>P?> M(5^Z;K;+6%Q33WP$4:TQPNKTGT?,:5NB*1X[.^./57T53H_C@M>"2-Q(Q8Y< MVX[S\:TA:^Y7F@>,MLG7-2!1,J77_A/3)?2N0H]NJD^NPI0)SU_:9ES3Y-/K M9^4#2DW-'[X5ITPD+G:@"9/ M">%]*)+_TO4"50Y)@?<'LGYD[:LV3DQ)EL!MA8AX?N*R((2*5_LHYNUK^]I, M@8AQ@+#EM<(\?DA)=GP;.2'<"H);Q 2,8K)SPE?BO+!E=;X/+F28=./;\F\E MV!/.C3 !2"5!_F$E Q%"D$^OA(M!N!PVIG2YC2E/[.DLOJSN@-L1NW4]*,VL:(W7 M.35D'NJFC/3[G#9Q2N)VDN:UAY66;,/^5' []T"KU%/G>Y' &P9#%1F>/E_P M>Q\HIAGV\AD[C%&9 @:UUJS'891F'39MUND1.DUD9AL^K&\W&+.U2;8@;FBX?$E[Q7C%@:W?&.88,LX$\_=+KB7?& MU5/^TP#DO0(KQ/W>7PIN=C+/)K*$E(SF5W9P,(9_6]J)1K?9AKPR.:6KSRS# MW$S"1U> VTML&5WU\V(F)):/550KU+8=UM*Y_'+'9LG^;VWEE@<1FFWH=]A& M$PP45&8)#UVZC 484U\,>%3U\2NLF" M:W^C*F2DV76N6'6LOQYB5?WFB%L-TH^"7@LB.!%@A0S$#-K@9^IO'_DL[8G& M4"1>K36&4^>+%SA2\,-ML1\[["BRB0QN&!AJEQZ'S4=\DT3TU,J#2_ A(F5T?\L2E)1XI*79LU+X-Q'@IW9GW)'4?ZNS 9C'>KJ1N2$^D;5-HUS)S7"8' !U_J8 DC#^N97YRF:593&4] M+H0:P[,;=$CB1@D3]M+9 KCW#_/I(O:FP,5V4HGP@J0>E/ 4E/(!K2 ',!%R/&8G'_;_. ETMF M=&/&RXF]-7"1;70:M@"EMP0M-7TL( OPGPFP&#$5"_A_'Z5VQ($2A&CZG#ZFR MR')S,\2#1XM>Y:#0T 8YV+=)/-2KPF^<24%G#!W*9ZU7&P)4K3YI_/,6I[REK1%F=@:6E8>R^XJ2'>A5B[N(-]$ZB^9Z"]XZZY($#9YKO5AUJV MOV"M;#TS'VUYU;JYZ8S\U-1+U\V>:KQXXE689#',[6]CNO.SW:68'H=;]5N^ MW5UPNF,??E/F 5+90C53_SZA1QD+P0IEF'L:U%"<-K%UMAV MN5+K:RYTQ=MNZ2TL<>!F"J#0=>2$ZLCM[($X.VO3GRL-44?NRH+?9/ M]D(.V#WA U+ 1"%6XG9DPYRU*&QC>G@=A=M4;_6B:(HSH'7TDV>%3>WP3@E; MI1U<]Y<11;1P.=2Q==VB;#PO[U2O6II;SL=##:U9FGW4^)*E>YXSIWE-QSQF M5O,62_.4:E)B8TYB6ND3)AR*@.$ELR$XBWT*=>2HFR(.H0[]REA2M$,>5%U2 MCQU=$2^X'D3P%_BF!WOZ-@)M+$-PNH>J&#O&N\[+X'152;L(9.?:SD=8ZLEV5V&2QGP(.'/B^)6I)K+F%);HZ(([ MY'3TE6.OK3W>(-22VM1^AKV7&"92LR$VC>CW1..'R**&JRR%!%:>^_I0HII] M%/H2YKFZU#OW$Q=TS0\DEZ''FR9)!L>(4*^JI23\Z53GA&6#K::&N]XDYX*( MPQ4[90)-*@$61!*!%#*0=[D47_/T;M$GEX1P4^>5OS*^VMS&?NCZ>R?H4UW) %G<6&;* M;H?G3Z?0Q(MFQC0[:7*TKN: 144X9%63K-L)1JEM$@0F\(.(S41>C #6O5BNQ8PVRQHFX=^$NAI2*W M^>=-Z3,GT,()!T8L5*:O#26$/,'M9+5.KTX4U$Z;">,,U2$6)&%M>6VB+/1( M3/^9^3$5!TAPZ"&24!/JYB+S Q H._3HI'GE'X_2'9 B#Z_D,0I@*]*!VD(O MK%D4,V[ U ]YDWWLNY1$(>%/^\*?0E]2&&+:S%9K/PLP)B5:DXHWJ9A#NA]G M3TK^I!!@TM>6[9IJK? 4*Y-"/Z2KS1GS>3^]=%P_8 -L4[D@G?8XT5Q;T]H$ M3M48\22M4^3!H0VYN0QO!6U2$+=9C:=^KMYRF;6Q(6Y'5>NFSCK!?8VU159# MN2$6[Z_6E;MQ=NTW6%N:S\DMC_54.V?5=BXNVB"QL20FH#W"5=8;^BSP>;F- M*9_N+K-MEJ2LY4?U)3VM7CC]LJ?6Y7JLNPORE5D'VDY"LF03$9 M*&7XBE"HHBH>[8N($(E\]^T"4C@^3KL(FL!"0.IP0F3EJ>7:?*]E(M38$&=D M=^M6>R[YJ!7>4:9%UL&%9@XGY=8F0G7E6B=!BJ9SIW5QVS;?K5-N8:VN'UT%9I!V_'<:*P(2<UP>EBG9E6AB89&R->"K2*;7_TE_+&- /:#H:[0Q&=; MHRA[?Z"2#7#_R8E]V$J_<]*VPHP-S7"&7)=>,J ?ML$+YDI)A[I>09 18L+ M-UFQUF5;8\/YN*!ZR7;<:AYN:&BY=N"(%A=KGY@\($3K!/>H$6X7;-9)=K]Z M"[RNIY!SJ-L!.>YR5JHD00(0]59/- [][6-:UFT'@>ZC35Q^6NK3ZLAL=L\%B9Q*HV# M[*]J#&1__/V^>,GRWJ4AF_]%#0O/MG8X0[A3,PA;92-\8TJWJ,-+< IBIM>= M76Z7L_T2)GOJ^AN?>HU+SJZVB-VO2\/2!54-D;IAI[BGNZ+QK*B"]"U_V7<5 MMDQ;U$UQ^IJ.?E(-Y<9VR.I8;91 M?$/9]!PJBKF<*_G^HXU<)IPV&"M"U\^1;H3*36<3H4?Z*2*T;#>K"#V6>JAW M7L)" /SPK[D?7C3[(_29Y4Y&"^)W-L)W<,-_I&V9(>2V]6(;; M\MK17&L\GW@^UE$5T57+><5T@]Q#G5=0)/RM>_PQ:U%Q9.D50^93IL^$.K_KLA_XNVRG]ZO![O)[5J$GA6[4O<7I7LXA# M_2NG-ID;.2_M;G3P/6(W:M*D="/Y2Z1NU"CB8#<2U+ 43KC.GXY2%@#NZ(/3 M[7IIW%5$H>R SSW[B6V\F,)U\0+:T9S-B,;=9:U&5=O68VA-6N6H43Y*=>;L MV3?I:P_#M)"87Q!WV:,KIE7]YQ7BG5H8CG@H:,E1HQMN'-#5^_A6IKH/WMC7EORTVYJ)- &0>"R(X&)GO!];=?FMQ* R MP^!;JZ,L!L1K0TS$4Y8#K420A_L@FW0M"=04$$/!,#V,+PM*GI@7!B,:9OGD M^($HOXMPZI;[A!R>G#*?Q):TR892LHGB_ J3 M&+.HMR 9?\,2LGUX>7JGJ$4X;5+35 :I:)/+B=_S&5G/5LU. )PZAE["ZP)G MCPSCZ%G$$)@I<@=>#FEH"3Q"T*1T?Q*(P6F@/4K(ZMD?.9 -U69XN3,V?B?\ ME0: K)U(T,@?O7 Y9P9Z@C5KT&7+[H1>A8WZG&=T'7UV_A'%2YMI&AK"7S\7@A<',8C%Q,L W,G.83#BPZ&TI(1-H+9C]89TA=SN5Z$2 MU D3AGU)N#A$EL ]]6N4 M[77M[-_2&9Y1W8I7>:N4']M!5 3SES!+J%=D)]2.!JHS@QZ9#[KTYA.>@RS5 ME0&D16P>@3],)>-Y08)]F0JT.#AR(Y4,:+*$IK%8;I@ # >'L6-E"-07%/*! MXY<]BRYELH!F/YR T5MSQ>9(*I@Y1U]M2"9H(T\LF,0V1YL0DK&8 MI7).=C(.)C& 6L.)Q3^N!5.+.O0JIZP6&N"=Z*B$G1XQ!7T M3GC?73& RE>*H.QY:SW.ML8XW4M/QW)\5+9$/BAVRSVXN%T4/SNQ1^ OCS!+ MI['CIKP*N"@:GCY'9 ^E*FDBACWQ*)6SA]F>'WF^R[Y^W>5'!0X;&V.:9QVP M/V#$A 4J36&@A;]XUX*/*'[Y5&37EH2$-%'(YI2B[+BH0UZ6-'_G0QE__N^O M"20UL(9EB=Q!#16A"TK?&,($)=%%39MU1V6>YI8X,41#N^:9;-EL#K/98V%-S&BO+1?9 M&4._XX"S\HAE?3G\V4EYLL4YDXD7)KR'$N-Z=^34?;$'9 \+J&_'*3IB#MH^ MXAO;"BH8$>!$.*L%XNA]REH0M/$O/Z75H?Q%Z V,_[SGK MR)>U[Q'WT&VV45\3?MR89ZQ07(,=T09RQ-/0PQ#OQ43F)H)5H!.T5L5I:8X] MLMOU;)YIU]MBCN$.B4^?67?:8VF'G,) M2*6VS3%YU'P.8:D6VD1DBNN)M?6CY>@TKZ_0,;8^3!9E,7J%IZ+37"*T3>?F M(&WJ,8LH6I>:VHK92\>/?W*"C":5ILDGAZGCTOM'2M-K M8,M&_4^O58.S_(1@S03[]/H7ZFW]<'M.$W\;\K9MZ1.C,L2-%>/;6L:9\;CA MQ:@)=!X\-#/1B)"-2,)!Q2LN'N'RD4+ !=SEDS;S"R$)2'E"LLK)@-%DS88W MM32:XP[6+CWE4%.UQ1LHG1(/=?-F;S;]/->)_MKX"+=6A_GY[/%SW-VMY^6W MAA[F5GFNZ4? >OCN*GVD\5D6QS1,ETE"TZ0Q/4BC.6Z_[=)3]EI56[P^VRGQ MX)+30)BX@C)Q.&EK;JKKG_-S3"V/G)$KCN"#]GQ/FDJ7D_]K[?RGYCZX?5)+ MX^8-IX8.>'U53^S3MYO8$JQ:FV%*FAI#;33I4X62 HPZ;5$VFTMLUO5J#D?1 M9@X1>""I@>1$3M%:(L-X>CD->MD(*7C3F-^37&TN_9 M;'PGN(U$I9^+EY2& MB?\0T(LPV]&X*;/=(-E9A>Q@N[6$>&^:LX&$X9J9@A">!"ED@$L,I12D$(/\ M4@E")$FL+.B7D>M?1TERYB2/ET'T#)O-]"S;90%7Z4?'#^'KY8:-TFOG1?$C M]*>".P0'6D6.N)XD\ ;84$4&E[)9G5TM"' CP(YP?NR#DB,!EN0=,/UZ01S@ M2QAC*W/CJ8TC66'+:"]X/3NX*N6\$ 8( 753ZL%M+,=U15.X&"5V9:+=/J:/ M #Q/O(ICM*/D70!6M $\\J%US7J%S=;1)WI'W8#-7_@]+?$(X@U]23]^]SD* MT\?DAJKR'8T1QPU39FTHHY<9RGA!S;!^9A:_!Y@GXQS+$49"(? MOR-"J@54!;4"A4A,FE="BV5+0=00&%?@7FA470ZE+WL&AY1?*V6F#L&2Z3,- M&#[NN$!6BJC!<,*X,]O0T'T]=W;.EB9+N'9+/;[YHO@!M#KB!C1]W6OUSSI[ MX06B'K(/KWN8)$3BL2 Y%Y*S68B=1CMER\;77] DCJ!I92?$3UPVT/"FX.5M]OB#KY7]?W!]6 M)9C$72\V&[:.8*N$*[Y(8.L6/J;S*,U8H*[V^8Z%:I>\%P';<[JA<4R]LV@',V>1I!?'<-D2]CM_9O/HJ]#SGWPO+]C&PW%%8+%6'GM.!"9#9$4E,4G:HD7)!25<)U?2_* M3Q7:$B?T2%U?4BC,<^BYSL"ZHLG[P%>02J\4RF*._12NH/S16Y+Y,F3+&08+.X4L4\[H-#: M[8U"'JX<&)FKEFLF*59I)=_F:C9[Z^V/41G. [O&LW43*)GGAA]M1M1Y$AAI M1)%.$!E^D491/A>>&%K3>'<5PNX$6[??,N75!73;F^.,35T]RR*Z+6V1E]'5 MD7RZ\_C&A #AAQ=YO M,>FZY'H.MUPFM\')4X0I]FXP7,29S2]3^T$ UX>DTB@F63<9C$"KS<4_F9I0 M_M$) JY7TQC6UA@G$NKI6$ZOE"V13ZZZY1Y<$Y!3AFD_!=J\>&=!?-H)U.@Z MKBX)ITUDXM,_Q67GMS3Y<'?RR!&R<<;[$TT@/>F6/Q/1I'Z_[HA19X =I%>^ MM?LB1Z8AF@SU[S5;[#T)BOD[)/S)09ZKEI M&]LA@;]Z<=!ELN5S%AQKQ"F- M!;S>&%2,'N;\EF(K,%UQ:;:$)L M X59 VV;/D:6)47V?TS%-:E\[VUF$#N*F72 MF;+G#,VN$7L0S-*Y#O>01@A MZ4[-!">FCVM3 \EL"@YX-QY'TM-2DECC]N)<,KB.;3I%?M8@KKC182*K#S[# MZ,\2+WY,I?C@9/Y_9G[ZFL^KYIP")13A>LAJ'.>() -3GHPRP T0YFU9NW]D MC#K>L!]!1RP1;CP_Z>*%NIFH,%_Q:<]1ZNZ",\#ZZ%ONL'2T1[Z?HBO].#E+ MM.#.*\V43CS]?LG89BCIUZ-U%ME+Q].>:Y.Y2>WD<0+%6'8T.">_?F-90SH: M3I@3U+Q4OYY3ML^8%ATSEZ?#>I'#BD@G['!\= M]:.#?,)SJE:GG-J'969*XY&K= * 9F)DRUS2<5++W&E!JF0?P7]!<@DL'BM- M;*H;$UXU)3QSQ>'%[;(T/&NQB\+[-')_'6;9+I*SAFLM>_6 [59ZLX=O/>U. M@7$>7_P9=[*!-Q>>^)L+;'5+$IA2022ZG"5)@">/S"#@.5LL""%=/ OS/[(0 MLL0;,VYF- 2,:W+=H8!+04 ,Z2D,GG, /P67!>.@,*[Q?K3MJ_;F_9"\ :6- MUQ'DO)D8L8\HSGI8T;'6X,5 G=SL!Q4MY8PN#6C. [9*(0!G/TB,:L+ARX4+ MR MSI]R8'];.&[,:,,1O! !/W(;,];-L7?)L_/1L/KD@\=EP.E2KSI\Z+[9T;LS M3M >9H/:^T!:/?$>^/64?W 6[O'97+WNCXV;!S9L0(0-:I%/&W7'EW6@#PL& MR.(&#%-V&YQ=,"N0,:;9A-D$UN]%H3'>ES"F;K0-_=\0 ==_T]KRGQK:):,BR$M>X@,"W"P&^.B&J/1U M\QLW\TQW(^T[H[SLLO< OQ8\!$BFS/!%M'F-%_Q M*0#3,.#(15]2MGR$R8JU:*[K>NT[#W[@IZ]G&5MQAZI7'3L[X8YE/9WE4&[O M@3>2->4>[LX' 5QR@'?N.0\K83RRVCD=$I7JBW . V2GRQ4<9QZ"%@O8ZRTD8@/V=XZ&]'?2#1ISU7R!F@X8C@M""E M/'!N74I$"I'(+Y50Y"+,=OF+F%9VRQ26[?<[S#7Z>@33[&)C1%GL,$C#O'6B,Z/M'X(1HTR3A9RULF+P"2R(IGL&1BTQ8DH6AJ6"8>JAL@3"CO%'NJ&RUV4B6%Q RR.)KLN<)DV#W T73GA MP^T(PFE/G\ WLI:-OZ,Y1/G)B7TX3]0$E?;FB'%%0\\26EK:(D<7'&/@W")73KGW6WV/$WB4FM1/'?(O\2Z#CD4\Z0A\ MP>/'RDK'G"9\;6-_5^%GZF\?4^HMV0+(V3:<9G[46@UID<$=9$/MHMZ@Z*:! M-V0':V)L2Z/@27*F>-( +-J&#ZD)>2YLX^2VB4O;B$&7U^U_]TJ=./GZS^A0 MYMQ/7)@+WCDIO:6QJWOPJ$5FQBC38A=ME&F@,5.4:=-D/)0IN!)@NR Y8WPX M,ZYU5#CC%=9A[2QFP2NV8HL2@@*#/;CS>,D$=H*_,2!4SNA.((@;:TZW55=V MDQXUO/AC0"?C.5'2J64:D0=*;AW?*Y(@/7'A5LA!0! T:5,3V:UF!X 'M"AT MGM$;^I*NGVGP1#]'8?K8?L%A$+DW@$ M=NJ-/PVT9HX^;1I-A3T0N&05VKD- M:,U*+.K_B!EE[*,@B)[YQ>O\QI?T[0=R\>(&F4<3 MXC/>L;_CE7ZD8?E]\2%408OI/HI!9/"VDGXB7T?9E-=1 M]L5U%%XS_1W[A0*0RMGOX\AQ'[^>-D7.SD^O,R84S!?DO/Q=[8P-%@VU?J0Q MY;ICGE&>.):B'3:&VF'(S''^,\:)9XJ6<@0GLH6X'K7)THR-+[6A#TV=D%+O M+]*HS<91UE0,[4-LV$)KQAC192%MP% 1FBEZ=*HS)I3(S(G@3@1[H]#R@[!1 M2+=0E'[QBQ46<@P+9-5*II(:XX:,=AW568%% M2[Q!WR&OL0R_V^8AT8A^O6\-CZ FU-DG&[9N30,KC9?$KID M6)6N'N"]=>I=A0R2'J&([V44]RMMYQ#:0Z-Y]I%X6T-7FC@8P ML[IUXO1U'3MAXKBPOY9\>JU]TU),>R@MW.ASDH5DW!E$""_BG*;.X/&JG](J^RM;$CGO#D=DHP, M#HH]T9<-'MSAJ@!FZ_6OBRZYZR0-/*GKA\6?YV+AJ&8W#\K;"0^*>?3=V6?Y MU8IY0"^&)K)A\YYA:T=7&5%-TD@L6W^[A$ MJ30:.-J%K $^TA%65DBQ$^MHI.#O?Z6^ZKD/9=,,61/2 H:O,;276DCD&D<] M&+B&1184MPP _&E[PFVT6M$USY1TN6HDP])NO)#U;^ U06.':9Z]C.=Y1 9B!RQZKNI"D+PUW"GF[(K*\L\@-SA"TN;W[R M\]YNM"#,QF#&1KFN+P6/RA:^^C*UIY8G/M CU1R1AMN2GKIC50==T251L8]/ M3T9>;BET//-V5D)RW5%2SKN4?EZ5%DE&WW->T'Z#.K7+Z,A(T^<8A6#2U0VS M.F(8EX!'84>__2>UG5I.Y:@[E]M9P2AU]:5A<]: [C9AZJVY5)5>6)F-F19 MKE:L2M)*JNZ9>^F@14CF-$5J0-*VYJ\_@!\2*1)?)$2"D&)[IZIL $1F_I!( M(!.9?_FO]ZW=>070LUSGKS_=?KSYJ0.?N3?>N M<_?G&_3?U\[L>]+N.YK:VF(UM"WGCS_C_WE&W^L@$AWOS^^>]=>?7GQ_]^>? M?WY[>_OX=O?1A1O4_>;VY[]_'R]6+V!K?+ <%?BI@]K_V0M_.'97AA_R M)]7]_1G:R0!W/Q^^16R!__4A:?8!_^C#;??#W>W'=\_\*9XB_C7'1Y+F[[GV M,4VW]_?W/X>_/31% UF4H0]D_^T_.IV_0-<&<[#NA$/\V=_OP%]_\JSMSL:? M#G_V L'ZKS^M3(A)Z=[=W-_=8$+^SV,,C^3/OF,.'=_R]R-G[<)MR,:?.GC\ M'_-19CXK P_VXMH8>M['E;O]&3?[F6_$D$HNUOUM/U M= =@"$P/H77@;G<0O* .UBL8(=VZ!3)Y(_;=-G+K;+"J, D5^3@PO) M@1.@/U8NXG )JY$Z4A,4C1PT#]^%%="6&:()&KZYKOF&#GAHBYRBU0Q'#CHT M;*QG&_0]3]C@%1FW"6H?P;-?EJ*H;Q.S1K;+UO)#31Q:,J%*0D?Z"KBC#MG, M6L(FV=)XK[*64D,T)*<=VD5#FW.&CC=5I',Z4!/TC $:L#012>]F]AH;6S#( M1O'W2X@8:*PJ[9[D\1JQ>\ FO#XQ?*.TE9,>0CG;[:PV7+.V''5J2P/MC^>A M.AFZ:?NU&HE%(ZEARU:CBSQ>PW9M-;(*!E+1QJU&)._H3=F[U:A+C]"<#5*- MANP8#>_8%75\?B#E=K&^:88JS+!3_IQ'X!N6?9Z]C?Y!]?@3J@6D+L:6\6S9 M:.K ^XX@BOJ9??_)L."OAAV J8.V@P!"U//!\"SOK!RL."7E>!P:Z6L O>DZ MHFT*4Z2=DY6<7U:.8^@G, #F;P9$!."I(C3$QYZ!Z_GGA1_OMY7CVF_ VKR@ M:?9? 30V(+PF]Z:!CUWOF!>(D GPHYN)L>MY,P##-N?D9N4Y-7U&6 3;K0'W M<\,T8$5&,8=MFM99 %U\L,_9:(C$=%*]L5I3Y:M.<.K6K9?.$ M/G[3U,?@'>R18+95U0?'P$W3RX=0^>PH]]VFN76*7?E\87U!C5L8M*\M#'0J M>M@/7@S' ?A0_@VX&VCL7O85N5'V:VIP!FWW=F BR\JV43,?6L\!_G$X?^F, MX?J8&GS!KB]HK'QYIP.Q;ZC!A7,'41[^HNZ($7\KHK<.H>NK?9- M);FT=:%O_3N-SG+.R=H8],_:12AV[SF8)X%86)\I^ MLBD>H5_=#B! "N')6&%SM.K!B#%H4W0.#,@"2)Q(.L#_[2Z>$4^H@0?AN]@%>"IG?Y&-B_8'VHN M/N:HGN)';\ZFR*5?D27EOM4<5["@7"=ZP!3^)#;;I;"!.7AS=)\X@.=@:Z S MBK,)?XN7,Y(4[H/]QG@7E\*/TA]MCD]/@8_^_AU-/15-W"'&4QM*5R*.2GU3IG4'EJW/&L W',(;W M(U5#6$C#-4Q;N)>EX#8]+LI8PWL/^Z2]-!:4^JHHIW;HV(97%?[ &/TN9@^> M%=_,^?)VI.0 WGV ])IY^*GEXV_=W-S&BX@?W7GTY^]_,9IY'P:HE&/)G%Z:]__WSW]:YWT^OVOO8^][[T M;N^_'.>6QD,?9N=IP%4R-/IK#B)9WL[$7W(Y M)^Q"M#?^]:?;GSJ!A^;A[J*[['JX_#\!4L, VOLYV+GP5.R4EJWB/<_<8S%T M^:Q".\:64FA*6-%-AQC*9TV;948N"8?2^)3K9*(-M8GRP:38/L,8($$3INT M@O-/'#6&,)5U/ M$=JW2#PB%,2"^=J 8/HF.A-Z7OP'.CV"6Z)0"MJV2""\LX^%<=^<, ;HKU.X M=-\6:IPCAIWCZ)\!"0B*7>,WMF MFC/7\PW[_UD[ZC9?U+A](F%//Q%(_O1^3H'@Q=N'P""((/WK5C"=.>&$S?6> ML'$Z:WOVXCKD<]UIDU:PFVO2"B<5^^^S:!?S._+X5S&;/..%TO>?F! 3#]U7X6H-P:U'4K!5\ MYYYXPOXFSL*# &+BHCM$C!+$M\ C&C+%S5LA#F$"$K$T<1(.XU^Q0_X58,]M M/&O*-5)1\RQ5][WN[:VJ8A$@(!%+$V=B?/D+!^A@LG'AGGJO?6C5(B&PYYTX MYYHX!R^VAFT_!)[EH*,(D?>95BWB/7O>">^;..P.MP!ND+;\!MTW_R5^C4.4 M06'K%LF"?_Z)3.H][\:S?#^Z ".?+%D@N:9MD@;?Y!-1U'LFCA?O"[!MUJI( M-VH1^YG33AC?A),9/Q7!_B9W]4^28 MX/V_ 7F1G+1KDS@X9IY(H-YS=FQ,/UG>RK#_ 0Q(CDXB-6V%'(0FGXBBWC-W M$KQSG.,3^DF1-4MHF:'E\TWO]E[!D[;(W!,YU'O(SLXPLBKX))%JVT)9L&:? M2*/>LW4?3= ,)VD;1=MVYO>MX#I[QDF,).$D_9>?3^/HI037B]6*3#&/&&-_ M>X-C[ _CHK\/II/'X60Q?,1_6TS'H\?^$OWCH3_N3P;#SN*7X7"Y^*F&4/NU MX3V'XP7>AXUA["+T =OWDI\<81C_X/<#(=/UD^4@;EAHT;C1X8,0DR_6M?PZ M*D-._&:2/O%L(U765QF)X.4G0!4QXE\LU-P'T -CJ?'FY64=&T%<(C]IJYKD M.21($CL/97I)'[]AQ/^/ZR:^&C:(DBT0U 0GI M)EF.W/;0>*V5/),NXFNG5DIZ!L'.L,SX/3!]\1>VU4GV_ 02'UJU$@3A6_D, MXP@(R#?42?R"ANKR,D!"C5:R>):4^5PN!"1;Z]KJC@I%2O>\=T42LZ'@I: M:H<$7AKUNF[DWB@N8(<0VQHJ7R(JKDM4W2S;4W-@<"B5*^(.$KQ4=+#&7(/S9$A M2KE>7M EV.*$]W#/Y2,CM-8<(2)4RW*I*HF.@0'A'A([_[[O0^LY\/&] M_]*=&13[0W@+9/4C2#BQV$(K89+*#Q66 MDJ>8+^EFJD%"4(;%5@J30+TT1-\TK8B F6&9(V=@["S?( 5A$EIK!P01.O6Z M)>VO5L$V",O]AL=ZG,X/@A?@>-8KB/R*8]?#5T#3]=)X)WM<14;)\O43TM%? M6XX?"?0K=8-:&5=S7"38 >;0@+@*NY?BT"-86RN+9)&P.VJ'GI(DZW7]FNJB\[]+\"W5D<3EYFU MKE=/EYG%[O?Z#5C;=M^PR)]<^.@&S_XZL/,I>1@!@R)CJ*90 M>,528+56)ENSLW':[D(4($YB>M#?;1!RTS'[6UP;YM_ASXG9 -B'I$K#:P3 M4]$S1'.'KJ@Y2RQ.H5$I4K2<0T02@]M 2'B.FA M2214CGJJV4%HK3$8V.:&?@$IO*8&=XTSO2#!:6)4O]JG J.1J_W#;[WI.GZD MA'X;AA?GO.V @'MC8>6AN+:KV,@CE - C$!9MH!BMN#Q]05+_,>6J@&@ MC/W'H$:OV/&)Z[A9PF.H,TX S'XM1D(YVO1R48\<-!%DSM!-_Y-6JLF\G"#S M@. ALZI1?Q^)WP$;;' T#X#P-1Z1@:0=@=I)5WB4H%JI(\#Y-A'1S4-7A)0" MAR9WBT=S*O&F6$Z ^'!T1#Z M0M!*A7S\!TQ%W'!<@RX'Z$-.TR4AOTP;GCI MDNACJN_M+%]4#: "5DW=7)$5A:42BA%7XH7[ !Q ]H$06F?Y]*77_=QK%WKX M**H::J6:*30!/O,LG&G38CFSZ9 5/Z7&NDXR!R0!I8QC+ZEYBR4N1%(]05*- M2?_!\*P5I^C#MJK)74B8;"R0:=3+AW5*]Z-E!SXQG);06G,LT*C4ZSC[&\"E MJ('9?T66\09,@NTS@--U+HR4L5>(#J,:?@3V$"FD)BI%$YW"RQ/:GB,TAFKX MD0**\EB[E+V+P(]87?,^"A ^#,+="[N18YE#>]LG\Q!6VI;FDE]^?Q*XGM/]8 M&R=*CKC:+Z'A>$@(,6OPO^R(4>8_ R\LA)3(:X83VJ%?\!=ZJ74.EX?\^MBH MUW,KGDSW\L#..>KEP;<*8_2* J?P6ORPKR^01(FNI8JC\AE%RN02[_+F$A=. M+]*6=.-2THW\7OOUH:0+B;-?#>66['VO>ZMD+.?OY$K"YV/#]<[G7'"\>" * M0E 3OYG($>KTT'3VHZ_8![6$ZYG84LN[\,8MP&2=>YS6W5VYY'&#_N*7SM-X M^MM"5:,ME:[PP!/^VC %76IW[N,YS*#[:B&Y/>Q_(*&/G,/+Z/[*MUZCBDF, MU\'" ZFF5'@D>1(J((-BO>RN*'\6)5+DV$ U^4N29QXH#)+U L!Q[_26+C+\ M7&=EV2 35K-TY:B<')8II>T(B=ZR!(Z<5\1E%Y[6C*4UO:)% MG#UZY8M[C.><2AT0A;D,T \MHCIB=;L"JQJK] J:2!ZD@M#'"!R/9EX5-\YP MZA6((T=A9GW_9">VP A7V$GCFFYIDD+7:@%;$__) MP:5"\UCS]+]B4!+/]"J%A[@- ;)H'T'T9XJ_ V-G^8;-#J+C'."*0%E,TRRA M5)X;B2&"I *L5QPPPHV^?%?5<%=1^#QHXF2";NF7\XQ(+A0M8CD&:I\+A Z+ M>MU>BN8Y,(-@9UAFQ93Q;=FAZ".^,'&->("*K*&*+-'K MH3N!&=CZ\&1$S5(&RG+W%G&WV7Q*DJ)F12E6*LZBNJ/ V,C/&/<#D@J\@3S=78 M0^!9#D#GH2CI I9!_!M2HFV1(2X'9569(O?ZZ&)!59(E>%5$) MS#@$ UME6FO&CHD29MN6;$Y MH->;CSG8Q3O^=,V#%F+[BT&+& =T\P*EJ7\$SSPPP1X 42L 3,(ME:P/3"JZ"4/5\2[(??Z@2'1 0O$< MV.&LW*7Q_IOEO\3)AYY<*/3*J^QP%P,[J0RJ^FI"-6V6V?D]+\ +%)T4W.W6 M=1:^N_J#XSA>V.]RX%6*$U7?/=1A-\U21X3XY6U,7_CRO]"FIG?1'A2EF5#U M%8)R>N7( POSUC&)[_OR+;6'B2CME1\(*&D(\;.ULBOA8A!5D272RL^JX;0: MKM=@Y4_7P_?5B^%LP!RA?^I@!N'_QX$(KX8=V8:(R]8*K8W0<^R8V1^D6HZ< ME1U@N_'1\G:N9]C?H!OLDBPXCF\Y 3"/V> )R&U^8EGQWR'Q?VF54TU1#BIU M'U:])$85=LX FKB9C\R.F9P67"1,PEJI=Q)M7Q<*<$NSLC!5&'H.2%\T0FF MJUIB9A>B'Y$#_2OL>#C?; WKIG%W*RV'2@2\H:/ N7T1['9VR%7#3K@Z1QY^O==@U6A4RE+OYDO'1,4O'-#,M$IT_R\\63ALJ!H()0\Q#AI%>O M**V1@R:"-"@+"IE66;Y\ZG6[S5[-R,8!FUB]GCQ,7&>%V':,DG;,P^W3"*E9 M9GPP;W_E@",:%ER)4+W2%L6OOL.\ :;E!TAZ2(/BI&+F0^!/7/\?(%Q"1,.6 MK[MJD*D&@2(3MP(?:MF+&B_3%/KZ\0!HFMB^]P]9OAGUFCZ5J]>T^*4_'_XR M'3\.YXO_VQG^SX_1\A\_J5^Y*?1<9]C$7\*)UK?FTTPRJ24EYU2VD6HJ0D@F MF4,*FRQ)*]Z.%GM#HHTX@0-W7 S\7D6T6=]]$-DTX76S#C)S8VJ&*GMHGRZ%>K_OI MOO4P$"=8TO&S&4BL5L$V".,Z245-Z?#@[:\E5"H1+^DY:B.PF0/?L!Q@#@WH MX(,$%2/%C74$A "EDN(<&I'^"8<>W2VBFA2H4]161]GS$RK)O=_LJ6&, ML+"."H>&R@J]U/F 3E:;38)\]$K^W#QW;?O)A6\&)-TH"HZB+#CH(YTHK8X;:@:(&3(M4B=<-$M"1!JQ><I$^8 ,=BS?+ \-5:@6@!X9I< M&R<<)53.1)?->3^;E=WGQBMJGP>JC7!1KYJB-,.B.&7(-T@VZ4N.=AEHEO&CLB?)%LUJB)5:D/,UWT< 39HRT MW"%J((\4$D.N>-YWS/!?=H2)@P$>5J18&N\S%X:_\'UH/0<^=MLNW5DH=0)F M:YW#9:"]>98FZZ2J4T.92R(22_%%_B/2):^(<:]@^(ZS2$1Z) PQ.95O?XU6 M?NK8BOF.N%MF?4C\\F6OBG,S,ED+FA2UD!8PH"O...E.8%'5,Z-08H6SQ@OH M"A=A#B3 J>J 80-'P8>,D9Y] ;ZUPA2GI4YYU=B3]:JQ\Z?,!/[S8E\Y_MZD MH/]#BN(X)M8@HV^3T=-HT)\L M._W!8/ICLAQ-OG5F2'\,1L.%JKH@SP*& J!UJ-G6I ERB63W8)/3M_-U5FW= MLZ65L37+T]CF5 C'91D60/6L3!Y:QLKNYE=V?X!V]\5H.4+6@*K+^"&N_HJT M^[/E1.E9&0N9WJ7>I5PPEZ,(6$N9K[-J2YE'8NG%7(%*/1;S'+P")P"I, S. M)7V77]+SX:_#R8\A^G,P1=LV7MJJKNR8;%Q< QV$0GC@VBV#P//=+8",1<[= MN^[GI]1IL58\;_?L:OC:Z]XUN^8%99E]F5J!9#T4 $X2Y2 L\IOIG_(K?S1! M*W\YG2MLDB=T[E.&#'V54WO4_?@P-Q76:J9U46T%<\@F^YA0D#0]5NHWUS7? M+-ON.U%>A1$:U=E8SS;H>Q[P>9=O+[]\OTVGC[^-QN-.?_+8F2Y_&<[1BE[V M)]]&#^-AI[]8#)?*KNL45TX9PKW2!<>H=^US38ZE#<0&44T_E))Q6F-((%\/ M'9(N6LW0$Y_S>N)Q^+!450]@RK@7/*EQS:]@,K-@+6%":]76*ET.F5_(AQ.5+\@IG.!> MQ()CU.\Z8TZ.M>3%!LDNG/M>]Z;90AJE9'SJ5*M(OAYZ(Y7UGU-/?"TZHR-- M,>PL^W]75RT<"!4XI%-Z-%2T0N203NZBVG+FD$UAI8J:EVKCGO!T0/O,-KA] M9/>%6_ML.%GT\4UZ9S;NJ^LIRS[T#',_AD6)V5LXHYN,@M,YB9"6):.U:BN2 ME^F'"M*"I.FQ>8YQW"#G(KR]R2_"\;"_4'?'C*AC++/31O7NBV/@>0#$!4Z= M3309ULY([Z3:2BR60GH[+$&/'LLO5DPS _KIUR^\"[(@)FP^'(>AH[/^?/F/ MSG*.ML7^0.DX$A(/F&YF5K>Z_93X99]W(U M#,_RINN3*>VC_V7&AG)U5FWIT]F?7_X5J-2K_NKQJ1B^-^!""*U+ MVW$A3)M2A5@)=V0+L'(=TX#[Z1I-Z0!VZDT9JT];!5V>.$FIA,\JZ>$6P VB MYQMTW_P7?"5H. R]S]VOU1(O3:!>^7Y_>&"Z'GJ^M45G5U*^MVRCMHI=@!I) M&7@5D?&38<$P ]AW8&!['!]S1 Q [OY97M[V;N_;A8QJA%;-W*L6:!B/)?B0 M(S9(V^$C@5K=/%1+IEHO5I.T+$B=,K#VU2$S!) MEL"G11B]V@Z*,N3IE19V MY23(.N@_ZZBE+4B-@IHL.T'3A2Z*TGU6NS]]=A M<4.^V^N[F]N;.^';Z^@#%W%WW:W=B%B] #.PT9GM8)Y';WGZCCFVC&?+MGPT MP=AD-Z?.'*P"B.]PPBO=4#1,UY;,;[1(K70+C92S,Z.FX,\&('IBV"7LV@NB MD&\8?8!6@5ZEKMLE(NG4*L1K:X56X*-E!SXP!0$E-)H^N*I.=BUW_+4F<1(R MAKIY8RB=RDEYRT=R3J??/S6G$))YI67YL$_]*Q0%4Q/P#9-="]W&50!+*#0E M4(%BN46HF\D'EB*T_VZ17#R$UJKA0(I4"X(_!*C7#1/XKQ" 1W=K6*2R)\Q^ MJN%$1*!\<&"3VR P",[_N6$:< P,G#\&)ZKUT(06'^%'^SO8/@-X(FR>+FV0 M,UM2)Z$ 96A63]B#/3JI;].F'EG*I+9:BE>(6$G'256T.SHV@)$/M@+;_J&+ M:F"H;^^GL^ ,-P[JGBFX;QCXAU(-5\( J';8H+)!KU#B(UOBC+/_!N;(1.*P MUA8PXTOE2)^;V0.+//P MF[_CVD]=4@@XGN1\1VOTGI-'>ESTYA-\"UWWWN6O>PO2?"M_ZUM+ON_Z7W$A MN1B;#02;$"A8F8<3Y=HDN?JJICP$))%7&^4IUN-%9RK5MY .^)37 :F$W\JO M?:F9O^M?X\?-[C"MJ)JL+V@+T[MG<7_7Z]XVG6Z,*@.:45""4#T6."M#N-"J M[^57/4^><.750>T)PYM4&MW*M]^6]WBXY#(7M, ML"8?D![VWXU_NG!@&QX])O(\']$(5S4R2*]+%=KQ?8N3KOP[1,#P':C1UZW(K@W/-"UM#GO#6$JR$H;^U(*(O0I/URD!._ 9/OHMJR)K.9 M9JIPTJ6KO^B[X0 MM+,!)!1_;OA@\6;LA,Q91NJ[MF]!: MM5699VI^=Q8A12]3KB@#^N%97VRJ\+V*+#%2.Z$BA\QVV7*+8+>SPPW)L >& M]_)DNV\C9^W";;K.Q=)-Z71.0Z_*R&W"S[G)UN,&*)657,@P*'C_F,Y-KKQY M("E)>9.70J=S2J'Y81__DO]&0&@TU?0 33RTJX'J1.OA,:F;IA51E6+/ M(_ -R^;3%I]N"LJ7L%+'?.@+A/;JR8R M#A$4R$V(NC:_3D[1-S&VZ*^I*CK4Y\GLCLHA04BH!: H1[%ZKU9SB=?)CU8) M3943;3G1G)[H!(AM\YJ?O@+8MVTW+/P\W1&?+3/;:P>#/A$A%QD M2)2F5:FE7QTQ(<41)V;06H$D\3,))*3VFN!"B#REE =A%YA!=P6 Z>&4$)@N MM$N"Z1J=E+:N$]VU@<)]@:=?NV5>C4RE L KJX&9L0]MIOC^->$$#L0D;1>T M+NT&1FD*]8@&I\=\4.J:]/UC[/Q)B1/1J)!NB:B0<&8=PS$[]G%NG6T\N8[A M=]9H>IU7/+^.ZW2,#DSFV'G&D[RL")+:$_.+UL9!#2:N _.E<@BT2AM?%>W% M)\2\WCHO(]I\?WK@S,,^5;#V"8)_!BW0DEEKH4X6WJ4. MO93%2*,[%)T];8[YF.''"TB:QW/9X2_'PQ55\PB,H"RX!(1=< =0D0%MUD$# M \(]6F?1*QATOM_B8X@HA 1'R7+Q2^/>IZH R$-*!D/:#*LDTT*J6JXHID2& MT!]0E;G1YCTNI>8/?_W% A )Y&4_!J_ YK.7*)U50U"#9I,HER1Y2=0YL.49 M('S*)XZA+,[$Y>B58Y)>L<]$'H@"2S5 E1.N M $B: T>ST8_A:V-$BS==1[R9PM12%0URS"?*8P8Y'B;0<=<=(XIX=&$FX/&B M@ACOY03)4S7P@>H M5FKBQ 7H(?03& #S-P,BAH55IQTS?CD?1J>+:J)/)<*MHRETW@YS"$.O832+ MS@I/X[)TT>>Z[9?O[FNX(D;.PC=PZB-<3FL82WD&73-8^3%$<$X$B!/8/H+H MS[EKVT\N1-(S"91*&KU%RNISD0UT3C;H94Z?,"-4$)B8XL"BPL:J@>6+GB23D[*)7K[X!_1Q^NK)>H4>,*R8NKD ;O;X=V(:5NW@J-\AE DDBKZJ& MA-Q' '-P,?&XK8+*Z6A 14]^A935:>?+Q)P$'FGVE/8LVV"S%?E4@%(Q4R3Y M;J.-<.CD-557B0/?;\#:O.!8T5< C0V(TA1, ]_#XHBOA $2#QH7C%W/2](6 MB!X$>^('P61J'2.:6\<+)]=QC[,+3X8.\#M6.,'.G]#PWG]V$-.CQI=U3OQ2 M>\"M 1V,N@04[7U/U5/>E\(0VO)4GN$05R\\ M,HJC_XK685CCQDTEPX,!#DC!W.J M84TF/"J#[YR@0P;"LZL"[$[,J23[7]ZLHNLZT6%4 YY4)2>%&4IEU*H-9C3= M)C2&:@"3@HGR4+MPA?9HV0'Z69[;YC\#+RR.4$:_\8]ZR6BLR"6]]&!X)117 MV(RLCI M?=^'UG/@1_9(^#.T8G'R]S#O6A]?_VRBUR3$".:J [<"HQ7!E(?L MF?BFU]F$H"Y(PA#;OTFCM */9]O!A;A2U6UP<%'E?9^U8^W4$A>\E%-UQY5Z MP! B6B^?TBGIM -#85O5@5$1"F$,0*S'2]U?_2NPO+#\MK<(MEL#[N>&:4 Q1W,W7_:[/_B?'Z/%:#F:3K!7 M.1X;_2T<7GT/\4/@60[P< VR9\L). MG(+93S6(ZBX_PHTTN2,KHT@8YLR5U ME'AIFC73 F-&@@E:%]4P4=\>06?!N4X3%95"@2F5(BG]7K&_V<#PI4"1HB@Q MC&I $9;HB=Z0Q0*];L/XN<)_ ",,H!&@)!&OUU5: 3]G *ZP5#=(O?_JXDNC M)(V4%V_\I'O7&DE; +>-^AZK,*.I&ZJXJ>J\/.P*L4)O6RL@>&])(H9.SQ2 MBY0 'TJ/++]N>[?WS;Z0/1]R1)F@W7-K\LJ9 '^Z3O-'7 WEAK@<8%7FBBQ# MRO4-N[GL2.E[EED 5R^&!\)ZW1DV]QWSD$&JE)W)S"H87>ZKJWHRF\>!%*F6]&1JBHDS M>#*;QXF(0"M[,IL'1D.>3#7ES)94%4]F\\)6VY/9/";JVR/H+&C:DWD.XQD_ M>M@XUK^!.3*1&*RUA3D8I[^-CVK?7-=\LVP[FPX7M0FV &?V$;>_97Y5-;0* MPXKKQOCL'-/K9O!ZQ5,[@,YW':0))DL*I5 8<:;,J"4:!5BON*= +('T3U_7 M@$157IWS>H9 R&#CR'E%[5VXKV&Q'+YU71WG7AUT5FL?HB%'J\P@V!F6.7S? M <<#J/T4GZ&CW]6]M]#FDI5Q%\GX\W4Y*20*O6)5SL;7D(UUKZOPH]<%5.L" M(O-<4A%$#5?*#+H[ /W]S,99IQUSB-KN\(&RA@5#_/9UW9Q[W8BQ/EX^GZ_+ M)V\/^X:SL0Z-0Q6T?#&<1/:U''\8<[@NI_,?B\J((%Y67_185@S$7\%( R,/ M3K[J@1.9ZZZV,_/U0%R/(F6?=N_/&K;:RE40'X+2OXC2''DS8T\);ZQU#M>U M4]-96% $B?OOYKJ[G#+T,:9_:;RG?EG#8BK^\'4%G7L%"? ]639JN,WYTR^4 MWYFC:L_DA5##%Z\K@".PZFR6 VT?P7,>M*G,. MUU5T[GVDG B2=75UG^<86J_Y152 =TA07ZYKI59F)ZNBLI>[U>=^E@#KC0J_ MKHH: \JIJZ*R1UN=1]RG/I12S[7O&,^UCQ_I1%^YW$?9=W6KOB?+L7PPME[S M_K+##N'-#.@?GR"E)DY[IRUAY.PJP\4"[E53:1G1Y=7/N9B@V9N]JJ^YFX?& MN01-WM%X&*(;3,[PP+MYZ(@(E \.;'(O[X&WFG)F2^KD:K$,S6W6 A2]^K#_ M;OS3A0/;0#PE;R "(ZB&F/HVE:I,DO3F2C6('2F?&%OZMB,X2HN@Q@4 (4AQ M,Z3-FFL0>+Z[!3!,V8Q/"B_6SBOL)31,L#7@'PR=/7KF54G=QF4R5O?M\+OHQXDO&.< 6/EA M(.HC,(.5'S*25JU9ZCNDIX2XA"26O/J10W.8[)>F>=15P($6JI=SHVF)"NAM=!9R( M"+2B&UT%8!#/Q_QNX!HL[:P8Q"8S0 M/G-P,\6=-0-:52[HE3"WAN+.*N&GJO#SL"K%";ULK+,5=_YR<]OKWBKW+%02 M'YX4B, AJNO M:L@1%G$>)>7IUNMBK< VUZL*N"9X;8)C>OE6KW>!M0/H?/>&EZU]VU@%_+H& M&N>\7OI<)AL;KP+^Y::+9-2]KHX:6:U]+,_E5@&_+B?U1*%74-/9^*I&%?#K M FJ0Y]>SJG#A%FX>,J(,:#,\:BW\K2]DRK.BS5N6A,+?&D."A^IKX>]253L51XUD MJ[@REZZ%O_DK7JL KJ5125VCM*?RM M*63/SR\]"G_/P2MP A!'+N#Q)L!?&#;P'O:#%\-Q (Y4^ ;<#31V+WLQY_S= MS>VIK:L 0EFW!'619LG6&"=7SP==9-:B4EK,X M9"@,4,_E_N.C]]%#DL#IK<:HG]W? &=E@>*;1IXN6<)[B/!;I25/$=>)%[X, MX>I)?.!N$0=6EF%3@BM.VN@K4RY*&_0=4);M$\ %L#@7;&%C?<4J1G*#W@&" M?,-2O=$--FV=%C335Z:\Q$K*PBA1FF'V(;(44[_65WHL(B5E!&S$GB:<0UA> M.58WU< @X;A5BN365Z]A7& ,WU=V@&__\#4J^@]?;Y:[@BH:J24HHD,@CR19 MG*C%[]; %?'(P0P 7M^V43,?6L\!_G&HO$5OB+M\-\3))SN&;7?2'XWOC:_7 MP^$UY9TBVY.)J(4(5$74'EA] MW+BO/X?9XN ^DG;\CZ.PXQ_\_F-Q>JH\_$(I,0J)(G5\I%.CBLS*[,P3U_E! MC^E-M=!!EKQDM3E:^WH;P-J#K[N&U&$W%Y#-N\B9QF3,WA;M5"/8@^?@R5MOF^IS):%;T#_$8< DB.IY7Y$45B> UEG@#&; ME1<-9]:=E+P/7&%\/C;J1[FB3P*_]'J.7ED$J(/E$I-QR!K^BMQS,E*/U^DC![$(K1!A ME\*G_,OST>37X60YG8^&"_6O:A+"]ZG4^?3K&4J/^A^-'R:#,SIX+U'5 Z_O MF+^Y\(^1,X/N"GC>!/C8*><4@BV:]S*L#5\ICZ!(P M4PXCFI@^!R[,C;?O!IJ49=AXX2R"W/ONL;=G.&9*KJ4OA8\#2]U"+8;@VXGZ[QV\,-\$:'M%!B=F=_F(Q7.(R1?$,.NXZ3("$ MYM"QG,XFGH7Z%FN*PZ?,Y;9AA<:HWZI=K) M%MA@NDXF2O,<$EJKIC&$>9[7 M(2*4MMDE=&+$*F;Z,]0+.AK[_:^V5Q&(@+E@P.;7/7RV,P- MTX!C8&!3X=%Z1:2XSN(C_$A)E\'HT@8YLR5UE'AIFMNL!0Z/Q1+NQ4]5:#6# MJ'U40T6US4"I)*9-8 L!7:T5+0T9NW7KI"9+69I6:;#IC1NA8KIUR0JZTC_*1 MU_J"( F9<]>VGUSX9D#2DX^"EJI)G$]F9%FS2-/+EY=0S9"WJD)F"8LLYG/* M=A>&@X11R>I(."FZT%^%J1;P,UGSGX'GAX8F0_S4OOIA0YQY0H1R3!?>;7-(;\4@AZS"%CA'.X;KKY)$NFA.7<"&=*DX8?M<$:W*Y MPH?]L>IT49"0A!';K7XR"7//Q8TV^YHIM3#3Q%,\SP(CJ(*E,7!RTNQ" M(,%#=8-UZ&2D,D<']1WP07\#01BSQLQL3NB0X_V_DY#1 C2WV!5.PD/ M]KC/!Y2SDN HJJ"HOO.2# :U>0-BT"]P;BHQDBIPDPD&88AQ,Z;51K($.T=] M@'"+4M#640 !LB^/QX106$FCJ@*<\V]DYV18ZT-Q*5;H!/@,;PQ?9SV01L>! MT)T@BS=Z>>4IC* %9["ZJ8(J"?(6 @^9^(N!32HVH;]UH6_]FY;*57R@2X66 M"#NJGNCN([ YN$03((<7J@ WJ=+A1&)=+TBCLD,^.&!=6"/K34I/PQ/ MUPL%#X,!LE)2J0$AAO5Y*"_'"&X7'485:-5KCTOADE[/;@H6,C_FV%TO%6WP%\-E5.8I60KVN7KY>%V<$;5L+>-4?.UM[5]P(#UXM?>H7):N.T& NDD#CN O@Z:PB;"H1?QMN. M-!MPY07' T\N?*19":)[5J_LGI6:6@=$<^N@O:N3V# =&T_O^B2$9W747J.2 M,5%-&D3_=/V$^&_8_P & M*19!PLBJP5$ZEL0NX*MP[9)1.T';[O(-V*_@N^OX+R5\BAR#7K$J@V%Z7:&) M,0BOW>6;*P6=\5A74%;@TZ5XI(A\05\6=U)11[OBL1*G]')PB7/FR0WD6)O) M8%DN=U5^!]0<'HF,BN'84P*.[ #;$W*3"IIIJOMK-!D"TJH.=T%8.PNK8K1] M5@)MZD<4:0VP"@R)8?2EW77+'L&S?TPF/7"W.\/9+_!/Q>Z=/^?KDCT.'Y8X MFU \>EAX+!K__WH=$WU!_8OCD ^\-\3%C86KB!'VGZ.0\'>(*7\*FJFVG,E\ M.E'\O+2T^3W6X@6IKB6 VY!$]"%:I9>BMJI(5TAB>07,3YM6TJ87=RENK8K$ MQ47'(78*B>H]NALY2(,9S@K,(-A:P199$>A?:*LEUQ%A=%%>MA3YG&CO,I2J M)^(HW[4_PP8F#H7!O!B[AD.6,+V'1@(N06B;'^B/76?C\VW414U5$7S%?9J; M-)U$3=VEBQNK(FYAN;%%WJHMFJVOU=;/ LP_4<_\ZE@A<85!-55 IN5^*4M;Z# \'0_+!A=!]P_>- MK&/ML:7"PJ9*C7*@91"G5Q@59A0Z[_DPP)G@!@:$>UQ=:HO+3%%N2TE=](&# M,)5ZQ2UER?_A&)&C!ICX_A?S(+X;Z#MFV-3S GQC@)\14+Q7%4?5%5UR&%%U M(U(MXT+:@,)9*Z-+"\I9+M]8'\ (T"VN.CJ1!KM>EG& BP:.9SO"RJ- M>2%XXR1XOSA;*-'^Y0:[+%01*=8K:%^8 M,928_5)C712JB 2W(?2>3>T2GS)/3W6%&:W+CI5EWJ=>MZMD$&6^ZJ%4@F6% MSC=_*8!0=CM \[7\)V-EV6@"HL?^7'75^-B/1^Y$0W>2L2_C2%][]6U\^S5= M9\58%!G-;-^2U5U\IR=$5)NC9[/7W93XJWQ#U00L)C36S3^10GVDS:QZ0VJN MFN0Y)<<2.8- ]2)[)N M@ONA8%@_V 1>N!&3@WS8O=26+T-,)[9:26K;O,JS M*I"BT_,-59-\59W.26&; VM/+&Z:/B]JJIK$.27&$K6:>KRRL.?@U;5?T2$L M2RVU[ABUC]KBYU+SY>E4;T>O%EK=2O'Q4M5F'3T&OH_=M!%[J*NUJ*D&4A8F MK\'2QZ3H:QQYB@T2#-3B4H_$=AI(4(RV-EY%VVBS+AUZO M>].L\Z.J[=1--]M(9>%2 MI)07+P=9;1;M JP"-,'I*X".M7GQ#Z_A,K5@R_QE _V-.'8J&)C152HI"TC@]@ O0I[H@EV\N MKR /3345))T^]8RGD]GC^%IN41X;ZRI,!H5M,Y7FAK,IN@C+_"Y+Z>?F5I 6"H,?%U:?;NS.6)_8,U0&: MQT2\"@XYB0;&#OW&WPM A#1$&Q!#ES@?:H3HU^L->S:D-;QK!9X?WM,&$+$B M.DEPQ663.NN(H@J4ZYP%2G)V,!VQPD&OI'.Y.HD+PE@K+^'C-/ ]WW!,%DY8 MW73$2BF:-7L\7L#&*,,,XD(5*X<\2):K7Y1TH\FP0RL< M+-WOQC]=V%_]*[ \"Q-4F*U&PK":PT@>3Y([NYNSXJR6Y#8#PS%,RW"J);CY M1$APDXQ^F4ENOJAPUI60Y.8K0OUMHYJ S&"^DRJ9*.5\L4TDN6E>P&)"8QTI MB13J(VU)26Z:ESRGY%@B9Q"H7LQH\<9+J15)::^V3!FB.;'9A.EL\YJ6EM*F M>9E7U>"<%+8Y!$=J2IOF)T44W\7 J^/)UM1H+4+"FMECLW M>6W6\E+2;#0OYJK[.1=]RCT9:2+-1O.RYI(57<2:[N*5TVRH)5PA;X\F_Z6B4X)AG*[7#JO.EK[\Y8GM@S!"DWCXG: MWO2IB1BZQ/E0(T2_7F_ZTNS@0(SNB#CG+J+,&ZM&7C?H@95*M&OW5J^ H3\< M1)N9*-#,,X#C^P"!K8EK/!V1)I<92CW[XXJ=3K\F^;%#_"6^L.'IIQ-"JA%= MRT.]6J*;%ZL78 8V(CG]IA[G]?5$0YQ[A!#GY!,==]VQXH]T(/I*Q\.?N8Q( MYT_UVR?0>D4@>06T^.:35AFP=]&?7YL/DRMF9I%5P2:%>.QH2C9'[3.WO#^H M 0@($*J>F_UT\M3DU<3&&DFU!*'JI3\^G3\UDS6QL>Y2 MI1/:YI"V(Z=87J2"ENJ*O9R=1B?L#&G7FKSA_6[X 3Z?/R*,AQ[6A6] G^]Z ME]!773S0)]]-=:X$A0*$D.T(9U9&0'N;W29M43#CD>NB("#XBE?+12 1%XA@5PD51 M)QVAP4VGCGZ;)\."OQIV$)Z\^AL(PD)AHLZ;SQS.FS7Z4N<5?RKTW'2,Y&.7 MX<+IU;WZ#Y+UCE#W'@S;<%9@\0* /\:?17!ZV!>?X!_VOP!S@V#T"#QKXX1M M:=Z@\WU0/:U#$G%>S]3,E3;?8Y_5L=4\:FI&0A4?F59@.H./K'DP"RY/MOF%-#@;!-K!#EGU#E@#^=7^- M=.72>"?@3G 4'6$F@P5Z12)$IP%WBR;_@I<5OJ!P=B&8@Y5M M>)ZUMN(C*!UZDK^B(S3K8)&D> EE-FAAGIT;ME? RF*.I. -9:":OKHOY,[2 M?4@M9F!&E:XGX-V_[7Y'Y[@7;P)(,0QR!M<1I&?DC*3*FPV'%QU3(GA]Q\07 M!J@E0 8W\,9@@ZQNZ*X "+N+11E]N;D]C3(:3+]_'RV_#R?+1:<_>43_GBQ' MDV_#R6 T7*#?AQ_LI+ZH?J@1A7W<$4A"8_S>K3UG"=;GATGM'XVML0%>_\U M^#?#14F@B]TQNZ[N>MV;9G-,"$LBKW!*$EW+RXBS*Y/( $!;.A!4%E_SRF(T M0>IBV%GV_XYT@_)ZX#CU)2+R 7WD#U;<(;G'[[5;)\/U&JS\@PF')!ANF"&. M R3MZ2Z^9R'=@?(/H-J:9\@AO\(KDJK'2L=V/S+ZPY%FMN%X8]?9+ '<(J:@ M+R#NX)^**8'[0HMA-IPL^LO1=-*9C?N3T$Q G_J O]4Y?*R#OZ:^EDAS;0YL M!!NTR7AHLV$:"-1N]>N+8T#Z8PS:]!S[$.*777@?_5 M'6!,+5[0NL0)]5[#_LE!@A.690,@]JBGR+R MBC]/"WI6?^*JZ4<>\.659$OYW.9PASH8360I->:[X7FIMJ):NC:*G'8J2E:' M-?S@.D'(%N@B/F".(<:E6'MD:SK$HYA1C!CZ*N M/.YXV5E+Y&7]KI/A.U@%T7.-[&]$W2==+O?)X7.=]/U1%23,YOT#/ MX.T@?$0U%<"1&>7,S).<^4.GP$XE]5#;DU8+#B>582C]N\$M#I"QD& M(0]2;/+REW->R;MW>1]0#=]-0*T@4.>\_%7OYIQH2))OSQE=5 /6F45Z-5 V<;=G,Y,1>^>#[<(Q(69W)R&\=;>-\0.']!O%,6& M4@UZ9T4!Z0Y' LM:=6=-I#>D$">R/SQ/P@\(7&?ANZL_RJ&..N05?7)9UZK; M;,Y5A^]/5VC9+5U\FR]#]65'O&)0*N>42B8@"8(_G%=$KIQ]-QDKR[Q>#\WR M"KLR/-.K9$+?#L<%YI'%; >?6.<+19X$)M52?T'-PS$_"*L.>^'P/ O[]'C9 M/P:(L=[Q(DG8.-C$(?5S@#W#R;]PF"H5(JS.[4 *78AE#W^)Z*O( M'4END^:K%A"X-'&=51E]=NQW4:!BD%V+KZ)IR(@!Y:+@00/%EZJ@<'W#;MJ! MA9UVKH-]@]-U^)/8%!D.*O!K3P92&G("G-6R=+45KTNI(X M$$M3&OCW;9(KW^1E71JHL#_^!O M"3#[KPC$FX*KV+YCXCYNX(15,$3WS3OB MOIE\N6-$G^[ Y-OQ)NKC',TXY,.,O]]!RTS3/?53LZ8R$P6W7#8T>YCL>OJ" MK-4;E91!89"8%!J5VLO/BYZTNI@!N.(]JK.'T0X]O#368CK4M.,\!3[Z^W>T M:+;!-OQ1$KWY ^TA,,LOX3G@ACJ!O MTH/L!<;1'CY$(O7RS8OPY,D-*ME(J6%TAP^11J4>&I*J&G 2&A9%)@"C_$!M M@H9D*O5RD//RI:)*:1->I-!6B\=<#93\<)+K>)Q18(6:]K?X7V4@0QI+._P( M$1J#Z6M9,-U'8'+ !C^\;QY.9XC*^=KKWC8=V;O M>!?!;F>'08R&C?.//-GNV\A9NW ;?B).M[QTR]WQ]LBOQU/?[:S0ASMK].6. M=?QT!T;?[OBNUG>\7YI=YD3RX4T_T51FPC=F23*^D*MO$])-X>9@;T]TMH.![B(!I4 M<)^XS6<9F0_'_>7PL3/KSY?_Z"SG_Q'SHI>A\;] XP%J)5JN 51#22E)GBB.Z@Q0*NJ,@),TI^)W@OW5OP(K>GQ-?-3$ MT4U'3)0E6ZE(,0XDI/@S1VREE'UE]](=!P)4ZQ7UE=S\3M=AP8B1YP6&LRI\ M",G313.:"[#!A#\:OC'U7P 4N\KLYJ\R%\-OWX>39>>QO^RC M?X:#JG^)&;-A#G8N#'-)TR\O2VFGRS%22>\ MSO.^XT4SN!R-()J40J(;XW1.*70J34ZI/!UO2R"VWQ#=E](7F L!7:P4H$B.W;KWT M!$F3=(E76T6&@>MXKFV9H0S"*PM"093BALJ)5_KN*DA[^^5?N*/2FJJ" 4%) ML42LYJ9:V6[ZCJP.:!GV'*Q<9V79>&E@<@N5.U\GM0' I>HK$-IF,!SN:!+; MDXH"0FN-Q"]"H7*:OL+M4FIS'#-B07BZJH*(&L[<9;EQ!B]?W:%$K\ )P!-B M-%ITX:T6+@LZ"#S?W0(X?%_9@1F7Q43_F4OCG1A=)#R2<@ K"X.B^"(YW% J MKJ0RVK G=+K^YKHF#JI)SF$+]RB0$U"1.VB,'4&BE0HXJ0R1;]#UO!ETUQ;) M29)JH3$(6%0VEJ7W+S]'0HG]:7_[_U!+ P04 " "Q@FA7)UN_:%5\ @"M M-" %0 &-DR]>7/BR-(W^O\;<;\#M\]] MGC,GHG%K8>V9TV^P",R^"+']HRA))1#:0 L@?_I;)8G-QC:VP1;=3)PS8Z!4 MJLK\95965E;F/_]WK6NQ);1LQ33^^V_RCOAW#!JB*2G&Y+__YGJE>.;?__?7 M_XFA?_Q_Q6+__+_Q>$P9YKOUF&2*K@X-)R9:$#A0BJT49_HSUC/G8!S;JP#1^;AK>D8^;%,*WX$8D^2/S M@R(H.D;_)*B?22+6;CQN'W145P0+6-YFCNA1]/Y,BB;N*"I)9X\_Q$)KJ8@P M5C6%6*7X,Y;,$%(V#>0XH,5L/"'3V;B038MQF$@0&5D$!"$2>SVA__PS=1!A M$7$-^Z=KQR< S/_[;>HX\Y\_?LC %NY,:_(C_,&?R+>PL:88ZK;E:K6Z6PN6 MYK>F"(+^@7\6$*TVS473-1S+VS[AM[:A>#M,Y^6/8 MJ+/B%.H@KABV PQQ]QK)@@>/B0!]$Y^:&D:*?2>:NO\6(DL3VS>AH4C.X4AE]>4 !9?TTQ3"2K'V89^.!RP M;28H,OU2UT&+\(%C_"6SV>R/-0;E=KA/D';0%/^ZP\P[((-X>GS$KS&4BE.I M PPI1S&4"C"D?/OUSQ0"Z=<_.G1 3#0-!ZFD_WYSX-KY$9HI#]^_>,HC@9__?-C\]^@+\&4O%__2,HR9CN>AJ"O VNB&'''G/^D MB;GS-WKK#_3S01M)L><:\'X:I@%Q V7]$_<&K>!/19*@X?^)&I0L(.(YQUQ# M<;H88ASZ@V<1"25@23S'%GFJK,(LIS;[Q*+;63+Q@E[HCR:(-/9/0]'0%"T7 MS<&?T3KH(V?S+9G/\C3!8P#QLTS?LL2:4%;=&9F;%8NYWO0>]6 '8TW5#\_ M"Z:N*P[6Y';.D JH/R33:!50H/TMIDC__7;O#YU?,2UN:G%=D:"4Y8 J$BO% M9E>8$H=S^HPYDA1/DWB2%,]5YUV@M,PX-Z"Z)+#+S;;4ZKQWDFS5-7.UQ?U8 M57++5"%A#0=@_463?"LC>U"?FWBU8Q#8':\ +,M#L\SI>!W(.8ZE"*X#! WV MS#:P$"D.9KYFG:%6T94J U/Y9%:-CP0GT;D2]GYLZHG& ZV,!O:8T,%R;)!T MN1=_F#P_]2:R>RQ%/!AXT;5\+<:3/!DPK6?N<=#6DNTD \"(6,1STQY@9;U% M;:>!5/Y/!D$2C1R-S0):Q9#@N@:]8)@]D>=6?45HESME@@7I\C+?&:02V15/ M\>2W7P32Q)D4D4S0FP&' [SH> NNA0E94FP1:",(+,:0BLA"VPYY[LX[0G7N M]#C*YH$CUD=R9CGA:3SD>)RDT,+]F>,MAN;J;L E](V]'6Z+9&WFH65PC+X2 M4O?4FID.ICD^@8>+7_%U8VVC%YC2X6@9;<%:%7LY(;PB7YM5[P4G6YGP23S: MSJ>.-8<&*OF#U6K+WU<;#J/R0>Y\2E:"HZ&A(__U6:99>42RL__J6 MZV!C!]N^!WKD?@8>[MO-7H:H)>'254I.UM:1"B7>JT/?/-L3%.?YINO6'->U M2YFXZF8+,'\_>1BYF=4U31=;!:;!.J:H!E.MV+8+I8-94G3"G%5AO<@IK$QF M^A5=[)EH<:#3-$U1:?(MB\3[UO76'&(9-29UB+9^=04(BH:7BD !(^HY$,M? M2RXI!C+!%:0Q3%O!8V'6R-JU%;3NU17[<,US]?743HBFA0QNT4@4DT8I!1'S M7MJD_BLGBFC%EC9#0,93.(@W*)QWKO 7(<*]E!;2=JW:4L$J+9/C&=,!GTB$ M'1#"%_!YH.%-%#N%T*F;HJ^9_+V39T[ ;4!6AM&Q31NY;H MN26LH!V9Y2\C7<56#WJIH)$@M#M=1#5V!>9A'T[#7+0<;DDQ:%^F#C6MD>82 MN<>HH^H3S7-6FD^L9GX*'62NQTOW.5!+ M0:?Q\ :\-TU#_&S(GYWN=0_&U]F"56'8!=$4E]D4C8SNB]*]U5HWRZW^8J!Z M+=9V:[S5F0\B0VKGI;0N;(',TC8(-E 6/B3WB@ M.%.T(526BN0"C5F+FHMM,=]B\1WG;>!M/!N((HX%'<7RG\Q# \J*8^>]GC>' M+?GHBS##L(.7KYO&I -KY5 M3_CQGP5@3_WA'.VGCV" !AWL90Y8TZYELX(YTU8P M"W! 8H!I0J"J#C%#"V9UC.FS %1S(S4FTY+ MN8K*]AG-&#%"-Q7_@!_JL_=-3RSKYS81IFEU/47*YU4 *LM!/![OKR8=;%XG MD9*DCYC7/PZ]J1;&-$10LW_]@[W6/VW?(8VF$O.]V#^QK_>_WVQ%GVO8.^U_ M-_7=^ABV\?/ZRB,-C*_6_*V MZBST6"&)- U?B/<5Z!X90T&#%V?Y[=<1M 1]_?/CZ"M^;<:V'^TIF.VH'6 [V3/ENG#A!HO]M M^]G^MJ6?M->4]GU4A[]L/F]>\N, J<@@MI'!/5A1!1Q@>$/$J8B@3D<$=79$I/<0L=&X'T>$RL;9)K=8\>I@4>SV: -,$T+GAHC3 M$9$^'1'9.$V<$1$IA(,-(K9_;P'A"K8B*<#R6* A>\ZGQLZ 8R'J$BWW7DM& MZQ5::4,\). TF6VY&8TK+VS1;+4-OFQ/(HN'YR;Y[9=O9SXSRTO"(878?"(< M]IN> 0Z)/061.IN"J-ZSJ@E&E,&EN(=N*E'E,HM!= $10061.%U!I,ZB()YS MG9P&@2X,]B$,L P/@^%S/"88@UL4) MC<3]!6#SRV?S-R=)OB,$:&V@H-UF !@M1Y=?IB/"6L6:'+,ZE$>4[)K:TRS M(ZM5N7K.?[U./R<*WNOO?4:G5T&IJ,C&#*KZ0Z^\7":,LGKU+/]LG;[ONOLJ M_KZLTT>#B9H4=6:IIBJ953<]7'+=U=5;:U^CTR/![9-U>J4UG(J&T289"E2M MWIQUA,G5>VPCH-//B8(C\1,?4NJR,6Z)ENFKTJ6Z_7;IV:?]4I4YM MHLB_F,$O:W6QV(M;:FXVX2 )>_?DY&%M4M?N9/L*K1X9=I^LUK-9:SJ&8#A3 M%X,D0\T3M?'\ZD7\J]7ZF6'PWF/79[3Z5!8&Y;5%-A@H+H72HC?K2).;J?XF M_E[$R7I>I9Z3<^5NM4V4"776ZE2ZUZQJ?=54=ICKR:KY4BLNKM]:^1J='@MLGZ_2IQU8(TZXRA%X&T!'R M\7Y'N[E?(H6"]P;,/J/3&^KT'LI]0U>5I6?0NCU1!XMK9_EGZ_1+.%G/J]/O M6^*RNY9&&L>28]$C,_2#XU[[=NR+='HDN'VR3B^WIU\&!5Z[UBL_Y--+IL"W^\9D2=0'VL5-["^=_-;_2)[)\S1-K]IC M)MY6XYUX+M'IPF'S_K9+>0.#R0LYF-_*X)>7M#91=KIUBY@2J7%6ZY(:;S8; MMR7MBME]\II6:Y*3>74-20Z610%FUA MX."+V+L;.Q7#=BU\!;]M05UQ]?!F^_;F#H]HP;2UZ9B #E0FL)^PFB"ZNY1C M$PUO[;PRT\N% %PX8/MYWH;I,=JH :)22\:MZN;V1GV[T;;9M.&VN(5EV*K# M"JX7X3C=%UC[\D2O@[/'#H/?+[;NJC0JSFIL0QVL<\-XM]*I.I7H[CTB)[:? M<-+_;KF]%SHF.9,&)29UO^SEXN6:L"Y%=PV.FMR>F;5IGDR<>D=VTZ*UA%9. MTTP_'6QKCB/ZB[*;)LU.]G'\@'2<3 MY_/\G^<"-+/*+>N@6F@NG^?TL?26_SH;% M>==&&W[;SHEHUQ"D=]HQN O0O.L0X'U"45DJF'#LG76WV1OWB\5T,R5DBLP@ M*U?B\'Z23;J1-:J>F6K(YE?F>DYV?R!%RGG2'SQG7G?A$AHN[$(=*$:0/LK/ M%X\,DI:@*1,09/^:0Q'M'GN*CIH@>4'?VG*0+HC=C'Z'(1$AF)?05_A5"1)Q MEJ=HDJN7.D*9+KLF[;RL$? B&TRO@#?M(_OAJ=,AZ6J27->$MDW[F"4U.@OLFM^.WS3-WP_ M26CT.'>>Y>Q\H65H3BPPGRHBT [L\J9I<)O##%KH3^BJ;C:(>+\^L"M"FI3* MD7-RHWG]?'9>.RM\;V*77+5/35ITME7[0UP/JQ/Q',M+^4127;MSCP%$&N1J M9&V4NX_0 MXI\AAMB@P-'2^A Z<,A!;.)!]"8YCL3[KK3-Y6%=IX M,,C[I$PU(F>)O@,:CV?Z>^+BF?ON,]<0\T2374\8ME]H=0>#3#X?O11"$=I]?FG!EO=P?6_WV1,$ M6X!56B!T3A%4JB4IY5SD#,BOWWU&D,?GWWW6[4ZF8BM"7*5FG1S%9& QG[WM M/F^H>6;WF6DH#SJK%.)J?%G4U[JAUA:WL\\_%RG[NT^UWBW7/-I(JY1;O==G M@U+[ MSTFFKO-5L2,0J6Z97VC,H JYWV$Q^;3=YY?B@CS3[E-,R#1=&I5:'%C8+-<% MZ4*O%3D;-%J[SS<4D(T U_=VG\2*&).TP?(SUN=?1A4N!J?'?= M,YQT/!W=XH)1WWU>/U+V=Y]RNBNNJ(>!I2[8;"?Y0#H/;N)WP,8G[3ZO'PW' M=I^Y^JHO=CIBF?&RP]ZP/%5GB8?(F1O1WWU>/SJ>[#Y7O6J[4A74,><24V.9 M[Z=;"S%RVXZ([SX_'1>/$W2S8X%/5B6795HVE>O5I479M"]^='D"I2Z1EWHK M%-LT)4@HGJ0LZ4(_M5T;<F0V$/0Y4L.,_)4-+C" MF&7B*YLRZ_<2WRY%5O=<$X(2IR,H=;DHMLL7.&UF]/YZ0+$* ]2V*SE%S^).C>"O/:#['HKOD@47(DM\ZOYN'9YT_*W1]"7GEDE M]A!T^2H_3'U@B5#3:ERKF1M2DO#0NN]&UB=U30@Z=16C+K6*4?NKV.40U.T) M*VLVU4Q5(5(E11H6^5[ZIH,^UW-QYE4LRX=)^_=6,9)/9EJ&52GD1(9-T]-< MHW;/ S$*CHP#PI%8(Y]&./(3K]UV@3$)$M+A3PW%4'17#T5H(W0X'W'%L!W+ MQ9C9A$Q0K\*A6!]+A0:ZWZA5=8*"68P91S" M&=7D6?4J4+A/@QL*S^7^)HDP"?FN\,OAS!]5;UJ:VE(Q)D>Q]2%@VAX0AKK3 MX@GXT'=7G-J//T0O=&M[AO*$1OMEGUX@TF^ W,/R,\094Z:_#8QUZ#C0:LE! MDW-@<-&1<^/ABF^JY66SY4*VVXB7(KO)>@F#QVAS@]X+T,L@V'V2&FS"5?!< M;F)!?X^3N[>"WAUV /%S!A]:PSU -0BJZ)=HT9E<)Q*]2AJ\3^6*X)#)Q MZFQIM]^$RW=IQ!/@:-.I)MN 5HUSP7S17NDE05M&UG40(;WX1Z$PJ&*R0K)> M5PR(B_'8YX-@8M1(V]-N-<\5.O#!% VS!IW([5M>@F!0_N0(>6[X>]TP?%H$ MZVMV*0F'%.<9(]5E:J"<-/N9N+!HW1;F:)N*9R[;=21MRNZM3B// M "YI-=:#O,TTKG*[_*KQ_*:OU!(K-=R;]D%'*MZ ]C(ESOV.G)0>;?+ M+Z):X"9:14T8!\>[/4L(,$F MT'5\'WX\8*&=C/-@8*ELO!_=HIU19_S9C(%SE 0L>$!#"]3>;YN0,\-=3E+3298H/'2J M_=ID/E\M(J>S-ZQ[N1;@O2$9&TS2WF&B;9F2*SH;Z2^J^5Y+ MZ2NRFHI+VD2HS<;9Z!63>A*V<6Q^(1X.)WA)%$0^Q/ED%)#)U$2<-RH2P8Z] M=:)3'[8KG1L*3D)!Y,.43T8!ZJ77?6C$DZI2HY:9>TFG*\G(K@K10L&GAQH_ MMR%X.]M7E=F\:0V'C.K2=)6LS=?#X17<8/@2MG_FUNX$3A85V[$4P?4K8T)K MJ8A;L]YJU;))<:R,F/AB/JCQT6#G2345 :X MU3%17Q'1S4,2)5D]S[W6#W#R!5DME>O.0%^5$URJ3]OJ,$'5IJNK7GB_0E8O MPV'6*I5*XJ"6)^*I_*!9EJJ59?GB[I$OG?PY;$F":=1EBJE0:JW!R5-W.2XL M;XKJ%$[29SQ+>A:'0&[=O^YTM8O/58)?G$]DKB]N^/ M'65LGBZ]]RQ,!Y:Z 8W=F*GS24'0B$&]-$I2-*&LHGL5_\SG(B>_]PVD?G3^ MMD?KBSGCJ#B1C!/;R.U7;DSN-SV_,^[=H-P_H#44II HD5*-*?>T)O^PZ,8% M-K*:[/W@N+I3^3/Q&XI3P]3,B9<']M/G0A!,ER"[GK4F!-%:C>.:-&8EJD-$$+E5NB^5JAF"C#Z%HW[X+# M\[/_DS"PR:#HIX;#6>*FRGP# H?HQ1UA;"X)R"ZG9:;$JDYT[TV\"P0O3/\Z M4'!D7W,6HV!827N$8;E+HB8FW"*UUHH9-;*6:I2-@LMO9"]G%3"6EF]QX[1$ M%$2HY]A^ETPJD?5=7)U5$$UHO& 6]"F1+)58F.5B64;X2N^#\SK!S9+KM0@%$Y-Q'9_KQ?Q(UQ#@^1YL=*E^PDEG M,A87[T+*<7HN1UY!N%?4L!'YL,_W8(-==!I2KR7&U8%133ZD!]E94[IAXZW8 MN.Z\L\]@H[^2%9VP!QTU19)VRI8R>8^+[(XSFMBX^HRRSV"C-BD3^?OR/>0& M9*4V)5[K1_LT7?BHU/ MSP+[G!>[B'I8(M3@!+B;"_!=Q58/L. 7?8*VTT7O9E=@'F*A9]R+U7O5&:I4 M5W-Z_;*ERXY-]7+<39[1U70.[K:,38+O^[[0:L%L8L84 M3'.J&%-CQ4?W0LD[N+N=ZG5P]XV:^179)4NC,B_-*PE.GU,SURW,T##1@B9*<0.K@. M\S;Z<=,@J#_@6A8:\<$9X#GL,J=A+EH.MZ088-CJ4-,::2ZZ)6F?H]7.)GN. M6,^BXV83?AB;9P?E@\F4^CU&:ZGL=%*7J9RBCJJ1=3B=",H;&C]\7/JUJK*4 MKK&U!C6D&*J=+'=X=M!)NY$UE&ZJ\I//\K](5]8]&%]G"U:%81=$4UQF4S2C M1W9S=M.5EXHIH/?*+=./RRT7H0R1G$O8J8FH$Y#=LG!61#QZ7+"[8DC*4I%< MH+%38$$_Y*H-/#_*)N_UO#ELR4>[V6Y"F#4474SE_9_;B-\A4D>KO#GV1@6" M6&AV,94=)>J)8F17]0N3+-S-O$*S2[J5Z=,+/=/G+?3\)#C)VA0(0-$ZO&M"#EHXSXC\QN-Z='WO*R,UV?3@F5."66_*RV&"J M>F17L6?K!1P2YAPV5B328A\ ]E&M@)< ^ZCI^<].O[+H3\TTIQ- =B9?N(ZO[HEA;X/?+[;Z!5=TT)F@AT?'4L<7ZK.IMMFN]J^>9OH/'/O?#GD($385K(E#M5CP"Y:KTE:K58)\$!T4PP_7_:CZR#YT_:UEZB MY>;BS[F M=CM2_DDQWE N_@30;;KH TL!@@:Q,^O &*AZ*(^6DMH&5+?S?'$X*C=8M9I3(3 GB:VO(Z2LN(,ZH6O<1)?ZQL_0GKUO$HAX_:>"^6%W^K ME-2H:IJH=U=C#F3O^X+:[Y:JX\AY]+[0NGM7M?&KDH^H10%]C7SXC]9-0S(- M/^)& (;:DF6(.MD3EX98(\N+1;?.42X[*=16 [-,7X7!]IN*B__2U]CVATO/ MFRRQLZXNWFI%TJS4D EO..92W,"K4O)5K"Z?9(/=5I<_0SY.6UV4S*)%*@U' MY"J9AFYHB^>TJ#M0/S+*7)PYM>B^[*',7=V)>NS,E>N] N/5@=9L'-@:G: W8=O7*W MD4?PUZS,5XCF5U;FM%%)N,MV5ZV2F,A4+2 MTU0DC]HBC> O6)FO$\VOK,Q*/C,KRVYYKBXR[K@_FO78WN@J%>H7K57HE9ST C*>DW-:[2DW%Y2;7HONROR&M/R_$6I?6)DU*_O@\NGUFJ,Z MLV5IDJS#K'[;,U_'RGR%:'YE96Z:+4MMC%>RJK?6#W0I-Y?MUE4JU*];F3\= M%<^ENSBM#@WZ6D="XYBB&H) 3F6X]7VN!PEELFQIPWZZV:EAGF#DU(EI>*BVZ985BHN?%B"Y74V?DZGOK$#[E M*IETBO5ZI]YCE*ZL_IX &V*((IF"5F)AC- ME-ZZ">N7))AX;V'(IUR=:&L0GX$RR;% MS]7+NJUQ>B4G)I.3WD/:BUQ@=G2Y>HF%]>-M4A7[ MMK">S-6++*SDQ^VE:6W0&*Z%.5=.3YU9SBH4YIC7-J[.M#I?DW/RB81'Q^CIQ^6H47\3ZO=OO MB:T+:_OW]NY3Z.K+B0CXMG)8,Z'@ MZD569S\SQ\WUC&4G/53).)$[T7.TW/8\_<^?0W'TX"0Y=( &K#@%.8E=4 ME@JF,GMGW6F;P$IB1:PGF>Z0410Y/1Y!AQVM(JOR7T;%*W.]K%N3/-6MN=_T MS,[N8S6$WJ4KM+)LW OIY(*I]083=FZ9$EV/[%XL>KKB="_WP<(1K0+;FY]+ M0+'ZB(8P[VW_O$<, Y8X]>IP";6#WK9M*L;<=6R_ ?5\EPT(;-<*CK" K1R: MJ(SM*#H:54O>/K']HZC8HF;B9T_JO&3!A0L-T3L^V+V6=A=GX[$48[+=[<35 M87\ZU]1685331TK/:RXCJR,O4IOJY+>?!I;=.%Y RUD'7&M8! M0(\0Z 6$7L=IS<6UTXNJI LR\,9M>#_IAGG?#%_UY?F*$CL(>6]X8 O(X549"E?%#M#U1MR(['96G8JR1M2 MWHF4Q.E(27T&4HSE_4-U4##G*E!4 2:4DM3GHG"X&AW"[5]!?V]LYLLB)D#2 MHRJY5973,]V\L*XJSF@>69=(U$7L#=?2Z;,UEK>/$0L*LBW/&[I.<4L44K)<)5D>UP5#Q;RRP*"M.%UQZ']S4B]J7W2Q-[ M2'EOE.;+2.FI?+_DIKN0 U9_FNDLAY(7W:JN44?*J^E'#[$17O#9E]6<24EM-,,.EAG$';]_4G@9>^6 M$&'0 <9$$328LVWHV'FO 6:F5=" ?2BM/2A.#5,S)QY.5_[DN? -'+QGXDYI MD>(*Z5Q#%P0W.]0BZP@X]] _UWNN,D!EQ2AWQ=<&?$1*'@VHZI0ZL+ M-7]\]E29;P2 MA85KSI-04YG!0*N\NOLP(KLLG55 O "V7]/V%\RIOE#2X$% M)*@#2]V ?@'[ROU#>5TE@&R#^D-ADJU6$PHNL1GBT6;<5F2(=:CZGR,A<,&P@^I#(>_N_[+1"#1@2M&SLJ@*& M5S'$4&K9VJ)A\27YGEO0U(A0I'Y_V(_L0>/ILPX%^9EI1\3Y]BGY5TG;X9H9 M9SXE6KSK.(3D-;7+WW*]JB,D1+B=RV'W8>O@=@5;D11@>2S08$OV;\X?)GU< M0BNG:::#4=.:[WD>R+FB]-G[TIBK\=64Q'+,L,M'UD/P[$SW\C8^-]7+GBZ2 MI^[*]YN> 1HI)$F[,Z/P[[*4,H1N4;88;V26M4G:*[&7C\YX!]U22%1./C+: M-3W?K MFI+SU" U)@SE\O7&WZKDOR+4^+$XSC)]RQ)K0EEU9V1N5BSF>M/[*!SO?LJM M/ZXZ[P*E9<:Y =4E@5UNMJ7+YT!^V^S/?Q_A?16>\3?;X E6A 9 +][IY)7TZCXZZ.TCY4Z,\2_[=9 M1#X0W?II-3[9* C%52O1ZXX)U];K4J>^&M!$Y([TWHC@#8%N^+UT MYOC#FO 'GI$N7)K:4C$FQ^K&OPK=EXK.\YS370U6DLXQ<#):S?CI/)'G(F>B M;YWW3VBT\ZF\2*0+PO^E"=)-J MWW34^=?8EG%&^U.?K7O35L,DN04A0(GFQ,FZ%3EU];8U=DN@VQK[6?C5DNTD M \"(6,1STQY@9;UU^6(K5T4X>ILI=R\(G=P381E:"%#X3!"!T'\F9UEXSX51 M,E"<:<60E*4BN4!CUJ+F2KA*U118T(]#:0//SR20,Z2VB? *'25,D -*"OX M +_GS6%+/OJBK<:HF\:D!RV]8HB8K$O8UL#FT$A.P^EXG"O/B46EM[9R]JB7 MC4=.5>PD]XL)&BJ*%RAZ,0U!'EX$> GHY*7N2#YK^40>YZG5O.F55;?$48PS M;%=:\RD?O7J,-YQ_<4:+URS\R..\:Y<'J;G>[ZK>TF#SRO".?)63M-K>-ZA8CW,V.W-\^69'C#>01Q'L&*T%>$\[12*HSX8R/39ET,C,!Y3PI<"Y).:*R,YF.E?.IGN*UEB[ M^4FI93R49MRW6&UXM+J^8R!I!D:GX=\T#9ERC M@*469OIX14KM4249V3MOD>'WEY?T>L6!<$\WRJE>F134N%M=LL.%V>I=_C0A MJCM2UU "JG'H#QSR8""@2#S'%GFJK,(LIS;[Q*+;63+Q@E[HCW8+F1ZD2_^E MV&:"(M,_T2.;=VQ^VGS&+SG^0HQ%"?JOL['Q8?,-5@,KHZUT&6H&)HE!69@T MZ[NW^J8*W.^LB18HQ'#3>N? GCR/ORQ"P]05XUBW(4/\T;[4[T$7/PY'_RI= MMHP(J3*CDH,R.U,FG)Y:LO?5QL.H_)![PHM3Q_;*2^.$*#7AJNC;D'='3V#17L]4:5ZA7DNBA96_UY*V^ M4ML^]8$W^VN0IF'MQ@_RRUZ]X:[6G#Z:J]4N&X^71\^\>^^YC[S=@3H?[V=' M#U!?-=7"N@KK](#5Y^I30@>O10]\X'V%7)'/5]RE:(K2# MCU,()%_5(BG[]0_Z5\QV/ UI;!VLXRM%R[@&9>=G\BZ3 MV7UE*9/I]CLS6$71:S2_QL;?WQ[U:DT4(^Z8\Y]DXBXQ=_[>>P=J.M\TE)'& MCHS>,M/ M]&<,_Y\._\ O +&I!>7_?OM7KU5 '^TY, Y>Z?_]TS M'6A!MROHSR_\ZMNO M'A T&#/E6 $O"FB[]\\/W LB(4#_GQ\AI:A!8/T43&?Z]V.J'B/7>6B UZLX MT)2)\1.[A*&U1Y6_C\[>'(S*EC4__VBVM6>DPQQO9R/8;]YX?PF3QZPS!9IL!U*[T*P\9R MS6*,&1;N<\TR$RNT&HT*RU9:S4\VP>1Y'V[=< V%,DTHYI?(\5 M[PIW,0IM"[)G'#OUH;$?#K;4ZC;^]U]DBOC;'R!:2 W3\(UB18R%NX4N7F?> M%W(:,P#>-4E0^5DT13]J%[L4O_E"U026Q1,CR4FK][D1!V9UO;H@\F2_E7ME MU"01[P0$/1CPN0A\7!$_3^!#JLEX@77^^TU!': ](AJSJ0D 9\,0S/6WRQ"U MXZ(=(K0T+ZBRM4??6GE8=.R2*1%P/-;'O=9*(].K)_3=D(F%$Q/&N$J,]71$ M['\? _C__BN;3J3^/LJ E[@6VXXR%@PSUG8MVP6&$W/,& O]-#T!&$DZ9EHQ M,OF7])_@"V2F.%.(&[D6LC00*YFU.,6.[%A.=+ 50V;IQ!_V,X_V);'T&X=2C]CF_7F61S]E'"P/>IU*@'/0T88-"X$I"!DGPF\"'LP M*@CEE%$9S)J<[M2*0ZY)E9:9IV*ZG?0Q_0[G3N# HHGO,3RNRXEP]FW<,ZT_ M5G/X&;)\V_V)ZBA."GQS: D9+E5+9MFU+A488?)QU9%XA^K8#3/ZNN.-X-MH M!VL MXK<&+]T#,3M8Y'+U9-HF6J/L0R6[H,?I^-/U[R7%11!D/$&DLID+FAR)$VSI MBQ.P"R>*C6'H--$O>T12@TR_I'!/G M9K.'7I=(-8D.:DF%+1W?^Q1.+?1@B*:F@;D-?V[^V*=7"LUP&@ ,.Y_$P&FU MH8/OS@.N8VZ^")QY_C<'+K]]/TS0AGCBO'.LS<#"%Y(!-QQI\_T26HXB BUD M7L"%L)=$YBZ;^9]]1H;OVS#UAR.=VA=U1R1?ZNK<;L:7W2HG NP-\\.T2KU* MJQ^.A9ER-@: J[0;'D%4PH7 230JX';PF2 6:AGDBQ?6R.! M)GW1/WTM+4(-X).;9]> * G':\O):\Z58,E[^N^MJ7E.2?D6%?" MDW/1[V_?HD,X].ZI3(XSS10WF'8[E;GN5L5.#K_R33BD,W$ZDZ;)1.IE)+ZN M>AQS_FEZ)WLNM?.7+^=XGV3BH)#8#.V,;$GQ=U'(%#J?-7:6T2K[&LH?M#4! MAO+@?_[/"9*TX]'G+*CO.[G(?LBL.Y4"EU\^%"WA'O4_SR2]Q^^[CM2@U6,F5B:C*G2>ITTM1X[%H_N3_L1-C!FY1'.N3B\F M1EF,#_@<3S]M.3<\P#57)JO&C:DS)A=33M)6N.S ;2<3R>U') <5);/VFO9\ M5P#?\^P#GS<)GEBO-SGX\^3@M\3\Q3>3.4FR<%1\\)^Z8D!RSZM=G5*J5TKT MFER+4_N=55'MF_VG7NV7MI$D36=2L0J>K@&",LZQMKKR+GA2<'WD+Z _6U;/ M7!E[Q$^*>9-G"D:*T,=)8CGJF;E!J-JFL50T#7X_X4CQI;YB1\)? MOL(9%Y+,WYZWK#9Z&=K\[A_%M%NU5,+JD:Q:L H/M1Q?ISWS;: M:::E2.!W M<<$][V6[>=A>@!A.TP"TL3(_X%ZC M*/+YX]+?VK,6DAUR;J3M;,U88:F\_QE07F/P4+ C6^ M0O-_]7+']G<@V*;F.O!O'%O_=(+!!8GPWV_5::],\2H[?9.UDB\4'K\#_'S,.SSKYN(HRT MIZ;Q-((I3I*DP12)!>$.^S.EDJP6N.K;+.5T@HPG$P1QPHI\,=_W&Z]P?):3 MXQ2UOXN+PB,@TW_;,0=J<([9%3-\?GV/H:4^2(H5 PC%>\M$)!>%L]#M8$Q[ MX95!(!6TH!2;/QNE2?TE',9GYD3GYZ<0[&WG$ (0!3))RCQ%)K-\0I:3?!:F M*5Y.B60&T%262DJ/SPP6WGI-UXM=G:@)[;5=Y$TP*JS"8(F#EO+@H4PO$N2: M*+"Y!M^I%W5WM3G./FC932W7K'5?I52/+;EB0LAS#(4#,#:G(.=:Y\]Y@D!_ MPH;J"SV4O_/DZ$\P3VZLN['N32Z!)\KET>W8^?KYRZ_G)D/FS?;UH5'64YS@ M_C4$XC0F:L"VWQ,81CU/!/]&P1S?%G(N38BO"8K#0+]F!%C -QB#"S,WYO]1 MS&^&MPY\Z8>;"TFF$5M-%?3-SH8^I,U;7 Q["C+(+_")Y/EJ7W>X'?%(2O 5 M[=;#/:U)<2E77208H%'KRL@IUX>C21 CA*\P;38H?EG[[S$D0;$ET%P8^_^( M.YSE"5_.BOE)=MYQ>++GTOW*)?K,SMD]2?SC;KK^U-UT_U^D715_5:*"O.@ROBF'C! MBXE3B$B'?E;18@S] 'GLH-K=#_P9^XL,G5=38,=D18-2#&@::H+O)F,/V,)5 ML/_+,6,"#!N@GL]Q43DFH5^1U8B;SBTH0M^&)*F@#S]+@!W["_6,P!JS761+ MV%,3WUS<7"MVIL!Y-*'8"AP.&H\X>#B$5%Q@;0+1O4!SX/:;(J*'W/0;1^ND%869 ],,(BL !P37[ M1ZIF]\:]5^Q[X;NN!@-&)(@DUBE=.'&UX#H$&^_%_L(_IO^F:.HN;.!,%?_V M\QS??OX4[1-,8CN#K6*!]G]^7XVQQU[,W5"![*=*ZCD];R0JIEI>KWMF=S+E M2^9-8T168SQ"T-NT!Q(Y$--07S &1!%I#ZP:)%\(++P4'_TVAM@;/_J#K2.U M@]YB;=8CA&!][BL7)*>H.[12XW%/8A/+7#G3S<]WR!J!_M@D*"N&'Q;AQS9A M.XTB_GYNA/[/Y-^;9J\V>'Y\FX98&82-GQGKIJ5B["DYM/^/4['0LMHWI^[V M#_E(4DIG$43X-(!I/D%0"3XKX_1^I(2^R!!)6::?'/(-' B(E;0DP#)=[-@9 MHTM.5\*L^ZZCEN2CULJ33YE-;F!RU'=^8JLUKS. M9(5;/GF[URAQ5*=CS1G6:W)*1ARH0B_< SRZP#0I-#VCM9)53[ ,FI8?Y 98 M\8FG;R^[3B*[@FJ7B$_FG=&P/BA6ASG4\LG;E0=[#)JYXH2K&?JZG,@LXS"; MXU/;EM<8=$1E[EZ/QS^AG^1=ZL5HO9/W^:D[XOJN7YV\\Z?N,NESD"EUEWZ] MG_==)[IAXP_"QEEP\"G[D/KQ1?=-)'X-B)\RD3=8=$=MN.A(RRFS_( MQJ=,I7G,SGS3/%Z3S.O!7Z34QT>N[7].)/_%%4_T2?!)BW>D:7!Y/19]&EQ< M!WXQ":Y0,[YRW.<[ZOS%#GMR)J;E7>@>*';M6H7P'=N#OWY)6A%9KT^J5#S9 M[Q*R$A</RN@-CKI8-]2*J8BOQ!R M@J_2'XV44>1C(79^8!V48H;IA[>Y=A"N@H;J5]5B*:^FX2 QBB C1\T(83XN/&=EC:UH[A/&"*].(-=_HOQ!^ M\GK5K\\2IO6NN%)0_FLOYJPI$Q0LU^(:D!48/KVR.W M["G4M VB8W\AG/KQ4T$UF1.BD_YS%QNAR48%(RR>SH&>]=&AMMU!L0;Y%1%? MKQK#:6H\++%'(Q+/A8Z7V!1KFK$SA0JFSA\J>*##5>?C+.HX[,;^[[=*LW0D!MZ_ M3N=?1&']$;9@2)7NH2BQU/IUT"S3'-"S*2^$S2Y M@<&&#K^""W@^$47_)8A#QZ_K?8^9NY=^6O#P\QHE\2&+]]/J4!]>K#U65GK_ MUM8'JDY_-2T^<9R28L\UX&$@AZ&/)P]:0TM'/ Q:.W74Q(=&_7+Q]_U><57Z M1T&8%[Z:1X7K]N;_[[VCN$O?]O_\G_VI"D!4D4WJ&A*.636MGQM0[]$@9 ;E MR\X$QH/TKY,<9H"2@$P<*[BP[@% P?4O48N<)P9W]\N_!G M/B$FLH28)OAT(D.C3Q3%"T*6X %-490 B)1,P_")\U!Q?_9[Y>RW9,5RO;ED MT"PRPS.JQR>O?K6\XMY@7J@ ^;5Y*4]-,4%2=Y^>@GXK%^UXGSZ) M'MNN8GM]O9K!U7(A47(4QIZ_OR$]$'E[C_X@S@2HH#I?]\@%B?+BC^ M*G"FA!97(#%GS]7QY5"_[(QN>+QF[GVIZBVTFFRK7BDBE5O,Y^I( S/L/<,@ MW4M2F0QQ]+3I==V+-C.(,O@$ OWE^U3\J,T\T)!*AC%V"J%C;ZZ/9"B2_#O& MPKGC.Q+1!BMP(OJW98M0W'F&[>,=GT]8<(H>PQDR<%EK'1X*2@^-'?IM#<6 L3!; M17!.^(P0_08BD[J)3+1%II!C[TOUUH#E,TDB024O*#(%8$]C)D41=+D^^2D:3HP7 P< M,_:,U!QS"%TYN$GBJM!]X/"C&KEFKASHRV*%+7 LBPSN7+.(OJZ/V I2HJ6/ MND2IJW:)7HY"#6" B2\!VV) 1<467=O& 3I8\^<,H'FVXB\P.\'!DA6$(>(V M76B[VN-=S)5+%'5=EM4!7N@.AU1K!5DAE3Z#8((^UL-/&#[U%LMU/RI1]%5+ MU.4HU,'ALXKC'[O[PH&^T#:?L6QIINWB:*^<8+I.K $L%3JQKF*K5RXP=/9Z M!2:!K/=>MU5G$13:W5:!*7)=9(DD4T0VE?JHI"2N6E(N0!H._\1UF6"_WP;C"1+W0P9N9VW7=M9V&"I3:?7NF>Y^G$R*IK,T\9' MH2N.'#H;.?Q^KC)FZ \3AYN^ONGK2 /T,(BKSI1S==]>9/QX69XDDE3FP[;T ME8>VG94J=3@!6F _^W4+KMZ )J\8[[ENA:V5

    J\OR62J5(-[IP=[#>NZZ MP7XVDF#G2*P$1,>T;AC_.H:FF.%])5_!$6$TGA?)6C+)H5 M<%P+QH(["M?-5^J/SP1R=*=R!1=^?\^;L=3MKNOMKNNI=UWYM$S(-)%)\0E9 MEOE$*I'B00H0?):@4RE!)I)9.?WMUQGOMA[1)/Y7"HY#<5";N\Q3VN[=,>WA MXG0=%^ 2VHH$%8*NH_?M8+H!C;GV73 M6@%+BFNFJ88)?\)PETUU*9PO2#'\A"TZ! 9N%.9OL8$,8U-@(?@'Z8'L3;$L M_"MWQ]ZAK:>RQ(ED]DI\UM%_)D'YO2[$F3IVM3ZSR3N<% :BR:[\G""XGS!/ M1\S$:4)6BKVM &CC[$5!N]UOFU1*DI]6)(:(I-O^7^%\"P>EL[YOOP:2!1]_ MN8*/JW:Y]K'R7*:[*^^%8(\SY)B;H>]"BH0PZ6P0E8I>%[LW-7]3_AW';M_Y M/0:%$?>>LEW!5B0%6(AT=[&8\7 ]AZ(3Q'R@ M=]NVJ\_##U-S#M%_!*@I4+9Q*BPL[6%# UM!.(GW! /'@A,T.H%/9]4TH MN S&@]H>C"D< "X]N02*YJL3Q0@RP_A!*?:&2Z;KX,AYOPM'T4. 'W1_AS@4 MLW$C$?6/AN:9+OK30#H$CU;V7B*5 $409NGR-O(76YDXJ99?YQ%LA=&GPO() MZG3@/?YJI6C:X^\@TB9HQZ]4#/?)]S@(053F1Y[PF2 ]Z=_GXI-"=E/3 MU9ZT71W[4CSVY5P#QI/O+(BD^,FKYJ:/#?!DYC:$^I'OU,??!3Q]_"WB/^;: M]NNP=J\!)T%$1J#/$ ,#GJ&? SFS$58T8(4Z!GV-"(2T4J $_:J?B/(BM R$ M,/_'/1D(8>U]C^'YVWY1PAWT??F+A:H*X%0'307H MF5AZ0G5MF=OW%78Y[D1?6'!G6,MMU.&%4Q2]:6T],%1VAN+/?\G^/ZA%/I3E M%VCO&QEPHUQ"R 7"_X@MBH$7+T221ZS8\2C(C^8K>E&Q1%?'B9U$&,+KC4S" M>:$0"_"7&) AH^X.2HZ^3>\?Z-.ME@5;$P O8=N"NJ&E\I=I?8^%]@16IKZN M??Y]"#:;.L%2#),+/2IXP3(+$2EV-8./O18-9C[7T+J'QQ44)9=,1$;4=5C? M&U,)YSOT4>J_VT5/^"\/&H3KR"/Y12-&2+ W"\_^BN8OX\;2U'!P5\QP_4AY M-)IG) \MZNCU_KJF>=^WI'@=BB&Q0L8%7-PC7*"7_2R1 C:9T,J"WCP/5CX+ M8DT%@QR/>V*Z7;Z7"ES9(4DQB; 9@JPN3 A,W6"6>P\BLB)4XI>A0>+)J=!_ MSA2TC;&'-T(*&!;9(4 M IR5T/*C3O$D<+++/;A^/US?MTH=VY#?$:]]&Q1U@9;>@'QAK69_=ON@LG>& MK096B)M86SW#ZB !*)J_9>K8T@B4A!*:'HJ?21&3$.U7T,9<\PD5<^T#R4:: M_+G>PR4'M=;(#%U,##PBA'%-M? MA4("V]]#.H8B<\"OD)^;KE\+"( M[QNOYN&2CP;CQW4&[\/Z]R4EB^:*R;PGP^@-(L3PL 3B@U7^GMB$-FX@FH@S_K*"%N373-*[ M&(NW3W)P1+>OJP*#ZM'@D,H+I1<9 )HKP9]O3:'U,:^6[SOSV8??&-< $D?G MIZRLH72,HWO.IB-K]<8]&-B8A\=YX9.9X+='OO\/3>1Q3G4\:C^Q^E1Q8!P9 M#2+VP*TLL,FU[@]B[P3A,1+_]U_95#K[]^-!OO#$\UEIWSJ9$[V&OL47&**^ M7]O/EPKFBH.@A2!E(UULH\TZE@:TF?,ANODY7.)]L.[#2U(IG]5"M[P>,/C._'H M+_RA,L2>H"T\0[RAC1$,G%H2LO\T<[XI"P"-*;8+).S9EUPQ6)-U")W0$/"? MNP'S!LP/ /-@@[1U[V^0B>MMSYU@HQ.XK#90C 3L]@_T;TC<"SMY'7Q?91K: M+H*4O^^VNKW] NQO-_/BJS%'WCGC?%JH0^^UPGOD#>E?? # MFJ(K3NCG=*9(KTRF,=OT;^7K4%) X/K 3C\C*. 3% 7R.XQ)0 <3W-ON9!6_ M,1@4=AE@K8R>N8'[!NX7P;UW>#4WD0&*9_D]AM2I8>H(27[IJ8FK <>T_'/Q MP$MIQR;00+L>W\5J2(?J-KJ[HQL0HPO$0RV[Q6+,-2QH.]]C?C N^BPI-K = M; !LS_A%2_'C/="WEHG^]OW_^)A## )K5L#:*$@=;[( @K*YS6\2)62>9<-T M ^8E-^X M3EFY4D_"GA19T)C%H#[73 _"EQ3V ME47!T[@2'\;W]CUZ]:%JXAJN#&#LHR=!\C^P.%X]MP/ #5] M2\2!XM1 :F7BF]FAC7([6;U!\:.[N !S02@0CF?UER3\$=F+T \FW85EAPZK M*00:LH0=I(J!\WT;<>_[U%K]2C%.9F-H)A+4%?'[)H#I<3CDQ@*_P?<&WW?" M%VM#._ [[ 4#!,'BON+TMV6XWC:V7A&>+7>^*_4@H7;>#7XW^)W'!Z88^22"VWHP4)Q!#Z%S86XI(CXGP$^%)U[*$CT6"93>3F>O MRA,61/S:F_OHNP#SS;E7&)X:'I%A$]0W!8+@TV GOSE9^+Y=KK]O?+/A::]_ MG2L,0?W]4'J#Y/EC27=AI%@O[M]WVNYQO)CMV0X,K@#NMPBOANQ^1^HT/++: MWSSM'^ ^NK2R[0';N>(4.V^7BN7Z)Q)3I)1\5ZF.?3'XBMF38XSO.-A=,O<< MR/B"@K4U+':G'#@$^R81-XEXDS, K?ES/P?!YMSB._[*P7>$\04SH%@88>Y\ M8@%\Z_##\N/?V$!O0"C00Q,$=^I8P @\6_YE-G/S1BDX8?8OSO@^W[";&\QO M,'\CS)W-I2?'AS("I@7W+@WZDF IT#_]]3W4FVM1@;+?A.4@<%MH7ABF_D5, MW^AY^BA>;((XM,"R]N-P-E_Y5W'V.GJQFST#ZH;Z&^K?=18-8HMMLAD)[>\D M9%+AHC0#!:0LL3W0?TX MQL []FQOTK9>BJ\N+?_:LJ\9MU?/[;]?"'2X!>+<\/HK\# $-U^W]UY%:&^B M#\/;J?*VN)6U*V=U[+Q@#NP@QN#(;66\R?,Q;VT@?*R'_:L1_GWLYQ%\_,C; MUXO;P_8;RF\H_Q48J\^EC["A@^]O(SR&H+?#V'!\#=_!J5,V&>7V9J4KN;GLL"]>A!882'13;WVV*94^_>];#6O)7ZY^YA ?.;E_B/^ MXX.DG'Z*#3_'TV%R#9QD9F+BM4S#D:>;#!2;%&)[69U>2*V LZ)LDWJ\F#?P M+M9Z$2 @7&(W23J>9+1 .Q#3VE=[,C(GC8F]TW)[:0!Q,V8=Q(AC[:/,6O'ER"F-) MEL54DI)YD,X /I$E1%Z@A#0O9&523&3HE)PAPQ3&P1-^>;!2I9EK%BJY^GZ% M,)HFD_19TQWO4\:OVO2L'!Q9+O8*L=W%M@,^+$4VW\S*+RBR;<3V'';C.Z.>?!.QT=@*N6*7B=VWZGZEH>\AJ9N%NSVR M%EI-ME6O%-%PB_E<'0V?8>\9!A>UH#(9(O%U:,$3:#6+3)-EBK']8<;"<<:" M@5YFU3PVG$>%]0[+Z/W%&<"5L#_K/T$!O6B,JH)-7=.U@[O$8>9#>[HQ]NSVYO6)CS%$X];+O@*:22;?5O5\UV19VH6 M04TZ//VT97=2DSNUZ2Q%*,9\Q*O#A"ZD.WSB:4M/:M8J-6+1YFHBK#S,9]HJ M0T]0RR.33]]>!EUY/4K"&1.?2[5TTLF*/+GB4T];4JS)\"UN8J@+-UV 9+-5!XA* MZ:\([QO% ME#-:5DHYU2LWCIHK.;-6M5 O1[AE$O* M28M+=!TB-\635=93JXZ1-,C2H9 M,#9RHDA0LWRBO>J9DMSS>WT"JF:<&,N%N*H3K 5Z\_N:5JE#U.L1OO:3A4QM M*%1JC%L:W*<:AF*D>XBN1QC;H?MH*Z'.2K#6&5XZDC<,FIXF!J/"0X+I7LVS4OVW%E _5Z!"ZLDEW;!D=K#)N:CM=VH4X0"T2!(W!9F _>:)UL&2KH M*(OZH"'*[ )1X A<.DZ^:,K+XH#QF$66\^(/^:2 >CT"%T/-9YM^XKW.,% MK5M35\A6?MHTONR*"2M7T-4!<-,U\0$LDQYJ^IBN/)"2B%68)/2'*& MSZ8R-"^E1#I+"*DT*8"W/_$(E*<]0S^>1(6;QJ7[L=0@:KU$NI1(U$I01I,X M)O4C5F^;W>Q A3-GI/*I/,&2_S][7]JDMI*T^_U&W/] >.:]<4X$>+0OGO,Z M0H#8=Q#;%X60"B&T@1:V7W]5HFFW#4UWVTTCZ)J8\=AM&:2J?!YE/IF5JVD9U,E: S;E)2IL4,66:ZT1A-D,D3 MVX@7G#5&Y.2E:/ UNEKOEFVN'[V?3D!Y235 45Y3N EHMD8-^9!THA#<"4, MW,,/]@%X_).?PG3L1P+CX9IC%23P#C?V\(7X0UKF59/*V"B&/SN:\$D4_.3S MW>@SIY:[/KAVAS]G8/KEVU[3@%,97I03GF2E'B]5)KYKA0'X"&4!^XK19XK_ M'V7!-^E9#[^^:E[79:*]J7*^T+]I6AT,9<;&/>.+?[1>_X:HO O6$1+LK@EU?*W[0F1TKZ&Q?I M]5.OGUTPXBO)'?*VCXKX8I.*:UQ2AY3P!5>4>_N"GLM$=,$BB,O!]FDH$GO( M1Q$803[F'!)N9.^\)/L%./[U:#G>P9RBM6'OR9P.Q84/UH3_L";BY^7[/:Y^ M6J.EJ@#\7*-UB;7Y[940?!_ XH-WA%"RGOX BG=X.!AT?^S#)?_-C%]COY\P M0:Q(OL( WM$,[MO&"63CI^.AFS3SQ,4:+YER[F&BJO+P7KH-M^X#7T"?&HEG M]=6D8 Z9ZHO2WBX#G%G^V/?<#?P%F-*\7:%U7?I+^7 M?.N^0BST$GG]^R[#&?+7QTS]8VRBFW8*L'DY/,P6.D;0@8<1I.@W(<*!X MFBQU\S)1- $OF8T^MNRT5V(F9^?Z(_U+?$@P^L[X7PF^W)S*O$QB,A33Y#G7 M]SRU.BF:X1P7YOF\T)N5HG^C =6P%4H]C1>H1^1E>4Q3<(3?@_\0H9[Y\I^@TP3%G4']# >_>=Q%4-3XZD?* "J+%FEBP6Q_8][&V M+'<=S[B$AUPU-YP$T]"")UWW_R2ZY-]7?QV\Q2Z$PP,57"__\#B'!>@\/O^# M!O"K:304SY/Y ;7!APTU(U7'6:6PJK-<8[G^\IW#^2.KB%W"RRS0Y:#SYTM4 MXQN;#B#IAM@=6>:X.QHQAB9\^/3U(=ND[<0P]["FQ+)-)_@[7DQ ME_D8[0T0/ -XZ"1SE5[$@5X.,Z;U17Z\M JAK\MT["3C:8+!+^4WXAU,RR9F%IN<69N-S%*4ADWNY-UA/7(-6:H-$VS[^X:)R7DVWO+ M,')P MK%<%Y6P-NR7+:&5 M&>@1N"-WA,72!$O>DU+7BN<6:(_=AE$4=0MJR8>Z%O?/-1?S(Q[0)>[!]7P( M).7Z6:-FFFO)J)7+I3]_JA:;4=@C1P$'$MC_#EM\A[TBGW39/4R1:THOGF= M<''EJ( \TK-#6M@K?6D"%@2B?- MX>_O(5W%H _#6,Z=1>VY 1R _HNS=!N'NV^!_Y#0'BY8L,YD+O]#VZOBOK'H^6?/%GT>PO WPB.)CQY MP,-"M2S%":*_$P]K=;)ZN#BL&&6JG!&DY=Q1 F7*5 >%]I?O%)?F^>,"XMNL ML;[D N8SGEZ:39FMR=0)N4-OZJ&8TZ,%)-+,B06\4 4VBOY14=/=OWXOF(Q\ M!O&GZR#,6=N2O6JVC67XB4'XTW*Y78B'040^,T6FF;-UF0CIJ,H)53E=-9OY M)K03H6LRV M)6W;$.P,+#Z@N.,3\_>E$.;!%'@>T%*!LGEP6V)Y$(5>2&1!(LO5G9<#/,N. MZMJ@IVSV.8_301=G;C/UO#B<2+FQIG#3X4R<=X28;;]\)]($?X[,$,R1PH(4 MEBNZ+F^"NE/0 X*H&1LQL_:WK$8->V4WACH30YV^*WFE[$2;I1MPMN,E7)1/ M3E2HY.F&^.>"9]0/&'OD'7&C6B%Q;E!<9:7Q8""UVA"\ MD1=!8VF&?W\W(ED^\6%Q4!R$Y XD=US="3G#5:SC;? -F]E)@R5&VAW?I\!D M+>-QHVL.3Q.HT352-Y"ZD50/Y0RR@UZY,I$G3$T:2$Y.<58*1:[:$-E,C&R: MO9-FUOMOV!]W1Q4B[^UC?(8CJOC5GS,!)/41I]4;KJ,^>ZX$&UD,M]@5,)/! M+! R?+,E0\TC;B=,IQGR@GF63PYTXNH ^% ?Y--C_4,.GI\%.[G6*S7'P"*. MR:\Z6M%LJ^I&@&"/#Y\SY/%QE7N12%Y_'OT"Y]!1R/4[C7O(B"/@#!0+)($/ M+SAN[-J/G0!NO/#I]Q-3S-T^>DV<0).#> ?!0)HD-!G_SY$0;0>9F+%XY\U!+QVBF,X( 5/$3]TI^G.% _,HJN!Y_^_?Y'\?Q_^$HD*J#KC3JHSGGG6 M]WMB9..H5N%FS#QQ<=]+N_;0:"YE_7B7(4?V%H*YSW($X6/>+Y_<5%'1_2V\ M)I+ROM]/.#E,L$TME"V<7XM\O<\3SUPP!WK_V8R+SX]O[0%Y9G+\:&(%:\7M M8.%2Y[=5*2\GS;0C>B0_E+IO0O'^$7WYL_(L0;RV43*5< MPB;8@-LZ72([8(H- 4(K6J_(08_#VW,.Z#K=KM"%BF1BQ+('=;4'XWH'8-RB*&P8B/>/3Z1EW MG)^]$\?CL8'8.1J+_DF;;A=C,*W75&6$]#M-E(NX5R*8Q"O4*_,RRQGUG MJ._%87D5TC?;,4;150#,W&(\M$LYHZ$4UA#I_P#;%9V30Y)^ 4=3 M[0>76:ZC9P+@V=%J3U#70'3D'AVY3XS+4HNPV8N@F8^0^3R%K5N2OQNW9AIF MJ*L@LRS(:B\KR$3<9! GTP1];@(TPCDZ<8].W%_?:7D=UN=Z'Y>D61LSC69] MMEJ-)JOA6(=8AU-;B31Q@6GO2?&]WSX _JI'6?QJA+#1:O7=ADLX[J8 M4\F.J9ZI0[Q"P8-DT]0%^A\GR]7]X3>XOPS2OD21*HI]KJYM)']1D"9RT3'< MA^AI>Y8:EWY6LCM&KR<:A+BU^K5*T?($F8C[#9)I!D-G;^Y9(4G^HB!EY>(S MO%_'%&8V/Q4J6Z.:NYF'^-+0;G>-!B@M27-[1 M8U$U#SQ.X^TIFR=*[^EAO'XVOPMX11V*REKLZC:Q:VY 1#[L?AX$1K%(;T%Z M"]);+N(UO!FM5;[*:T(]3TK F$R9G!'2XYD T0H/\*1IC+MSM64_@ HI*TF9 MV7"G!76OF=OP&0OL+CN^ZBG]G0N8 D=PBK3D+,UPV>I72@HY)/W(9^'B+%&: MHY"T6E[5K;H*/Y MNDSPT.\A2.R%^ \!')TE0F>)KN_ G >YA WR#:U/3#!@XK9BR_FARK8AR&%' M-X))8\S[^RPHJD&A'JJUN8E:F^0O"0(/*D%);@E*LL=B7=&%/*L=Y%S;-@(; MP$;P<.(5])>BFP..&GDQJ;\:;@!2[-](4$!U',FJXSAZL%3JI[U%\QY1M<.- M53L\\VRW.'OD!NP6^;(H$$2!( (/"@11(/A) L$?(X[!PQ1CY &CB Y%=,B> M442'(KH_:W'<\@['O_S 5M=2UD[+Z(C$ M7-&I07&B-VI_7*51;A3>D,'M 7OA>HJW%>,79$OQFEXW4 *@]14K!"W@=>'- M/F9WL7UVMZ%XGES=A!E.KK(];+D-@ES&V;8*[#I:^XNMPYLRV1^X$#/" ;5L MKR,M_>%JL\2#G=_6OWR/[ 7#3K66^N4'J87BI5;P:]*OK0!X6+HY00^*W;FA M2S:SZI8J]=VHN!.N:D+Q,OE"&,Q<+\*1=G+%R/*BRSEKKVOPE%]0-J]H(L,RDUF!&G1IN#(^4.$*KEU/\X'SJN4K^W[XS-(M/'M6;_>UG9D9DE:IVRSS_8@LDFDY M[_SL?JDO+(O&T!"KNCT#O4&1PM?1LSONZ\W%B#\^SGRY8>##=8%]7A0?]NCO M@D4 [ GP]B]L$DOO?P.W/OXG>: ^_7O\Q]\3?R.=Y7Y$RFN?3[KT?K^I*N\G M X"0SAB;S'Z_OY7B_Y,WW6!HE6VC(@(F2_-F9C0)J/9)X_G-W=C_"7Y.M( 1 MP5C_?9K;?OA1%$)"\\.)'^:')- [DT 3<";HUM!)U7>D,1KX8\Q65F,')XN] MS$Y/(#H3)[#> *1?'5A.3;Y*W!9&3?YSX\P<&D)-_DK<''I-]E)QF3Y8'$D M/W,M#7C^__L7R?_WO?./R ]'(7*"LCS72UPB(*" -%E8>,^,YW5,F7G)E/>' M*%SGD/D\V.^Y?W&3V=']8W;A4[XI(5B1QJ6"6]IITK8S"TH8;0+,N]7,Z.\N M L8H0<,K=";2@ V= 1?N:KJU?GU6]#56]5/F]!77)S%!]NK5?U5J,90R%;VN MSG6SRADIS& K2ZP;&1S.OR&M^BJK M.Y5Z_1S6=R8[69*]OF\6PYDT:( !75YZD@/-'2O;D&G?SV^FVP.8K4K4Q6A;:@E*WA^MXC4F22!/L;Z[Q@T&?NO:T MI$Z0E#NO@%I>,KI3G.N7;;7G7D-2W^>S?Q'4?\N>3C^HZWJ=K:%ELZ:BE%># M3";37^O7R.P]R=:_Z6G_.+&?3D6FL0"1-:V M?T;Z98WI-U_EE+J6^^6]>1% M$#O6)[KIK*)+MWR(T9AA4R$Y""L:-1-D,FYO3J%F63>95_A$I>$WW^SJ%1CM M4H7 T(O5BIBSLEMGN6"K1D:'&&7.8_2VDQY[P4B(O@X^EF)%4;FA90PGI2H+ M(U LI/:BM,<=I#UNWJAJEFK@3J) M?(VX+3F!8VD:-29'.9V[S>GJ1WI%ZFKX^6)3$C-B=2C9RW:YDV1#KL MT8DQ$=)/B::)36N]Z*2H:FB'%LQ@I-QX HOJV@L/S(#C&RN0,ISHSP %3TC< M0.+&N_D=/S 73SS(/45<.09A@:FA&@&*FM#4MX_23A(\"N%H+5)_W9:3TP&!8CA M$Q7/B1;.?P+U_![I$2%&CQY][ EF!*5ZEAH2-0X;.!(N%>=3A\<%F<)B!X=( M,_RQAX,.7*-)Q(F'LS 'H GL=TP?,.Q%I MECJN"_K[)E6=LG]I=AS7]?K/ MGD1^1Q\(Q8^_(SV1$:UH;CBQ0!(H]-\?)3M]_&,G@$X_8LRNX&BOXM;:C!H8 MTW6_:N9DO%O.%2=^KQ8%BT1<2$S V;LT*NY)EM9TAUSQ2IWI4]+%ATSL?2U? M&%Y].>QUO;K9S.S,:J:K;3!K#?DB\L5('D_S](MC?/\3*-$.OC^@?T7P_F\> M'7?B]3!^]\YU*HAVU?L51_"6'DRG-P,I187E1XJSA3U8'3> ATJ]Z,=.RHC^ MM>[%M=1> (]P!3/@ V@KT2/X()Y;& 9)'9?W_>5!)^R8%#L/]YO]?$LWM' M4 <2?'Q$^LE-Q[_^W__S].9_L%I&=2W7^W:@KB=/-=O[\T3,8CK(3#R@F!EE M&GWQ-\5:*UO_X2DY[BOQ&)-^>Z0_N XI^BO'_4_JQV_A:APMI:UL,D\6[($S M,Q:8!M_V_^KPHYCO#C]S_;B&\)L'+ 6>_8.?_=.GQKL2N(MO1!0_76A3?K$R M\L<6_*.D9AZDS'_UFKF3+_(7CU3V("E!;.4@ T>0>;1(Y356^?.J'BV7':W. MPR;C^%?Z<-.0564*F^ XQD042@!"II@)D#EMRLL4B1$:4!0PP;DO^_MXGW4\ M"B'/,15L\"'D.V*JU*SERXUB]^$T:+F1VY/*_BERS4:W62M''JR8[_:B7^MB MH]=M%IHML2/TRM'?RBQ)\L1U'Z39R(N-KIA//;W=U(_[334+J1]WG!(:^=0[ M$N?;;[?>ZHBEZ([+?3$5+7BS+G[0^^DER>$OR5%"+7+GM!_3<1-P5V4G>C6Z MH1\Y6GXZ!38JB"@BECUB 60!O,.?[(B0 _^"-W_\:GP__^2!.!22P%D>9V6. M51F9 BPC3[ )(7.8"C05 QJM: ]X4PX.7##4JM3.T M2N, '=$W>[FRZ+4<. MYJ]7#D)])6>W3$E4[+99[U&F;;2%Z$KNUROK%%N:@V91Q$"O/"^Z/AAOY+5, M'']FI=DJU&EEX4OA;NJ49K.N'A2%Z,JCSYR;_"8[(8.9F5'%N<.NLPR_%&3R M^#,M-=>3:\-=WP243IF=+-U9./!*^M$_A>1LQX>H'WMZ*ZP@;K<8YOE12OV]%E M2L9^O5(3\*"?L["BI#!4IA6J#8TDX95'CT1,L2ATTO,S,5-O%:MKB1:T;!25 MGWBDN2*$Y6Y0,PEJ,Q'+'5O(!/#*HT<:Y$J,K&^*%,9,:MUL40E),(T\]Q./ M-%]+/0L+^(%(B$VV2K:-/- %F3Y^)*4W+B\\G!Z(@XFZ6I;.+\T/*\NI MZS:*HD'O^%4>%$>[563V^/&EAE/)TM-I,,2:YE1>.YO0TM=K&+ =7:K6^#!< M+<4U5LSR>ENK%"9#//I4\OA2;Q).<[ZM1F:R7/'=L>KQ6CFZ](1%*>5&?U@? M:DW,ULOL;-BMEI1HH_ 3.T4V5+P99LL$9I=89]ZN-VPAU&7\Q%85(NX;-]Q: M3ESFJF8KG,\&4CY:K!-[)/.,L"IM1=.F)S6KY8-8F"[6- M!"2O52%%30_A8IW8+;2"<-)0ZK::J[9W]3S1DZ7B1/V(HVRMJJ9F(-E^D5YZ:_X(8Y\*X?;_ K\+\L(<-=A-]W/9>HLPH['8^'4M%5RZMZWB/]8GP#Q\]5;CE#0#?J.S&D':QL:L-A:QAM MPBDDLF2?ET2Y@54+W196H%9L#[[83B!QG:_9N%$KM26EQ-5FXR6=I=5H$TX@ MLVR&&:QJINA*ZM)9QVLVO#2HX7- ML;3N]E:ENKEL=K9&P:N41MGX4X\65FOZHZIHRKQDERR9P7J,;\ ]X(X7=JFV M9C3#3VBI.336'5!<:CJVAI<>+VQ^W11GM5Q_)6V[I6F(]26ZOH@^]@07M"AE M;(=%HBXI&]ZI97NB9\#3IR>8>S :LXW9KIT5F<9XYTPEO6Y%Q$F>0&*$10Z( MR^T,*Q;FA*.O)]F%'5UZ HF[@K"M<4-!,@>,/E08W+#ZF\AI.&'<>EY?X)U6 MAX%QF]\5Z)G1U(;QI4<[NVQ,U/E2 SUI MV=.[C4%1Y1DZOO1H9VMD=EG9>=TZ5EV)2G]+9 TM\ENB2Q]W-E;T'@6/O6:K MNI85>7K@V^$W3YUE*!$\Q,,P=E;W,?=!W8G5""4,W,,/]EI$_).?%(LGLN_# M-<>"4. =;NP0@.]=\=>E@VGB*\^G_; MRSMP$-2+RLI#=!!_\>%29>*[5AB CQ!97I,@P=^0(/FADOUQLH3BT+XD;U^P MK_S98V)H7ZZS+_Q7\FR=+MH7Q&-H7Q"/)7U?$(\E>'KE1;GR,U11GR?P#RKN?.V:')6QO'&15->" M/_S?+_27WUPP@OB*D1_9#NDU"W;VO-/, R!5C_YBYJ=$1P-PAL/D$]H.,I67 M3*4!C\"=L11$KW<.D<30:W*.$?\IIIZ;'X,X&-G3Y>SIKICZ3UDIHNZ3?C8XY@HB:\UZ)C/-$@-FC#D&^2=]4%? "4'!.)&M4*XP(+O@^B_VC/S(AI;DYJW)T.3X"LZO1Y.ZY4V M/"('.P42=!K'+S0P$Q$ (H![)P#B*0$0,NX'4H,+%C.L*8=!@&G;AM6[-@'L MR+'O=S/X""-F =W,SBC?5B !P/:!.)ZF:40 B 0 ;R- /"3'H!OT2U:5)01 MMLP(LY[2G=I-XMH$$-U8I8B5R)%I; K\;IT9UTHF/'C/?_E.TFR:IWA$ (@ M$ '\#@'\X@&4R'J1Z17QB9D)*ZON<.DV>\:U"< TK#+7#FA!9-J*F).UBF0# M2 X$3$ 2:5Q_L6N=3>5>LJY?MPG3G==S8EYRR>MZRMV+:_)N[0."M#DM0HC"]IO 6QDJ\+L16$]06&E&+/-\K2Z(!$^I/2[3 M']44V).'_/*=C6(8_'BH"X(\@CR"?*($C3=!7BWL<+N'!PK6[.D,S\[$ 0Z]YA'F$>83KEJ\"?,,T0N*"B_WI:8M@UQ%4SO5SCK"/!0G"(Q-8]3[ MBQ.)D>/BMK]8FY2854#:[ 5Y[[,*M!\B8L38;,70 M/,%MJSY%E F5;8C+KL5V!8G;U%38'YC\\ITFTPQV/,D:@1N!&X$[&7+%>7"[ M>*,D4 YEF .:&3=[NVP^E4 M,FQI.2J'X61A3C) B,#-?_F.TUB:9SB$;H1NA.Z$2A#GT>W8;);<&',5&XQ- MO%3UIMMF -$--0><8-,1Q.^J(**Y '#U'3T%-@LX,^_]SGA\1F:Z(QJZ)NX3[Q";^?AOW"CXN:86LM<#L\GQ0 M'8<;H$W@\%XFPCV>9LESI4P(]PCW"/?7S G^-NXI<[=2<39OFW9E;E5*$D>) MK![A'J8+,3K-X#0"/@(^ GY"TX6_#?S2RM>+HUY/$@>-;<'%%KUA(0\=_3B3 MB'-IBCQW9.&6,HE[!:,#HD4)U2#T8#81RA?1&CG^PZ:KKA^@U"(2%:\N*MZ9 M$/$3ZN#Q"O\$%]4SI5HY5'-%$0R'<\==CANU7!O>%"Q(O&"/%X13A--;P>FE M.[:] J=EFJTWVMM\7VKNC&W7J/7$=64=W11LR):FV0M6%B*D(J0F'JD?U%KM M%4BML?UQ<[OHJR(C ,;JNKB5,X7HIF!8G\8OJ>8AI"*DW@I2+]T#[15(;2^ MM6$=P16)NNA-9KJ7L7CH^\8MSM(D]_[UO(G1FPZ!N:4$0$LM%"_8'LI\D<9X M<8WQVGT%KJM!7OOID\&#%]4 5,T#WQ[0W8+@?EZ-7/C.O+RLK%4SUS7PC:[- M,J6\$-U(W.P=9U . O$#XH<[TQ[>P \M%:],I&*](853V\/[FFFQ?1WR0]P+ M'A4G('Y _'!OBL<;^($P*B3NY68D5K6RELST?&R]:T-^@*WB6=0F'O$#XH=[ MTUG>P ]DX.F8.\%XC&G/L4Q7[32F7LP/<;E#FJ3.A1BW5.SPFKYL/3=0K)1[ MXFCU._9H^Y0L^(DH#_';1]50//9 >."W4S+RN%./^*VO$EB5W+5GNZDP:!N" MC.,/!S[C=5<;%:"&7:,-C9VRXLML890AVD)5C;= W=PP%BEL_8$8+A*"J1&$=83U MSX+URU:"O ;KP9"E5W6_[HN&M"5'MB'9C6&,]7UO-S*-T^S]UH*\1K?XT0S. M<%37!JBG/!)RD9![AT)'.89WS?5/$:6:P^2F5IGM)%O:.*MV:UN:U(6()>-: M$2;-DJA'!6()Q!)WKY&<90FY*2RS.V%9Q3+]BKS:<).V,XA9 E:,8&D21WVP M$4L@EKA[>>4L2PB%M;S!*FU)"JG2K+:6[.72UB%+\/$L#.[L""_$$H@E$$O< MA3!SEB760VQ&V[@4B+F%UMHX9G,C!FW($OM#.CQ_;AS6+56/[+^B&/6[JKYM.0A[ ^?QADC:/M9N=X; J-=GZ9M?'UI6!J,LX%2<@ MTQA[K ;\C2".((X@GI ,XLL0GWW-S= MRQ!?8GE#!QR[%(%5;)9%I=BND6T(<9BWH](4?WQZXN_;3-PQ3Q)W?SW("G\_ ME$FG4PX(D,:'3H7<^JF0>Y,:8K@V7,?]N0KA!Z%%JQ!]Y"GGA1FQM4E5([!M MF//'V;)1[64BYX6.CWN?F-GS?JX+PC_"_Z?!_X4KF7\;_VU<'H#AKK$PJPW. M;V:*N_E\M8;XC_4)CCZ>W8,8 #' S3/ O14IOT0 O^*^F1=SPB0_)LR,0(CA M@O__7_L<4'?_V:S\W*LQ&W4Q!EYJ;/"6UZB%M MR[';#P4-(LV=Z(3[QX)&8D2Z-[2V>UK _"!_H*/BZ.#&)SZX<6_:R6_QI]?( M^6.[@P, MI%RF,,QL5PF,,JZ0?.@5SVRROU7%^O%@V MUI UH,+#IDGLK+-Q2R4K^Z_8KTSJ+\OU_;]3$Q M+T@M/!>R1+3CT1\?JEA2 M@;*!(PJ0GHV.JGV6,;4?=.#ET/JBX+EV+KH/PPFC!7WHC>$Z?C9&Y?ZZ'D2A MN D\)7J5&([B;*YEQ72W+\T[-4,^N\3;I=*V)G4G4WJIS^H9 MO1FY16PLP= O3&)!H$>@_R2@O_01F(\$?2OPK>&JV"R8Q2%6(^E):"XJ.@0] M\^4[D^:Q81YN\=\Q]T)N8C,3]I93+*A,)QD3$+E&D7,X/ CS$/6^MA M:1I'H$>@3Q[H[TV&N"SJGQ4RP&(EU&AQ:4O-:GW=Z(]V&MT6(/SW/?->*%*_ M\5*5_5?\U3KH&%#9<,#4""XG:"3LV9'DBR3?)''M!THI$8<^*+W9/>A/Z;SF M:-?02E-5SH-/8X9$15[)03-?WG2R,57$9WUX^GBR*Z(*1!6(*NZE_.3U5$'UFU.G4[.GXG)8 M V(9A*NRW894 >=%XFF*06X%X@K$%5>4>#]"[#E%%<\*->Z8R=8PIUZ4E,P4 MM.CB8+K28O=B?Z:()L\E9&^IX.0UYX<:(#C(,_N2E'<]./0IZ? G]),1^C4W MG%@@$>3W[PL=H+S"8R:#Y3[F[ \(SLYKH-\8\7+R]\"N87D#^K0SC-H)AML55#-*SQS%GG]7Z^%*,]/OG"GLURW$6Y MR,?#'NFVR6U&_?'+<+6NU^H10O.GF4R)-':$8S,E!DH,A D8$B T4&^HD,],;3&0^%EEG% M-U049M]UF/V.6=ED3LD$Z8=2.0(Y"_(\A_MW3R$B#7IZOL*JBL2J(]59T%,L'XR8=:-0'[?(#]ZTI?*)M\'Y6^NG7P/E/]20OD#[I6FMY)GI-G#JN-Z ML\UU@]W&%2#<80EEM#P7F YW584A;UAA #2D[-VHLO=^=/2)'(QK2 4/0#O! M.2O'MTEKG-E*&5Y>S[)!&]LY41Q!7EXL0&A%:+T5M'YHS/\\6HV@M&NOMBU! MZI*%5F>7;UO%<8S6BT?]"*T(K8E'ZS6"]^?12O::Y9;>'=EF9I*1/97(S(O4 M&J+UXN$[0BM"*XK"S\/UV3C7B\(0)36>+ M<0?QGX"64J('4W2PK\/U4VX8^/ T*[Q3-+#][L7(RW>>2Q077J06+6%;BBP; M63:R;&39R+*192/+OCW+OL$E#LS@U= MLIE5MU2I[T;%G?#.24#L#F$.5@2 M8C$/RO9N,&N:]38$,Q.#F>#X-,>AD9X(S)\4;<9=M?22"4I> M,<.8$T. ,/B#.S M4<-6Q4 DBEM#J6X&O?E(@#RP5R!8BDTS.(5X /$ XH%;DR[>P /3SM3H-I8# M003L1!$R8!"PLY@']N(%%_D#+']!)3)A $ \@'C@;E2/-_! ;CQO>^7<,,"* M@E^=F$$>..TUY($+ZQZ?"^Q(L/TA+=[6U3' P98KC:8Q&[5T1M!&T?PO:;TZ3OBNTVZ4:95"9XE0:"(L5 MVQC.0F,70YOY\IU*\]0%SU,DS*01LA&RWP?9OYOX?%=D#QR7)9EJL68J1A'T M1K66/PT%B&S^RW>"3V,4:M>,H'T?T#YZTI<:1?TQMM^9T+,R8$MC"!HQ-VJ3?:H7G_%! 4OB$9\$9EP#LZ2_+,LZ%Y@BG,- ;3]B MF]T!+35S+?C=*5TQ'#^=I0-G\XX<_WTC\T>S7Z%/^:QD.R,SVK5IQ M#/N?_P;N(K[[7Y8B^G'T;7_A46@2?1H2(>Y;A+A6VC]ADL6=I1#CR#SW-##_ M(6#D%']6L-QU"6@Z*$8, G^8!=%G@PY0+<7WC6FTG?!FA6D O)ZR.2%U5%8] MG.3MW%AD9E.>'-#UKKS6X?/ )&0:OV3GIT\/(<0DB$D^*&-Y>291"V(%Z/61 M*58'!.;5[4:)WL1,PGSY3J1)&AWV0DR"F.3F,Z279Q(W\+>]TJ"X,#/R-&1- MN5MO9MKP>6".-4UPR"=!3(*8Y .8Y++YV,LSR;)$>3.S-6_IU:5**-@_]P 9.X,-]V2M-,+EKA1K0HM_$HM-/ MU>,7TJ&(]]:A/AM0;N#JLM)Q:*/%%;)!KCMH-9S99F(),XE")XKACHGZ_\\-%"NRB,<:)J@HI2(C M,:(-]X ?I*+-!BE_K2Q^KFA" CT2Z)% ?^=R3\R=1X3J:,^$:3MUIPV$7"@M M12'-254D// XZZ306>XOC64>71A2J*2%11=-MR_'L/ T$J^]65H0=*R#TP0@\2 MPO[Y(&O^H ?AD1T:(&A.(SYMN5[\%T'@&9,P4"86Z+DM)?J8X%RKGHGL.&Y/ M5'1QL,$'=J]@J4(OXEPRKAHZ<>8$9>\072"Z2(@&].%T40;6Q@7SS4+**/YB M1%6"RFK>AG01JT4<>;:U%R(,1!C))(Q/(O9R^R.&> M[I1BKX+_\OV2S7L112"*N'V?XJIBSH?[%+G.?,QOB9XB95H#'&_X=%=IQV0! M91\Z39#'F>S[J0O:?\6I%J+[XV0/A\N07GYQO?S:Y).L97I63[_V,B6$HZ]> M0/2'K&L/"WB_PG,9T5"DD>4K;;DG1)$G8+&(B$*0A240 JZ7OG1 M'U)0OE&0I[F6RYI=O+$,>XJM^WQ,0#KO],_GI.];[TJ2):VG17^9. MS,OY^<3;!.4%WJ]#"1EQA>:&D84F@E/?<>C7M1\S&9SX(7K4"3H\4.$)OEM8 M_0YNCTU:'$SSTBROJGA[$<5W=-P;&TM3EVQIBQ"/$/\I$']9^>=MB+=9!M-U MW^]C1;7=:P%C-# MS9J3^!6_'^>+GT@D(<0CQ"/$)T?H>!OB&RU]5A24ZM)"PU?JJVTM?L5# M$8/@CYL#_B)A_">62;[_HQFK/]^IKS],\F L\4^B/QX.0GW%>6#_=^'Z!KR; M;QZ Y4LK<& 2>$[JRT]W\T-VRZBNY7K?#C9W^$1HD[-40_8?@-Q?/DKKER.F!(+\6E91UR@EHH6ZN*KF;#&$V];S2;;GC6G8:6-A4%6LY@^[SG\^LMWECMV&>+>Z]'M M1/_S $C9T9K,_!1P8 _V+E@$P)X +T5BZ10TJWCMX8JD4Q[P%T"% +6VZ]Z9PG:$AZKC*?3MBN9&350N-(BRU S(=H2YCAN^Y#%?/.++T&+.?"P$-OV MBZCUYE%]Z+EIH?=?/35D\<% N9M5_+ M2\-I9-,L_=$VGRXSOROE7$LN9,UF40R*9=$) C9ZT?#X<=7:.[YI/MBINN;[ MYUUV\'CCUENP;K#E3E=B JV2W4P7>8^(-NZYE]('<],U7U47IZ95IK-LN9PM MV?XBZTXG;EW4HZB6)\]X9PEYE3V1H54 @Z"3+[>]"MV+;EM1X1E"Q=D:CIYR MW #L8R-E'VKIGF*E%HJW+[&:@0C&D35H$,\:_%U<2QA%8EIJ:CB*HQK1Y7X0 M_2!N0[5_KKU4^40N52V@>%#6G_TBQ)+PMGY662^\* 3U)%S=+PKSY*;C7__O M_WF5UOODJ1YD7R).->@@,_& 8F84V-KLFV*ME:W_\)0<]Y6@'C7?QQP%7(<4 M_97C_B?UX[<_M-\G=V,KF\R3!7M(;&0L, V^[?_5X4=Q3N+PLR,M^LLOGQKO M"A2H"?PK528KJ0.7:BT/Q$DS46<#(U57"9 MIRE&IA2.(!52FQ X_F7_K>^S:D=UD>< #XLFA7Q'3)6:M7RY4>RF]\?ORXW< M'IO[I\@U&]UFK9P7>F*^VXM^K8N-7K=9R G=4J'6''1ECL8H@K[N@S0;>;'1 M%?.II[>;^G&_J68A!>\X%=_R!U'J2S6K?TF.$FI&Q)!_/Y:G)N"NRD[$YF[H M1^\C_X(W!E_&QG3[RYT]A?//+X"X"OB5N?$' $ZI*:8">BI/,%61*4V-?@=( M4J9)@)$DKKO-2\TI XBA('/'5Q;$[#NZDCS:=WO&K#NVN\ R X9RB&E9+SEZY+X>?6:&76>W=FXXENQ< MI6I695QP2I&%8,>78J"Y7"XVS;%47!'YW9;@=#%:)AP_OE3?#GO^*+NHFTQE MTXEX8;9;U=KP4N9HZS4O'#E]AY.:DT:KMRJ+ WT3?2IQXE/[0K,0E&IS;$GT M>K[9:2F]673I"8/*L!DZZ ?;E6A7E/EX* :K^3"Z@1,6A8.=/9BY[L0TY*DB ML1RF#Y7XTJ-[)7=&-3F".YN41(6(;N"$I8C>G,D,6GE*7,Y*B])& M61(2%7WJ"5-IEK1U,%WE:*G;+FQD659[$_BI)VPEUPP,#1"X*"J9E<0U5E-J MDXL^]82Q- +.:)(^4\08;%#9E>I&H':CC3UA TJCZ+8UO:5O=E>JYVGA1I#IZ 9.;.QBEJ,G]8WCFG:GLW-F+3)LM-OP MTJ/=RC.M"JMZDPH6ML8\S9.+<1V/B.J$#U>&E M1]!:>CMM@3/3D:CPJ[DK*!;3JD?W>L(&)B.K92U&N:H9"J!G8R-EV&U'GWK" M!@8MUV7F>3?$PNQ0PT=91J["Q3IA W-9"VJD/QE@S,+/ZDNS55XNVO#2HWLE M,+QJ#C+1/A;73;ZB5^IV!%J9.&$NI2Z_;E?Y?$G*"&-?$&TB9\X%>.G1IZYH M:R[.-W8[(JR&/5\9N2 SB=;UA&79FJW5GL8\[VEBZ]DT!T:=7%@XVQ6=FX_M!+XN=+6_C0 M;VS7^!8K9AOY;:O54KAA7#YT3,7+7E^4"IXD5FG/*H6>.ZZ,UP_'!W[AK!PI MT!EJO,&(Z=8;;@9&0(#H7D\883"6*KOZ8$QBMK&0S*6VF@F%: M.&"$YG];L MWH;92N' 9HK63FZLI>@&3EA6+@Q%=S7M]Z5!7BN[G?ZL,(E@2)XPEU8!XXPH MYJQ*U4%GL90&4QU@@DR=,)=)J5Z:&)D2C@V'HQLMX3%EQ[Y#,-YSPP9C2*P@<>HPSSAK$Q3@)<>.0VNZC=FW *? M2\62:SAUT<'Z8N1>G##"H9?)Z^9F[)C;MJBH:Y^3U_GH4T]85AE7)&))JZ39 M92S*\?)=T2VLX:5']TJ9F#,!53G$(J>EMZZ/>9%C9E8&7.OW)PFSV!]8 [&C*+$8W<,*TA8SMS7"NW)"6*VB2T_8JUYH-S6ZXF2E:N1P[YIDF<$B3S2Z].A> <,*F)A M E:S'7ZPER7BG_PD7CPITWRXYE@;"KS#C3VIL_ORVN..+/65/%L2_$0;>/+Y M;O294\M='V*3PY\SL"+UVU[I64?K]*+(\J3X\/%29>*[5AC\6FKXP<7)3_[= MZ\.QIV6)?U;/2\2:&-J7I.T+_I4\>SP8[K:E)]H61&-H7Q"-)7U? M$(U=V OD1>?X:HO OF$1+LK?'Y2N?^V:'&5YWKA(42P'?_B_7^@OO[M@ MY%>2O6I';O;M"WHN2]: %1WU?46'^'-%QSZ-2F+I0SOSR:^'UNX%:W]J5PD% M'_O2BIPSC/VF'_]ZU(#H$53$[X(*Q[[2S#V!"I9!O5.C)F0D=VPDQ'MPZL=V M3^3_Q%Q@Z7T*UM[[J8+GVJGF L!*2T=/";!*,/)(@?_M78&3K,5YM[D@^_@N MR7TS?UZ4#VH/^>$3?_G%&]M>_TR2R,B1D7\:(T]\'$3=^/;1["^Y< MX@WX)6GRXOST/NUX+CMA["7(W5EWK9;G3HT GL,\T5I'#>767&R.6+&*":!"$+)YBP9X?AWG8,O'<*DY]"+_J]!1[F3PM/$'C" M'6WJ$,=16(WC:1(_CJSO);!^\#V>+A!L?.%&EF(XBI4R M?#\$*%?8V?211Y,@>>!ISV, =(D4$2" M(I+D:1('K.X[$V?IANXJIF9*/M&^38<@8&J0%"DAB*U1'HUW9GB@2P$:^X) M5D^P6*%5QGN$4U^; Z'$NV-:U\6F !M#1\X,F\9.S+U$B$>(1XA/FBOS:L2O M PH8Z]$J>IMWYKRU\2I5;!$C'CHN7)KGCF>SWID^ RG+0^>MPJV+4MQ G$9&@O[Q,0Z MV'Y^HW#V3*;GV-*IFG.^3_JE?#P'(_*,^&..?+\CXP@DB#END#E>DK+BK.I;KUCN$D2DSM7H;SIN"!:.HC00"+P+OA[:2> MXJUO M+9M.Q3;#_G*TFANCQK09@Q=*%-3=UX\\S(-.@8TZ4QP=I/[2HRCF[]C]0%'& M_409*)5\/SK#J1GN^^+:XA/9<;J;+PP&V;7++:F;3*?4='?+!OH86 M8^[JO$LSF $/A6"W$((E?@6N';K=FV,38_.Q>_N/YNVPP3OL[Q[=?@ >Q ;WP 872XHDQ4-]>(/G M8J'"3\'"BA_]+..*BKA#AV4H\5Y'Q)&.VV#"4ZUVM%_Q[Q1U&1K[*66H]26* M;&XCLOEUWMG+GL"U+0#! L'B?F%Q2V$O%W^%@(H(;M/M17G(VXQERX[J <4' M>;#__[)S@&#G$8'GPE@VU[--?]!J8=W.VI(PM*,).'^#9CAEAE@#F517F Z1#C##Q,_?[5C$GQNW_-]"R4 M+92DGC@K3RHC4"CVP:'8Q/4TX&7V__X;OMBD?->*?,I_8?%_[H<;D_?LB:+3 M:V6=6GLV./#H8Y5E[0F5+XYLHTHL;D')IAC@^ M+H*8!3$+8I;/(!*]C5J>==B::Z>V:4ZR/I9ABL6FT"P.EDL=.YD=19[O1YN?AB.32XAWYFI%,(;G4EH/(,YN)1]V=SYQ?.54 M9\2QBY6Z8K-K=EFNJ/N$ZOLE/;I/Z%=13)I S5 1'2 ZN"'WZ(_H@)NQ[3*_ MP@OB(*N'XJQ4:,AB&](![$+"IVGL6)B^%]GJX1LF/WW#&D!SB>[;TN")'^@M MP0. ?JK@N78*9B?]V%GZL:K?_OG/!,6>J,#@/@L,]@_[;H^,C!P9^:T8^0T% M^,R^6B3TU)GBQ^V^%P\M@.,D##BT $:>/$HI)RBE_/%*Y87[=RI;B#*_YPKP ML+<'?FK$+3C:N5[<"S\3Y+214988CVNTU=&XXG76,A%W\Z32!'7)=MP(SPC/ MMXCG"[?T_!,\#^>;T+.P[-P$U'*S*0C;,F_%>(Z'I_'D63S?=FC]X(]X;G0/ MFI^:PMA9,_R%N^]_\0$."@HQKAYB)'Y1$AB:W%FJXL 4#P[,9KD!09E.K3G MCQ9ES;0WH^J$F7=8?"C(Q+YAZ-GV@(@]$'L@]KCMZ21[)R(;^H8#?/^G_EF/ M[;7B<@9E[YQI*!I">H1G9.;+SF[?SNU<-#J\PX#= T)S"I/+#WVBG MIOJH3E@"0[;9F@H&Y TVF,/'O _;:%@U\K%4,XBMUPHO\> M$N\7J%)$CBVJ]T;UWHD1#9XI:'JLO?FIH.G9XFYF04VS/%M:B$U,,739$Z;4 M:"T3]#Z=@E$$:A."& 4Q2C(8Y2HEDF]D%"PCUS,]KCPTF[E-P9L-.*MGZI!1 MH&/&IGGV7KJ//'S#6RHC"X:C..HE*R,1@=X-&R:)VBY2X(AL%=EJPNL4DQ+Q MGRH5\,#*M5;P9:)Z0#."U%114?N(NTOQ7=T%OVMQ'QDX,O!$&?A-AY!/*UEJ M4,UO3G/QN^E$H!@Z!.>K0]PPG]Z;*=L#A?=&@;NR4)BRE95V8G4;S-WZM./S2@SW>(H%C5-WDD<^I>T;CA_MAZ." MU,(#MA':J>DA=8SBK5N(MQ*_ M>.T^[D#)^J>> GV;-\0&YK#]S'DH\3%)>C M*SE1&)J":1?[G>ZT+=8MM0UO,9YWP5-HB"A"/T)_=J;9;Z#*)QWT+TCR&)I0B D $D'S_YW<)@)?J>:K;WUGFMJ>Y MIF+4&E4[)H#8_^'8"[1^NJ:WLU^D?3^&A1%$;H\%!W6@0H^;".D^30(=%7H@ M.[T%.[V7=^@A);)_58(:?"<\1L:'+@DG7I]BN9,?F![1PI;%Q6BWRF5&84>0 MR7WGQ..V7W=6Z-%3-@ .T33BS@?1MCE@O^EK(YBE@+VPW"T T5VXJID*(I_$ MWZ\#J@"YHQ@B\8N"8H\/:R?= 982 *WG1LPPB#A@YEIP70NNUYTI'LA&M*KE M7!N.*X[O[@2E+HE";E[*U2;2H+KL%,$@II/(0V/2!'X!)RTQ%2P^B/8PVN=MRIU. MHX]R],=VE)'E F_M13;NP7[7^RFE*+J\A>@R\2MP[:@4J2?(OC^7?=_VV_YI M[8;OAU"!:4ZC][KM.ETH'9RJVE)K=4Y;:6TS(_;&DU6NOV[-US*Y;SW)I$GB MW@LW\B!ZHWM >WRU1SOHO^,K''G]*!2ZP5 (=:M P+C^HB00&/>B$>S+/9\< M7-F_!@^.0PZ^!$^=9,'XT*'X34=:$E.JVN1SPVU>D$GZ8<853=Z5#I W8/]( M1_-A._@21*1&H'])X@,BZKLIM-N:J+VU5VC"_Y^:2E MZS+)P/P(E^;Y2Y9L(N CX']&X'],NN,\\ >#;:$['H_S&"@-6_0$!,XJ(T#@ M,Q#X-('?;[G)K\,V_GJ8MO$W',X9=\I.3;8_SJB@T1NH4?XUJMD19UY[],9C MK?OK&N5["V+(SO),2UPJAJF7J[:K5MLRR4)G"N?2.'>VP0&B%$0IGY=2[BP- M]29&^95(UEUVVUELMB,IDQ]7RI3?V)#=-202>(X&3Q/XG312W7^#.)T"-:XC MB9871#>8 AMUIC@Z2$5;!N(SQ/N!IXZV_PV9'M?* *^>@1\<2X5 M?+DYE7$"MKZ*V5.J+#J*T70STH#HX(I?;+2TYI78\U3CTIPF++DMZ8I=%9L! M9:%A,TF0J;AM,46G">Z"CA7RHA G?#Y.P&7+VM:ZS;9$2V%V6?>P3&U#V>O$ M< *U[,T9FNSVI>UD:K67N5=W(=5PHE+>+3N#LRPZ% A*&O36(]Y25EJA+"2&2)932BA/RINA2$R<_JZY+&D4%A,) M=,R8-$G?5778/Y.?OF$-H'U$-VEIT5]VP\7" O"\@V*E8'+6D0^U=S/(L_-M$5H16C\56B_M+;R$ M5K:6+P?3;L,2PVZMN5[V:+#LMB%:]],8F?=W%I+E]OYNYJ#A.IG8]R@[JVB% MXQ9 CI9Z/+N?^G%X_WW3"2B4NGHHE?A%N4(<=JMY"&0Y"$X(3CXRV"R HQE!] 9''6%0R/%90XY+G_^-P28^ MP5K944/8,#T;!@TW&($X'#D1B[B.I[87E&=*]B1/5AOLR/?[_Y^];VU2E$G: M_OY$//_!F-U]8C>BF>4DX+W[3@0JGA41\/2%0$XB",I!Q%__ MHS/4-/3T^/ MMFC7_:%OI[N$RLI#969=E6E(.'&\N0O2!D"'@0Z_S[W;-^NP.7=WD]&ZK(O\ M=$*UXK[(\ITHU>'TQBSY$GHY\SS^':3;]OD5[T=-.UU->+QDA+Y>W<[NVBE: MFJ7Y44?2*9V$25AJF6.S3N80IZD%QTT+WLE>\FLG._(PO,2]V5A\O6&J^ MEDI/0D):LSCYE%V@2OM:/A8L3H;[0?*+K CTYS/2]?,5?ZTU4\W=E_\F/QZ_ MI]B:[*468/F?[YF6W3\Y&3$8_L=%W.[O>8/BCP;L*V_()Y/.?O[O_SR=_+>@ M 5)H1*/Z%J>4PYH9G=,C1HX6FR!*^D?IV\=T-7)+N9;WT),%.UG)X_V?Y59N,??N;Z9H6*] MM#>JN=/29W_WU(PK@;OY"T4^$Q=BR@_J@7UCP7_ETM)+C>3?!+;V[(::?DZ, M3F+][/\\S?*=?I5VE4]CA10/G-KLCIM1B>_7V MH,D_'"]VM@>UHXDX4E%C!SS;:]=I@:GS0O*SSPP$GFWP+7K$I%]E1CS#B>WK M$L(.ZLR 9^JEI],M?9MOB6V4GLXXZ]E%_J>4SER8O9.E_U7^^9^B(X?)#JRI M__J:0R[ K-I.LLFXH9\X,>DUQ[VB) MZC&UY!+W+#>RQ7<-/G'*+&92/U"5CM+3O;4AH1+ZXTBOI:[HUJ2]%4,#&4L- MMVU*0CHR]\PQO9M8Y>&T!F]%:-JA!_IRP*4C$?C'H2$;UGR-;P6P;%/MP4*: M- V52X=B/PX5N].5%/JFP,3]0[U!32A1W43I4.+'H:PQ+N/"@:R):-QLD1U) MP[$>+6%YHOJZVN!VX^G((C1ELMQHNB8.HF0D_N/(BM255_TQV[:ZI&S5^XLY MMAQRR<@<^5NL-W$ZOSY.\,=S*'NU./6;L,6A4@KJ6EM=F?(;]OU [$9*4$(M_O-]KE:0]E8$[" MI=S[-12:^4%[OX&U,<%LPY9UJ/!)5)LG?SD0B.&\UQS A(8MR+DL[+3T\E^> M?+NQ64I5QUU8VP#7XMIARIAL.C)//J?1K79GBD7PI#JC!U*CZ==<.AV:(W^R MF%8#OX)VF5@_#.#-(F+WS6QHCOR64Y;;Y&1.B!K)K9A8M:ODRI#*>?*EUG1. MB7VK#WRZ#.0@6\W8;O91+UT9/G'D61WPON- M'3N$XVX/5<4^Y6\K=#*2RLF):6R'M;8X@.5J7YEB(W7K?KA!C,"LM([8 M;NZB9&1^HIK+!L9&&_>8[F:KV\O(MO4&G0[-*4E+S:1HFM7"_2U^=I M2NM2L:/^H2R:WEC8,0,3UC?94W.:7UTV1UU*0RNPV?,'/N=-Z@Y.)Y8S1_ZZ M?!@D;%S33+QVFGA7[BN6;20C<^1W"0VIU/;]$&:K,D%HO0#V9^DS\T2AP]9H M."$W,MR<^!R_]V?X2,R&YHAJ<-W8.IB>S=3TV'/L\=3:^'1BH?)371XZ:!OU M0A4F!)DOVU5^/4"B=&A._*I^?0(=F(!+N-!6!_-!6UL1V5-S9&U%=67& Q1F MML'.]]95LM'BN'1HCJU[6>T20YAE1:(F[F5ABB]P,9M GJX.[Y*6*-!CAM_L M ZE)P,(!3L8B>;H6"%2NMX-IS(0[-"!66K*[$%PZ-$?7C-]H58E4IC"Q]\K4 ML.[Q.R<;FJ/K8.Z#E;8.9Q8T7\%[HJ_L$XU)A^;H@ELK+488<@V;:UE@C75Y M)=2SH7FZMMU011QL=H!CS.=:T6@<(B2=UB+)T67MV4K"4):'T=J66%1V[O*HVS+[3-,UB#+9+KN]290.S8EVWV6WXJ''$7!MSI?%QHP=D6;V MU/RN9O&[UMCBL!X,C6*OC+?[9JO-96-SVYH_4'J>JPE=QFQI?;2^HFM\]?C< MW+Y6&4LULPD%39@71DN8Z-B!["?/Q?*+T*26@;^=[V*+CT%9*(S5<1,7)!F:WP>FU@Z;0NS&0F.H;J%5?T0X-5-A M?;?59^2 -VH-;*/5-W0Z-$=7W%J<%?U.%:8Q/7]N&6A>;94W-T-<9:O;79 MBX'89/L]F5FU#D)B#9.A.;KTGLEL%\O)U H1G%;U&&J4\6QHGBYI!U'ZL#VN^*D9U>&%C/2N,1C1I[Q1'A&\/"=AHD, M,;3IJ5M=URIT]M0<7=).E8>PD[BTT!2W=&J#64$C&YJ?;&UNUO&\(2[; M0\G$%W0Z-$>8Q@T'Q!3#]A:K-H:ZI6^M?IP]-4=8IVN6QZ;1VXO-FH2P8VGJ M^[21#LT+(N_,.)7LV)EJ#63L<_X)9H8VXH^QL?B!))K37>+KSI M98\"J]G&$$3?+@Z52C;9O/4\+%;+;J?=;(G:@&BTDD =VX^.8W/66S'6TO=E'&'>ZK$ZXVS(;FF+MM>K9#05L# MYKM:36XKR*'C1.G0''/+_"*RZGZE;TT6G4Z94+IM) E*DZ$YYM(SN0*MQ\L) MPQX\=VDAYIK891/(*RX"N5R7;+MU<:)/J+K6M?:+9"SZC"MS$"R,U#L"#//N M$*6%MM+T$@U#GW%EA-9!4Y+8D;/"J1K@L6;UMU3VU!Q=5;T[Q3MFN\Y "VY! MUZ$95S].(!\>Q(-M4W;J>W'B.H=N!QX,.S,C'9JGRRQ'S5B(H:6X'F[7_E3: MZ>PD>^PS;L^L-RB7R2IK-2%-[]-XB$&;X]B<+';7.W%VJ$,#L5GGE\TU95"D ME8Q]QD7JM;#N=-ALSQ@6(R:CN;KRVCLZ'9I;+ZJ-A,3&8'T82J+^O1QZ.*T9 MZ=#<>F&CMKAHZXX,FV7+-VAQ,S&"[*FY]>KA6F17VR/.0BTWW RH8>12V5SS MZS5@UL$.XY9KF-T'LX[5,X)&XJ&@S[A((B0;BL@)>R:DJ@)DFOIP%43IT!Q= MM0 UM6'$KJS$;-#4GL1ZKIH]->\=C*J##=,>4XS,=8/)9@6W.V'VU/QDYVYW MNW&5A2O&K;;0W0YCS6T?Q^:8.Q]XAJP-14<,:_OUH0T3N(@E2_N,V\.(Z"X: M7O9V5N%U7V5HRW M#I5Z9$]Q/QN:HROV@\IR3I77<$@3)%]#K$&3SB:0HVM)MBJ*".W:C&P,_8G: MA*ET8TJ&YNER_$K'8)KLP.KZ[9H6M32ZFO+K&;>G'VDSVH/F#&.JTM+=[,CR M'*73H;FGSOQ%#VW.]UNK&>PD=[ZL6H&;#LE96KC6M5GQ(-9J:*<1+'YS8Z87(,5G].BP=5OZ,OXA&>7+^].3Y;O), MW7:CQT3WX[^A%"#QU_$T,4K6Z9<'>:?\>?;BQZ'RPG?M,-#>XTSO-;@8Y#=P M,=\.9?\8(X._B'$$?+D.7RJ?L3+@2_'X O2EF'R!/U*RI<*B/>+R!=@Q8K(%6#%"LH7 MH"]%Y OYF0!><@'Y NQ84?F"5 !?BL<7\G,%\.5R?/G-@A^_/*2\VB)0O[$( M%S7@[W1#^+5KDKO!]4XU<80$%NGCJ9OBVNDO_]\G M]-/;7:_+%H>A?G^]7KJ93">S2QTTV7YL2;P 9S_>28;<3S=OA]O/],1_U8,Z/M(QI];RL1(W)64T%EA7R EEPCP M[D=*3MTC@)A<)*2[(SEQUYO$,=,85K!UF5;9E1]$>2G5-T=:+QS09AISZ=:0MHS4]2M]V+$AU%%QTNW9==)F./3>]+^..IX+92="_4SXI):XE@\:B\), MS6TPJX4S(-9L]+3Y6'O0^)WN8]_>< Q+V3#P4T(35GSM. 9_[3A&DT.UA2Q; MGL5/%[ C#=&-!/7S#R (1*WXOF MO[:#X!74_K=Z#F://F5ICS-YIKL@K@@\L\09QHJ]GC/JQT.G64YUO?SIRT7Z M@]Z]BE^GL?6E5?Q8B :H^&^I^#?P?'J$WW9.>9R3NBMU ?(L>F6(&J()+<0X M[%W4N*RZMZL#S,5VL"-.YGV!V?KPNNM%4E8\%X6)AS(. Z5_&TZ_8-2=0^D1 MH/*_K?+?CM SO,5W*;EC,NZD_I6*MYQK\G1E;2=E!MW@W?FF05]6_3OATHU9 M0K8M3>]:0CURPWTWZT>&)/K_ %,DT/ZWW2PH&'7GV?*)Z_@R+^E_CM+2/XME M $9:()N.IC*RYR0KXY^T77?FK-)N3V*K&>\[SA@=C8?GUO9DP9+'/*/VA$B@ M9@<^D SK3J#*TG/UD,K4'D^\?/2!Q//1_+^ XK_J$D3!J#N/XE>N0UBQ-GZQ MLQG))NM"X@0=(;+?' Q5EKOL!FT+W5V'<[D-W*W7=[MQISRUV4Q3R4]?$*+\ M0%5>TWEM1GV'];NCHAO% MHOG=:V@ *;Z\%+_#E>%BT?RK(MQ BF^-H^]36:-@- ,9OB]^ODM%BV+1_.X% M*]X_#*V'GIP^1T*D+ [%),&5L%-0BITG&<5ON;XJL ID39Q.^4!.*JN!^O:# MYB2&.V:V>Z[O/Q/4C@DAF-9WDY95JZ#HAK 1".\:TK%),_D P^CELLX?2S_> MIRY'L6A^][(;A;,)@VYT@!NQP5GK\>!@^F1<\:9O/TC^E3HKH8"5QVVT#4,Z MRG)MF^J[(RY59_+7ZGSC<-%CTJIN[LQ$FE4_76);]C2U],^_O\SSXUEB-G:(X8="4;^*2Y, :]?1M*\"N!0\W+$(/U$YT_H@4'LN=)C:8^ M'02.K3/-&<:P?:B]J8Z,3U^2-:-RHE#::%XI6X*[/6%X?QMX(]#;)W\)UN5&\9U 0=XG-0K6Y2:QD$ ]WB?K"M8%@ 5O M-5O[-;9_)K537ZC]4!PW$;A6[<6RM&@MJ)"6B"Q3BSY4*.*^<((%5ZJK(0P+ MOBZ%!"A>W=B<.0W\DIV(S"G,[L>J*4+N2JIPL]W67AFIG2!?82=N#Z68)46A MA>QK:5F(]49S_(P3X)@*@!NO7^VRB";ZW5N,%7$1 /SQ[EG\/GC(@B]"$0&2 M10[T7KX7OM"0&&W344=<4Z/J8M\Q@]GF[5?%:'45^D$Z)U]P?_+F[(PWW!&PM^B(4SAB!3?<&H:\%7X0B8F&!G-\@G+/@ MBP#PG6=.[%W!(6Q #J).U.T!-IOS]:S36QFSC9$XA,=\XX5U 1H_@RN0U MKF*53-\/-361&E7S2MIZ8[NQIGV76"QM;-GQ;_EHI5A&Y$8 DN>O37K6N#5? MLG #641],:S"8E.#.]Q^.QWUM_3;*Y5FSVYGZI',/.'&T<0,B4X&" #1E4=:ED&C*5RC([<$(OTL"1F:P M7&JV6O*TK%QT*7!+CA8<[T:7?"T(["PC4W+UXS< _O!^\(>Y17@U6!CD_I[( M?[[H\;?\'[H*B9JM-R;,%E<&[=%X&[4L6JJD^3\$1Q]@,I__.]]EAD()%X!_ M OCGA=S,#\YB /\L!/SS[=OI_>,_?[*M9D?UK]U5OYWDS]=N.>HQ"L>@(W%Y M0(V-)$RC9%?-H)TD6@9[*L!V FPGD'* [0383B#G -M9<&SGU3W',X,[S^OM M-1L(1MRZSG ^0'QOW-87[&6 :#X/B;? M"]D;&V#TGA7^0J?,7]U7>T"MQ_L)RIN,; W=Q0II1&/D[6T[?_:V4UQ0.X4% M0AH5'->-=E3A6XSP[;;=0 M879#W0]?+_A $GKD( WEA:X([3$(S)W@F!&.[ MK4-UVI5JXGKND6(KX/1Z1$L(G/7L)N$+UE( 6EO$UMX 00GV[CL'3!9K&6X$ M'WG3: M:9LYR[]FQ]XX7DSFQ_+;)SRG:Z7K"IT'/P7LMF7?-4^@ M!3\F00NL [DE*CB*N&@IT;1?;/UK",'L%3M4CUB3;/;)($^3_;27:/9_6@\T M[TDQLC2B2^*VQQ#MIZ 4I[EOC-U>>R_R2QSU.S-[$AN&A"!91A1Y@$GLAD'( M!5/9ST50VF*MR2D=6F!#!C;SBR1"@1;DLZ(%UH*K;^?OE"-]IVT7.D2]YES% M(4L6Y"X-MU8CLWK<=LE7;+LW#@8]OJ(JV[*C: ^EONPIRR,T$D,>CA]2GM_K MX=/E4:!%MB3O4:B3]B56/^/M?*0#F$^MM!U8IMT5[L#C6""SD)0;/RF^1#F2(>8 P!X(7W MQ]U>6]->6J:_7Q)I>VW"KWJ>^_[VY??OK2Q=.V&0?YS),RZ(L-?WN+;%/8;M M0BVK4V_T]_7,J)0_?<&!+7E_$/.U5>K2MN2GL.5K$W[#MN3EZ@>SB6&5E36S MLX@V%8W(Z4X<17]8_>!7=J45]UB=COF=V-UM:W6MAS=D*4KM2EK5 "8>\#+P M5*Z $;^VDEW:NOP$77IMLF_9MKSZ3*3-3I>*XPP1!I4[GK#A@X6QN+#_4FFT MZ\Q.J<+,>C#QS7$%BH0:G=J9X\D%B<+ S+P_FOO:^G9Y)^8G^.UK$W[=[.V? M69J1%LBFHZF,[#G)PO@GL]*1&W53=U::M3X(S=T.=YI6.SJO6?EIBA8;4;55 MLQ]-&=.?;"M:JW0OS$XC\M0DOE"N# M#"MKCZN/-Z(Y(*U]W6_ O7^NA@4:9FI*O4-,;1^,>,SUUII7_^_66F'[^2L?R$S>SSMAPY0W/$H"O9P"?-A3'HG9OSZ-N EE\)'&I> M!KJLG^C\$7 YD#U/6E3G8TEM5LMB-W#G[1&B2;P3??J2K!F5$X721O..K<9 M_O_<)1^*7BD&%$KZ""5NSYR; U+] :6Z>)5KSYS4 U+]T:2ZD 5ISYH-!#+] M\60:U"DM:IW2W+I<[A;RS>0@O\:USR0V1EW!$WSU(%EL5XMD*=+HW9"6$/R( M87N X4NV[?WP.@1JOA:WYNO53Q7-?'S7W$!O+7 M/CP^YPUJQ-35:EWAIE8\%6?*@-UQ[>^O&?R.E_:D4I3@_N3%V=GDXL?&HB,M MH<%/6,YKWLY4M&,GTI&FN(:3/25K2OJ,\V<) TB>1FO6BC=61QBWE_VAE3A_ MY6.3>1B_X&7LCZ5XU\=!@@[R8,.\=< DZ \/I/CVH8 ?L?O[M=V^\R;4KN"J MC7"K.A:AC03SNS'%FZN!J J9JW;L$/^RKW87*,2/WB >P.S ,?<'AMF!3O) M_#\P'@]TD@?B_X&!>Z"3? &BJ$N5"&3TI>*(M3G/0)&/NKV6*@W?#GJZ=HO; M?6,BJ/U>BX%KRH:MPB-X$1^24(TX%A^D\I7!@.T" ,W[!VB"K1N "C\PJ/#: MF_=Y4Z#7WF2;U<[ :T^]IKC>F$S+<>#YI'O<9,E?;;*W!UH$?>1!'WEP%@CZ MR(,^\D +0!]YT$<>: 'H(P_ZR%\]I+KM?.AYV]G^&*#U*8]K!N*L#K,(+(I4 MDSE,="Z)SK(L* 6@Q6=.>0+#!3K'?VPM*$"7]&*M2?$[QU][ W^?G.AE-UH. M(K UU.85<W4*AX&K>)!J_@S MM8I_J[^?;^4R?O;E_/W/:-);=55.68"Q_N)U4!$BJ+1 MS*B 5O&@5?PE; EH%7]^6_)RH8-:5UDXTF$PL?@XF*&.WUJ5-Q>V*^*<*D>P MWS^(36K#V&NE;PRUS*YDK>*I!_R2[3$^O'4!K>*+1?8MVY97GWL,=S+1(LDZ!/I X '.#ZAN/"-0SMX,V?]8JWAITYJ(F MU@_,=N%L8;^YX$DF\V.R,KMP8F#R;:%!G5W0*OYB(/AK$UXH5X;W&HV&,NE6 M88BH3@9-M=/>-8W+NAQ(U3+G^&3;M,QP/QTM(E><=8\F(<.NPP]E^/P]Q:Z) M7P>MXD'UW(^QW8!6\4 XBRREI*QKBD&0\LIBE<$!;@R\E1G2;PX;?]6$.N2$*:Y ;H=!9\A>*H]Q M+RA'$E(Y]HI''N R!O#T]U(@%O2*/YNR([!+,Z2]%"Q"KZ(38@X[)O;VU.^O M]#2::LZ:JVX75CPI>^;.$S:P2&=Z2KY"3V\]"/R'90'O:7RH#GQOSW;NGW> MEB-G:(X8="4;^*2Y, :])VTFXVV] M7:]ZS'8',>M>4%_+"^/3EV3-J%Q:L+31O%*V!.=#@WXL/0?HJGOCZ/715:#S M.)#BVX=A@<[C0(IO'Z\%6EH#&;YU8-=';&F=6X2S7R.\00C8UTCRN5JJ4\]H MCN>#H1@/A5CVNG(U(B()18YW"!]@.']'&02-MPK_^HC]P:]N$LX,%'M)FVT- MVLDS(^1$:(5-INUA*. ZG6DS^0IMO@N06)8\@[+VZ"E([&M_=)#K!^@NP'> M[@+H+B#^ -UU]^BN(H=]+Y?$8]GM8MB)>QTQ]J;83G'#>'EXN[_XI-RWX/[D MS=GY8N8RU9YX3",M(<)/Q(#7O)VI:,.$+:XZTA37<+*GC--F@<^XH0SNAK5@ M2DD,*HCE+K3SHTXG"2K1K,#> UP&A8 !"@^@\, >#5!X (4'Q!^@\#XF"N^F MTY!7<"M;=4[&O&:M#?-MM6S53&GM1IE;F68W?^57WA[$\=3PO*2<.IZ7@F]- MSDORM_6_B^,84/CL1ACU$:%YH/ 9$,["(NY X3,@G(4%TMU-X;,<9<5&%KV^ M,\(,=_M"/ IK#-3'&NW '-%\[>UQP<_>=G)F:R=?5DA=V>.ZI4THOSFVW^** M@1:P>MJ>TO6R/P2!9R["0%[8FN!^[5GYT^KH_>6.GT ME$9":9?H\B5+HW\T*W-MJ.-=U[ #6^!M@^[NJ.;:U3?!,R>QBK-9E?OX6!YM MJ];$7CD":JT62(/+-BOREYO57<#V:DO9,;2TDILNFUYIE^8 T^)MZM?NULG? M_, +SYOR*LPJ7"0+=O,M.L )$6@3?/;T6P&I!UIQ;:TH9LNT=\S[%9!ZH!4% MR!X64"[>+>%80-J+##&X\11E6GF[_C7<8/:*':I'Z$(V^V20I\E^6HVP29/W54(0Q^.'Y(&7L7ATOG3IY^ M9P>PQ ZH;KBPM=LV!*?*ERNT/&GR*],0U\2.;W7ZAUGS0#_7T/BM[OV34I8G M-UXG*''?H@4--HT=:T_'Y&",?F<\VH/&VXIE9DACGPT#/Z4SX<2/13(3M<=0 MN]%L>=:,Z6X\!Y>HKHW0D826)?33%XQ\*%/$ XQ=\&K:Q_(N3IGF:RO12XMR MCE[HIY3RML$;SF<9%-C)M&:AW*G[[@P"B< M-=%^;6VYM%$X9=2O3>8-&X67K\A+/91R#+ZS2MX_J2^0&8GO]+<72'N5@1BC M6TL;;ANF*&\FU?G*3X8O,P.17FI'X(KHL0_3.3\9.*JY,:SO0\7A<8WL)KUG@B]S><<5[[ M\%/PITW5)@V14'2&6&J]\@SNKK:;S+-(:["BZ -1R5L*<%GACPX]KJU#ES<5 ME2*062CG8D6-/4_I+II6N$+H5;U."\O6F97\1]U6%]Q_G_,K MMW_4[;1M-U5YJ%1^>=[P[PQ'?G[1^U$!CW_Y>O*%)B->J9-GEQ8EL=R:]\)< MLZ]&6BI4B3+8ZG^*//E,Q],IG21=6&HE64FKT\I.G"A=R7&#Y&6RE_S:*9G) MMPU/MDL;V^K9_V*'<2$HYE;9WL2#)U?$NZZ M8L[!+,$LP2S!+*\_RW^KYN[+?Y,?C]]3;$WV4E=K^XE<2J2>3SG[^[_\\G?PW9 NDN+;K_?7H\SVA:GG0T\6 M[.1L0K:F!W\=O_7XJ\Q/?/R=ZV=9X+\\S1KJ>>: M76T[2:3\&JG\?E6?6Z[SK$'.W?J%KU:CZR.FU&)[]?:@R9^0)NU![9R>R6_/ MB1W4F0'/U$O))Y[MM9, (/D'+R3_ZS,#@2^QC1+?HD=,.F]FQ&>(0_(_)883 MV\*L!*7?$]H#D:F_H].[^*G'^^G+/T5'#M4D!%3_]=]_+][3%7]Q5FTG<5G= MT$_B-?^AI.T5+=&8KSU'2_(ZL4J!_]Y3OE#T(&>AGJ0A!$4N<$*J5&1"PO6* M+%$J)4N*#,/$ JM0,+7X=-1J^3$XK$FR"BTC>0-W8XKD*SKL;"Q:0B3RQY'+ MB83/#":8,-O .:R)R%:V/B>A*73E^Y%:'Z5UU6L@<"C6JS"M3C7O0"%D?RELG$MFH8I.($+I+,7T]@OTX MU.IACLR1OX*I M6 TW?"^Y$]YK;]*%Y\H6Q9#OK MNCF"MXM@T%+&W'RZS9Z:([^A=+8B2;=D9K+M#QHUVJG:ATC"I=S[+;BWX?O# M[AI&N7%WA?@2&T9<,C)'/J<-NC.ITTAXBD(0I^M6;9B\'L^3#S7;[?92]^M, M\]!:[V5MK([$].UY\D6G <^WJSA(N#\6ATS;3%8J&YHCW]39=5F?AGMX*UA2 MQYDNVX,P&YHCOV[U.!:;58;6%FY8DM%#-0XQI'*>_-UNW:VIW=I.C(?X 6DY MD#D(TI$Y.7%-0Q\+#8UAFLV=+53431VZZ,0YK%=N%8H?>]89NT#BU:.I[B?#^TW*U S1DSE\6P(E55F[6Z MR(J3B#Q)F]9N[H]:3$6L+6076[-3:>?2R<@\2:IA8WH<,7!MR_M\1?4HL6TD M(W,D,5R;D^K;F61IXQ:YPXBP14%1,C)'DA$'TL9EEQS#V_,9424)R*BG(_,D M&:37[MF[VE:4&;2"MNO;ZGQ-2V2>I"J]UY49R7#6EM[Z$H+Z1"^Q$62>I.[J M(.\KRY7 F,/1?D6N5J(LI,_,D=2)^49,]':NN#T@AZ!BF>A$,U)L#$ELAR4N69F1)K 4,'8QCN MXIQM'8(^[O3I9&1NI@05B)@+ZM<.C1'U@B7G/)@0CJ)SAD;J@;M M'+X2I4-SXK]W+;9CT8C";,5R:-"<;W>ZV5SS=*&6$$'T!.DS&K48]1>K^=@3 MDL;K<%8II'7$8,NOV>L-V%N@JJ!CIT!Q=?:8W]]U658/YIF]8HA+*;3I[ M:HXN?-R;;;1DBQ)ELE)I+;;U S+CTJ$YNBB2=(0)BZT9$S:&[0,R:B@FG0[- MTQ7,RI@3V9TUS".NU=C[+M(9)9-%\W0Q[ !2N7U'%;5X3&\G-45C[&QH[JD$ MBNO;@[2K,A.(\UAQ@5 S.AN:VW\"J,P$XF);8VI6=^@SE6$?VG#IT/P&A.GZ M9._6.QLK%/V1OY?FJIXH%_*<_Q'7PV@HS/J.Q?*A+,.3"6E)Q^?FMJ!($'F" M,Z!D"R(DVF)Z%"W'R7.Q_")L^6&9T"8V#J.+G5_>"6PCZG+IT!QS VN ]'M[ M=9^HHAS*[&A:#KAL:(ZY!V&IS)=]9F.9Q+1%Z\("-XUL:(ZY<[[)+>O+R@CF M-_O^,FI!DVT[FVM>;YUH-!LCT6HHHK69%=E00Z\,DK'/N!9=5*U( XN'+;G6 M(^I"?0T/O"@=FG_LH$;U(YU>0 Q+(13I.,[66W#9V)PD>/OULCM:>SV8U6=J M ]5(1N:6]H]>PAT 65VI^#0ZNU8/P\?1@F:V1C=2WX3[R$PE_9H]?=/RA3M&K&;-E8;0%F0>G MF^RRR#.;/+:VK>SHE\/]@SG9VH\64,X\91SZ&S MH?G)HI.A'K8B0Q4)1X?+P\760 [9#/(,&\!("\8B:2 VA7D8H9@\*'C84G]^%U?=Q&XT-S0_ET.C1'E[+F:P0Y MJ<8B'[2BM5Q!:&&7#S* M>Y'=S)W]?@6Q<2M*A^8->)/RUUO3K\_%4 C;J+9>KZN[X]B< >X(?KJ@ &G'IT+S0DK-A<]EQ$7@];'=# MY&=M? M];*GYF>PV%,S1B%FFHAZ:V&A3(EQ&J"@S_D2LW*/'KB&UQ/Y2%2)<:5"V#*= MUN7/)Q)ZS::O4C9G:0Q9NH=.-A\IB-!<%A?TX:F&:2V=#\ M-KHGQX$=.!4 .H'VTOJ&9 G_I-_2"U[9;>B*0DBNW.$*3G[DAB;7-9#X'< M&L">VM[Q\2XQ7OR6OQN.6\M/+AMN5G]MAQ= MQJ@V$+4PF,*$OHGTKE!?59*=$7W&/0@"4=KU5%J B7BG3=:&#>,-X[&$Z0\Y MBD%_:Q^88QH8XOQ9F]%AD=6]=;?4JDV'-2"] YE,? MZHAMDWVB([):$Q6QI2$/J6QHCK"Z"K=:57I;9II)[#EV=L/&VLV&Y@A;>1U] M3,<'C9GH-ES1Q=:]9WO%4@ MT3 ;2+/Z8CNM$M/LAE>.+J=BND[$;6)XW;-;/!GLAY0.S5C\N%T5 M111:6-P6'3&A2Y]NAOPPV=I^LMY$\R6,]B:FJYJM.KWD3ACQ'\0;5XPF)M0< MIFL-1B-T[X@;ZBOHZX=D1:P?$IKDN<6N)[OJXM!L+/ED[#-.QWB^%RB,QA4Q MWF!V&V]/8!;*AN:>6JUVG-W$$75Q@JYF1+O7ZC7,;&C.UO>WR$A-_(X^4S.4 MY7H>KZ>S) Y+AN9M?6O(1U5<9P216!W\7LW9PHUN]MAGTD5^UU>8C;N$F^/) M((ACWT3MXW,?;7T&??EZIG7$,RFN; M&/,(^'(=OORJ;0O@"] 7P)?7-\4!?+D.7W[5X0?P!=@QP)?7]T\"?+D.7W[5 M# KP!=@QP)=O?$$_XR\VYP!\N9*^$)\)H#!%9 PP9 7ER\O=O !?KN60O=R: M#/ %V#' E][F+'>#+'_'E=PL4_^J<\FJ+0/W&(MQ %91?7EY] M[9KDKBZ]RR+]ZG@.+!*0I/,<7(%%>L4I$EBDCZ=NBFNGO_Q_G]!/;W>]B(LN M&/7[Z_721>)O16 ?2_LO@-R\DW+]*I]=H$5"?L=?OFPRN4"K NQRL8*,E[.J M!5J3]U.G7Z4T"[0H0)L*IDU@<_K=Q%J!%N6/M0EDN>[DM0\ M:ZP)\R_[_L4?NK9C4:\G*GUO3\F?\KN2& MSLKU KFYM-P$>2\[2/XW'9_MES??]?I6-31R!2 MEQ:I8^1X/Q)5UW13,<$F=G'!.8:2]R,XQ\9NYX@LO_5C^>MOBJ)ING[58+,J MV[*C: ^ENJ9D/3"/(H$AIUX=*(PB9U.5@M'^*/WG"A'?G[J+]%7,NG/XT@HM M3YK\RC3$-;'C6YW^8=8\T,^U5D10"4/2WHK(;W9A/1Y%98=0IP:LR+([Z4_W MBXW8))?!BO9J==V(GO9F; \:O]&<\TE Q/-:(-ZHM;?'M(."^BG+QC^@%'8 U:&+]>NN6 *\OYM68^H\((MPSD: ML1Z1W/=B(GZO]>J[VH?S]VX=&JA(XW!W:*%52!P*F\K2-VDIJV=ZP=;M!5." MJ]@"M'#+<)ZFS/!UC-PMVX)OEP!2'$+;.:653G9A"#>#4<^#ES QK]@CQ);< M0?_"=H'=B8L#R1 DC-K"AAO(:+65!9:Q:(V^_C, M_=^3-4P>\XS1\+8VQ&^=>"'&$[W7D,4)#0E99S0DL1H/%23?!?Y?P&B<]_I% MP9;A/"X%<1U?Z:9MQD@+9-/15$;VG&1E_).!6"[):#AGH*$%<1"-P M8@4=MAWW>)83RV)8W?8]&.KM\?6% P6W1ZVY<5]U&73=#>OS/=MWR&S/)S]] MH:@' G\II7A+ #8B>\5 "TJVZ_NW<,3VWH<$Q=*VK+,Y>@[JKL^H:R6K[T(X MW[W0"!#.=\F>WH5P_JH&.1#.6Q/.]ZDJ\B["^?ZU0(!TWD61CG]<6N,* M2:!ZZ,GIMSE:JO#V)^VJ-'9B1V!EW*H@UP<->5YM, M#GLLTUCR-1I[XZ#28P*H;N[,1$E5/UUM6_8TM?3/O[_,_N-7,N:?\(=]WI8C M9VB.&'0E&_BDN3 &O7/+ /HV+.%7 H>:E^$*ZR>,'8"5"BE\C% :G^ M@%)=/+SCF9-X0*H_FE07$J=W[NP?$.N/)M:%1)*=.6U8,*F^?DJA@)G$KY'H M,ZD(.C)7#(>M5W"S5H<-?>CO"GU57H!^F<>V,*DRX*PK!&90.=2HBW!U;C20RO5B,H@\X=L%[Q1]+ M\ZZ/0[Q"7 H BW?'TJL#%J^Q:5X;V0BD^-[P=]>0XFL#]:[N^ITW978%=XUG M8Z'OP>LY4RM+=I<=8R:W3]VU+!/W*W_M+@!_1VA<\AI7L4JF[X>:FHB-JGDE M;;VQW5C3OLO9E3:V[)SO>FAA%N.ZR;R")>/?H_[D6#RDRG]]FJ4V;/;F7HD,T^X<;0QQ\J4V<_JCU:IZ1WQQC]6JN3@ZC#@ M-PM)9'MR2US-PRD\CR0JK519IN"'2@64J?Q@ ,1KI5\+;W< ^.4C(!6OE;,W ,CS?D">N45X-2(;9(&?R'^^X,2W3+#7:T>2HXB4 MV-3WAM@<*=4QQ4F5-!.,4.@#3%1 B1B L0486R#% &-[DULAR,R^9D?\YFWW MMK&Z'+BUCLCS4\:<==6FSZ0[(O7I"_& (GDX!M@/ 7X6X&<_K!@#_"R0XMOG M*,#/?DRW[MI)SY=<,5*>1Y3K"5NK"RG!#II'YIZ)$E["VQLP_6T M9*HE)?0\S5'B4N#)CF\?@;#R-[@R."+Z8'!8<#0(4)D E0G$'Z R/R(J$X@_ MP 5^'%S@]:.D"S63'@F+R%LM;=!%K"Z(.^'KI?](0@\8Q'%.\%+@QC?[!+VB M%[9(!/K![W:\;G<=20B<-:K&"% Z$$ \ <03[.0 XOFQ()[7W\C/F^XLS(:+ MZMW-!)>PD6CVK;5$4ELJ8(X;+OG+#?<&(:)+V3&TDNF4=-GT2KLTO9PB0-7D M2;MD97?IW_S "\^;&_U8%N24"'6]9%6AX^"_D,V^Y+NVJ9;^!F?_W?EN^K$X M?DJ!7IGCQ5J34SX4:,&'X?@I$PJT()\6!5KP83A^2H@"+7@F.WI3:@ RI;\1 MN*7]6>M?@PAFK]BA>L2K9+-/!GF:[*<-.[/_TWJ@>4^*QJ7171+#/89KN;2H M,:Z+$#E:6.C064ZW#--LUI(H#3FF11_09SIZ O/U)TE08+[R&=&;LEY@$S]# M+A1H03XQ>E-:<)=)TLONM6&=6M,VI]?%R; B0Q@5![!G9'LM^>N]]L:QH\=7 M5&5;=A3MH=27/65Y;-Z%(0_'#RFG[_70Z?(MPN_2?/S&I7G:EUC]C+?DU:#; MH+KP2H;Y2O>P$]6(:/OG:"8/\XTR>N[TRJ@GV0&KY8JAIW+[L&L%.I%.C4DZ,"K E[P]EOK9* M7=J6_!2\?&W";]B6O%S)H,4JN]%>G=DBC\R5&*&P0Q#^826#7]D5SAI-:KWF M;@)#.]%%=FN(K'-1:E?2^K$X_E A+YA&_/#6Y:=(\6LKV:6MR\^QX=>F_);- MRZM/0)I#FNU)PX8GQG0TTAVE43T@;V_]_BI3@S=TUAIL9Z9H]GLJ(H]T>1 : MJ:E)#RPJ&(B(K@#COK:V7=Z+^0EP^]J$7Q?9^F=V9J0%LNEH*B-[3K(P_LFH M]*UE2]/'SMHR=[&#K7W#FFS/'!?]%+1:\WIU1E\.*S#;KPF:-I%-[I!E71#\ MTQ>\\E A2'!1Y I(^6LKVN4MS$^P\=33A!4=L[%,XK%[4]FW!>OU8M$,Y[JY-Z-N$$Y4_O M3CJO7_[TC*:S>%5-+P7]PY] _P@)@\^85.H:3;C::K8T<8*TNTNXV:AV)F\/ M'),0Z1M@\)F8<34XC&VHLE88=+YKL.*@WW#")&;$CFFD!_S%D!'H^DT5B3VC MKE^[]NNU==UQ,&NO2G6&V>J-6F\4-U&G\?8#I5^IJ1^&X6;+8!A#E/O3NKN" M]^V*D:DI^6LUO7% [C'9DQ;&31&Y::D"Y6F7*S/YH"6L2]@;)W_4M;1T[D/6 MZ"H9FDQ?\R(O$62OI)J^DM 3^*5$&$KFXP,5UP1OSY'A; M5<2A;TW&UG;;4.9V90$Y$)?:F/*G+P Y TH9@U+&1;II7_^_676'[^2 M,?Z4+>WSMAPY0W/$H"O9P"?-A3'HG9O_Z-M*&GPE,)& +-=9/]'Y8Z9S('N> MY&&KN3P4ZRV&K]8JE4%WYY@"]^E+LF9YOI*O8VFNE#3^T23AS MDO E;1[;N-92-'LGLH[?[>QTSXNAHS:3K]#FNX#@9ODS:"'[FII"<#>:XV?< M 2,F^(Q MC;2$"#\1 U[S=J:B'4^C1YKB&D[VE.Q@^ADWU!T8%NJ-' F&:&-+K_M#-. X M"2%2O&+BA6(5 %<$<$4 5P3;-( K K@B$'\ 5P1PQ1O,1%[!L]R/"6ELRKI(2>ISE*7 H\V?'M;!%+\K?U MOXL3&5!:\D88]1$!>J"T)!#.PN+N0&E)()R%A=/=4VG)'''%QA>]OO<,TYMX MBF;;79$=T%-471S8UNCMH<'/WG;R9VLG=U9(O=GCNJ7-?K_YMM]"BX$6L'K: M!MCULC\$@6V)K@?NT-_-,.%/VQZ1+#UG(/RP>$V)MA1-8:=!(M9/UM MT <8R]^0 ?@F 'F\'<@CV##O#:5W1Q4PK[Y?GCGE59A];1L)\%XFYS0S6:^8 M66TU$X>#*-O7R%?L:W>!]*LM9ZD!3I0 M']"UNUBXN&NO4Y&1$S>>=DT;-M2_1D7,7K%#]8C(R&:?#/(TV4^+#&7_I_5 M\YZ@.](8-HE4'X/2'V-1>,^IN\52PRR9PX1&%U?LJF!(")7E6)$'&$8!WA=T M$;^VVW"#/<>!VP!:9!=CF4!#[>(FGR^[NWO6Q%KA)"=;[&J'K%R(=A2+SG9W M\M>[^RU!+H^OJ,IVVG#IH=0)'>UX%(/!#\<^W;XKI-*^6R(1S(^ ^Z*#UYP[%S$AL&?DIGPHEG>B>U/01. M;%\X@[NRNQX/&4>KSA.5KZ2]DS#R <;0!Y2\8(.3C[6WGO+F!?8W_GZ^M/<] M6HK7N@OO;R9^O_STTK43!OG'F3SC#K 3R!W,USP/-Q="1]C83DB/C-0VE#]] MP8%)..M9P)V;A%,J'YB$RQ02\,C&L&=+E=!::P2G1YN=6=_]877Z7YF']E 7 M.^J\#RP*+"5R-%]=I3; M'YJ)5Y]'+&.^#;M^AX'735D+%E5HS-G<>4W&3S%M,F01M$U,5&MBS":N-'#& MS5T6=F3G"'"^>S1 :O_1F<&=6XY3RA\8CG/7IZ5IMZ:(8J5O;2-BWAEVN)E8 M/G/<\5,K48VG.%JC5F-X#4\/RT,[G@SMHY7 DPB$>L" H3CWZBE[C!1S9?X0ZM&>N#P&D M^@-*=?'*RYZYL 20ZH\FU86L1GKNBA1 K#^:6!>RR.@9C?5-U Z]%)B/? +F MJYPWNL/J\D4#\0!Q0P68)LU(8!+ : M#VSAQLD?]>3)CO%0X@ON[9#? M[-FIOFAJ,O.$&\<:RT?X;[+JV9_\9\"_%%01QY,:Q(ER,.G6A8/>&T6)34$R M\"\,/\ P#! \]U+6%O2=OT1\_+$X>OWZMZ#O?-'CX9>1JEN64+2HSG,B"E6Z MU+9F,B/M#P$E^;TO:RJ0W_J>N--8$.*#(12)/*U4X$FDE"'?2+<^ZM,7X@&C M+MBWZF.IS_6K$E^M\D:Q; ;8^4#%6U#Q]L-+\8ZIC2GA%:F\"0TA0&GK:ZJ5"7 M;.'VX96HD"C& A5 _="VY,Q)Q)?,P&I?+D\&H>R+/-*='R@_KD<$G9D!\A5F MX/; CEE&%5K(OJ:F8,>-YO@9*\ IQ]V@%,&Y%4#/ ?3++CV]FZEN1O++G7N>5:H"[*P([ >[NO%(- MX'1%8"> TYU7JHN)DLO16VR8T.M;C,3#@Q[&D52':Z'*-Z5H,^_^067QG[WM MY*#73OZYD+KGQW5+^YU^<]:_A4\#+6#UM!.JZV5_" +/7(2!O+ UP?W:'O6G M?0F:1K2H(($0PAHWHV1J-^OL_4A"\:Q["?I 8?F+3 "F=-^0QX]6D1'LO !\ M!\!W-YI(+,Q.ZHEBO%X$6AFN\0MIKPX[+.+3V4Y*OF(GO3VD7VTI.X:6%C'4 M9=,K[=*T:UJW4/W:U#WYFQ]XX7E3BG>Q,]YB W)P:G;?[;+/G48$POV1A+L M/0O?,YL(A/O#"'?Q&Q:?/:EX4](-$HR_$1:E)=GK7QUT9J_8H7K$5V2S3P9Y MFNQK=>WX?UH/-.\)5B.-G9((Z3$8^C$&6D";:K!L"#68K[O;L%Q6Y3(526CY ME$V$7^R$"*S2735#/G<:\::,$MAR[[N![[D;DMR4<-]EPO"R.R,&]S:! >$X M;.Y4N5)#JNQRS&4[(_GKG?'&P8?'5U1E.VU:\E#BM4V0.3U')<+@A^.'E-OW M>@AS>>3A]R8$2TR(ZH8+6[MM&_(;K4Z.S<#/U]O$L/V^3)V\X]C-AP\!/Z4PX\4Q'DP:RC'$OY!DFKF*#FN^7F5:+EE BZVA" M/F 8^H"2H!/:%<">5U>UE];I[Y<$@EZ=\JLZ*N]O87Z_F/'2M1,.^<>9/'=, M*=?)C85Z!W&]'7K5C6 NY*:1FI7RIR\XL";O#[*]NDY=VIK\%(![=UNGFJ#.$FW"X74;=V99;F] ?MJ;YE671J\Y^8@Z;(F/.C"4AX>Q![(,[,L5X,Y7U[)+VY>?0Z&O3OIUD5A_:&%>?78AQH:\@[:P;+'4 ML%;O-#!N*IS9VOP4=T7[T^D,IWJTU9SO5%9:4W17Y%*SDYXY4#@!\,M7P"]? M7?,N[]3\!-M\=;\I&[K4E],FGL/Z3.:LELTML**4XVW'X[^GH%9A2T1 MPY;06MRN8@(BYVBET<\2,5D[>N(!*Z/ QEP!37YU3;N\C?D)@/SJE!*A M3+S4<#H[T?EW!BZ_ $^4Q+!JWH_RB:!_I,7O/TMAJ95D):TB*SMQ(L,EQPV2 ME\E>\FNG9";?-CS9+FUD+TB!YXF3ZFNII"0D',O/.MDI:NK!EG33D1W%3(;[ MCSN1__E*=%UO]9_8A1^FD0V,M%29$[MDJ__YW7FIIK^QY3B5=^T_OS=).]GR MH>7QW:^8949.^L>WSOG?JKG[\M_DQ^-C%5N3O=0<+T_O_FI:T]>^A M)PMVVGT@6].#OX[?>OQ5MG$\_L[ULVS67YYF9^?OZ;._>VK&E<#=_(4BG]/[ M)^ODGR>J$/PS?B$VO:##GO0Y!]*[4$M,9J+HDQO MP H,7Q+84HT=U)D!S]333SS;:]=I(?E'HSV@![4VW2OQ0O*+/C,0^ )-_Y^B M(X=JXORI_WK'6>4D^<4IFDZRK[JAG_AH_D-)VRM:\L7L5#[9@]721O,>_[5. M3%#@?Z/D92O[O95X3OWES->2$;[='+0;[1H]$.A:C14'0B*+PX3'M?;_9^]+ MFQ/7M;6_WZK['UQ][WEK[RK(L&/+KWR7) M9@ADZ@[!2;RK3I\ LJPU/5I:2](2VX-8DN=BW ]J--3=JKDS8(I\>H\11_<8 MQ?;W&,4&MIYH)$1)ZK.+J##I2.W1K,XWCSQ#X*< 1P2X!<7#$47 Q9 M178'7I75P77T?,3AH,^+FE)L"%4MF7G0TGQCH.423>K+JH:+%,%YIMT -^-^ M, A\SSD,PK%<]&ZX=B3I1^J1W&H'=T6WKAS_NR<79B<8QI<,T8$S"R0KV:I= M'ST2QH;^>RP0/N^F^4[B_D[+C;.=G).2M>&=<$X6TTD )V94^0U,KTF.:Y&I MH0X&1OAD$W,C!./O&Q;XNH:S*ZWP[KB!=[:IHPW]2L4^-%;R0/&K#!BR:8U-REW M(\P0C6$"-W?LAG6J,(=Q4B(X/L+P+,=?$1*\44:8"9*4A0OK#V3!&@.P\@:< M,=LTEJJNHPA3 '<,UA\1!H0F,6/=',+Z U 0?"O<&"3BCF!I2"H/DQ&#$TU/ M'>,O;&F$G WYWG:MI;J4J&_+S"U3<66'JH2)8_,, 4X8PO8G6.[B!1$#M#+( M@$\R6?-$8"%DV0ZTM^=XH621/F:X7\G:P(@L#<'"B% Y=&UPS&W;XPHHDC,! M@8TGKUW0P\PV&T1O,_T'-%O5M-SZ!E5BO?9LKCVU _1M8/#6G5@R*-%/ *,A MLNJCZC[S&Z".COUX%U9-LJQ!K,CSSFJCQMA-V:@GXTMWPY=6 (S'B85' IV3 M3IF5ZDS(+(J8[E4;3*&*UJIL1IB<9$A8.<@O!G8#F#(\IY@S<+0 ,D"_H&NR M91(+J0+]N)*A2O2CC73=9E1XP5;F*]/2%9A6T590^&=%M9 ,/)$, ^F/%!!^P MK UDP[YL&7J,!Q)B@./3]0)2E1'&3#=8F& VTI"OJ M?Q_ _MEG@=QVG0\]/87]J8Y>3:.'W%SKC6367/!&QW6: <3^!NB.K,ZQL.C2 M8$=;<(#^*#+SAJ@+,Y&6 "X(@8)9:"YYR(F[LQ2L[L1BB*TP8P3Z)^GZ!O^, MMPTKI!V=[.'Q+:O^^G\+UW3^*0I"@_[% /YY^$]Z(K]XLP#17VD^!\&0)9CE M0A<4Y_$O%AJ[NC\+D+ 2TT8RV+2C(HJYXEJFEQ_@/5VJ;6-C^&JF./##6')%2,0OL,X,-[ PQM&,7&@ M;3LB8+\_$-6@&$NNBX67C4S3H3&YQ_V2^0=@Q05*O37.Z1 &C0V]0UZ/R]9^\6E_K&9F4E\!;R&!)W#]JXCHDE4 MLB]'6!GAD&E4' IQEPZ9(E&V[+-@3[*>#!3:(2'>0Q\0,SE70*EV=O>\["L& MTM49#(\R;F_8F,\?.641#P3 Q,0.TJ8^&B%KNVHYGK.2-VO4M]1Z5E/U02_? MNQ\N)HMSS5E/8OU3H:VG9K;]?-6(_ >=;&EF?*+/FEKXG3GM@,Z31-3!OW<- M1&>*#%X0\'QDWV[V+00<-)]DTR,9ZQ[%C/UG8/YPB4DI^-"7XI\4H=QY<4SO M?XYBJ^!)4&O_.-;V[VT^WY]Y-FUP+.LCDC4CN7RLXX,C'?V;-8;QJ!HCW__4 5Y;8EP,$\]>7(=/#U@ :I#?CKMV#<+R?M4CELEQ&0Y MNG&<92$?7X_Q82P^P498]E3Z[I5"H3*D/,=SITRV?F/W6=88R0'E -=%Q@O\ M-TK[?Y\7-ZU$21*IGL"K;5@ &@VU)?)3:1SO%8?C6N5D/O6])"RNA&5%NJF( M737O+H1R/9WGTP<2YM\B7T(&%7##HM?]D^].BW013[-5%]8 3Q=6R$+O*_+? M/VUYTKR+2M(8MO(C2]STS:(^3FT*[?G;<^EDGFMXW"@ ,[ $\2Q='^T=@ZBA MHZ.21(R+N&'H_3P_93=J-J];J_M:*B:0O3:GZJ6^48XDZP5/C83C&C@ZLG?U MH)W=[/^R ].RA-71]C"E9,@>F-:LFUH+?,FNMBC6$QGCNA&-KG]_X]N;I6LE:J9VB+3K>?[#VPTUFJ2 \M_/C^N8#TZEU1PVDW&8P#S_Z39_)_=@I?& MCB5&WOI7AF/!^I4)*-$NX[HM_DB0XKF=JP,6WUK7[\+)KXK>H ^V"3WJ=4.Z9%#=7U=OV M=>&^6Q[<))5V5[QK#587\4#;V8K69#5SR-;C9L7N))1,-P\>:(P]H__I38+! M=$+?5]1BH3J,NF8SK?4Z\_A8WG0;&4[X&%=;"&]K(R3 MPGN[HA$<>G=UQP\W[?N@@*K[R\S@^"T7->X/<%_Y]$._-UHG.EIN=AW=%+C& M9"B "Y2,)/E4Z+U^&BWX;:\I/KW.(4>97VN+;GO&WMR-&_A<]Z\X'_M]\5\= M[&#\P'"E")V""S,N6N;*F7AP\E3(4C)2B9O[Q##*1AOY5(R/C:NWJR!NL?"I M8BA9/DP&QS_L(7^CLY=80OZ(QW3$GD\<\;)-.+NCH!$^/<-XZ>8;=S:W';P[ MN@Z><=9/Y[?Q5^[<9@29[)O&^QH.-F'H$\7%)*DD M;X$]%))9<9C3E).4%\T+D"S:T'5(:QSJQQ%8QXSXV03\K&F *^VL3(I_&R19 MQ#5Z+CD5(?T-T1X)9+%"HKR;1^DDG,)P'&1[J8L#DN$];43LG;X]SL:WF47) M&DH@EFA]K:/-3B0LC^=VQ9412LY]]J^R*K"DTFZ-$R'L.&U(C R_.9*&,-V2X4AC$KDC M_',0=.]EEU2Z-X)X^43_J3K@#HE&&$"+B7?D+.G";)>OMKW)DF0]5;)Q ^]8 MQXLRF,=6]G.# QDI2) ^#O]#Q!DX;[7V[(KE 8GDK M&".Q2/*&.;G^#.T,[(H!&")I-*2# E/UEY82= J+;1OI2^1EJ0_(\73;QQ&" M'Y+GJA(,6:FZ[AD7SF%/\085Z/D5K,/AG/O8R&M/7#P:UB<[@<&QX1&,@!S!B.VD$A[!",#P?N<(!A/%;3JE M6E?,!XB4\#C&R\'7IG<+8MEQ5A/OD MV)BUM-E$NHM.1X:R7 AX)1I_W#3]X"1O\]U24BM:^>N"S?>5$6H.^.-.F]HT MO1Q-S5NVV$_RK?W>?E]*]7*HEEN\>$DW7SJ7=.N[T MF/R'PDVKHZTR#T#33=9N.XW*=0Z/E$L?#;7B]AMC14.BN\E6^I/B6&F4\0!X M[G'3\HQK5ZYKE;06'6=X+=]L-.3<&#<]&D"RH=[PR6EQW:V7>V(5539[L,O79C&31')& M@)9'G!H)B!521B^E\:5-HBB749QE<9]'*G57KAK=U+QEB%$NZ8P[@UQ-U7"? M1R*=I9O1:\W5QUVTSE96J'%=P]?[)P9''!6S:KI]K8E=<6:+S6'B-K5NQ'&? MW!%'M9&P8H>EA-J-@@TT6K?19'2)!WHL_7EE7&QTV&:#C6H5U&A)?,6V2-,C MYG.]5LKI\0-)<\OS3BF7O%W51V0 1\J?3+2L<6JX>A"3T]Q&$!>+\6A!>CTB MB],2G<7=?4'0>O&N*=@=]E888@;P1Y+*NY5%?E&9#35U?!W7^R5M/%B2IK'' M39N'=SRR/C= MJ7-?8==B5BL+S=G]X"$V6HWP.(_%K\FZ.QVW\IJ6Z\3YSJ X&LV+N%/N2*?G M9G6"YH+0T\KC3C9J;=H<&\4T'N4;CR M![J?6]I+:[_M@@<_S(77Z89$HU%X<3[#41[D$TW#9+;M^E%,&C<@RVLO6(8# MF7B%/MONRX?VR$NYZ"H]F.6?#M@/UXT\C1WC-S_U#'T+)L./G#RYJ_NIX5AH MB< L#I,]"CV'M'N&A!9(X KO^W=<<@P!!V7POFP<$U)4O)EO&R:T][ATD:,] M!4FU;G%AR2J2,$,Q(YX_XSD#UUBJZJDZZP[JUQ);N[%3RW$0;0_3QA#BF#WJ M@F:"?OIX9-(0)5:FL:O2@SJ@>+NSMTQ[&Z/+F0HY)^WL'XP1VMN#,30*WC'G MH#-IWK___S_JT[O,GV07T?C\UN+L"*BHO[^(;+6F.1%[KTAI!"LU+/Q5>X*M M#[0==&YE6AJ)YLY(YYB>O;*FGEGA5=>>>&L/!AP<8O3A9L-X_>R-DP#/S_.JW2D=2\2)DE4(P=Q/*K/Z$/I< MDJB,3QH&8PN-]HXG[V+=YHZ#_AG@ M8S4 $U#):^CA4'R>#)](]C]%R*/X(5_ICI!CKZJLCJG)WC)W.C:I-@Q%@9)CIW4,6JNGI$- MP=@/S\SAS D>T<7W(9Y&^>UF]IW_L5?"V3]*YY^[)&J!/1S)GD1VAQ;Q<3&5 M\#U"'3AUYY)$/.V625ENWR/:>W@N;>B3\(V%C\7L,9=D>TV<]I'6?D/J<*&A M0S?ERY)ED4SE)BHL;U$@I+M#^G"V=C.X:1'"/;2]#9)O^W1N)L&*93A ME-H33K0WH2G8F]ZO1VZ0Q*-_)),<"?WY$5>3M.4)4ER\_HRSKUH_%[_>-_V M".S#YYK_.8JO!OU)\X;@KBHOINP\89 7^TVE(2R970=]1*[NZ8MC]YY[O:+L MI5]?>;'JJPHHAD(XKQ">+Z\4RB5HR&$H/6YY!)Z6F>5"REU3/[W M/IOF+L:$]!N8\'YH_4$W$+R6 4<'G-[($=G4\9?_]X/C?ORFO?*IJW3F7X^* MH'/S-4,. WY$#?3TVSGZW*T.;5S9"-]<2(\NQ/P#47B[\>[^AE"E0I5ZM4KE MD;RO4=Q.H_A#C0K1.32E$Z;$_ZXE):]BY]6/=S:4G'=BR+\6-T3;UZI(^K?! M%H::^DI@BT_X4/TAYWQ")0IQ)L29$&<^%F="1^ZRUG/BD/7K)4NE>OSO$4Z\ M%W!^':,0R$GO0 +JQZC$GP2C+Z@&P9IM_B1R_'5L:?]&D="BWCF]$UK,-D'\ M)2V&#RTFM)APCGF#Q00SN1$Z\J$C_^E -'3D0Y -'?G0+0D=^="1#RTFD!;S MA>>8V'ND(O:KGLHR0J/11;,3]+;&G[^' P&CQ3?V]S#T6."H^ZV"=']^GO0" M7-BS7G)CY2N$_F;1?P\MY@-'W<=KL35OS*[O9 M*U9**GL==..?"FMY)7WI'JCMT[NZIJ_JOX#+'>/*H ?O.%5#U]Y6&_,ZWM2N M8]7-M5SMML=%58QUFGV>%7XP"I+5F:3;__FF([W M^^/J9S1Y=H*.'XP-.@@M8S_\2N$-6QDMK_MB3EPHB?'=7&NO5067=(_]^)6) MQ-B87W38%WSPNIKG$C!$BF3RO^FIADKX^93PI4OMPKGP MM7/A]L]KO[ GV41R>KJBY9!) _XWIU?1*UZ_5X3S G.KXD2UN]O)7-?JN7YY MUE<[F]IR]2%SZ^:NHCF%NS81SZW>'M7!N_>Q*&"XS M/\W4RO&#&"DFS7_O=696K2W6DYMN25LTG8=X+L:M';GY(7-AM(MB\;M*8M65 M2L/.C7"C1>M=/!=RB1^_TI%,.A%.AN%D&" @"B?#;Z:$WV:A>?[9\'NN-.ML M16C-B]F16$?C8MWHJHW[Z,>L-+5^?=9)SENV*+G5FU1IM!X;1A-F5YX+9]?O M#FR?8G;]$J>6SJ>AP=UN<:FU][=GPZ7V>H8&<&G)AQN3+KLQ*;2 2XL^M(#+ M[C -+>#2H@\M()P#O@?-X3(@7 :$!A!. >$4$%I : 'A,B"T@- "OO8<\)E. MK=%75%2)$*>BW[VS[5,*ZA-O'[S00B509T8_9(KZ7D*^?,;\4I-/J-E?6\K? M4;,OOR4NU.Q0LT/,#C4[=+-#-SM4[!"R0\W^XE+^CIH=NMG?0+C $7G:1\>W9$,2KI]_Y5.^WEW&8;0[NC:BAKH>Z_I7V%H6Z'NIZ MB.NAKH?N>NBNAZH>PGH(ZZ&NA[H>NNNAD$-=_]RX3A()_W:DH8Y^^==RU=P9 MO$H^PPBGKNVHH\T^4QX)B_X2I>S^R?'0XI7R.]M@R5>J 2]VH,U5^ECW\# ] M#GFB?ME4UB!,IR7:;%] MIL4&MIYH)$1)ZK.+J##I2.W1K,X'EVGF;%::3TRMR!8U/9?83#-:CFO^^&68 M)V[4>_0%X_@C8,P1(Y$A,J;%Z+LQ,D,Z-D8G V$4%U\HR#@3Q!BJ@9@9,'9B M,PA,06'::.Z0JP:9&!MA,#<9D W^@[\*G#U.I"708#I (9"';V>T5$EGY(ED MC&$XJD&('(%,F"46"F:1@H8.\Q>1"4#V[E*F#Y$F M\. 3G,DCV?N6(]_R![BW/W.,R'\P^*N#^>D1.!]\? ^E/[SQL06$&RXJ6.8L M!WUC->JISB0'0C#AE0U35^5-!UZ9U4U9\RY_' Z2?'PI#6X*,['-WFZ&YCK; M4FI-:I0J]*<(SC/M!K@9]X-!H/QS&(QCN>C=9DKZ$7?T4W5 I63ZS0KA:1,F M>%UY?JIZK%H>AY@6DLTQH!-P_(**3W6=R6$5-3:@O9:ZA!=:WB#G%@":!2-A M1B!1HKTVX O6U_ED8V-/!]J8BBL[]A6SWY-%R7O8ZVPU 2N2B$RQ7C!HK=J M)BO0#_RUIR+P$LEA[#E@Z0BC"W[GV#05FY@#4+U49?RU"5:)W[U4,:[ (V 5 MTMA"\,&=PQ2 QVEC F1$GB1OQYW-D46@V8 ?S"&PBF@]H]KPB*/:\%*%&6ZV MP+<%,SH(P#YO#%MS]@9.Z7^Z=Z#;AK%B(-B]B(R*<,34=U@;@>]5>8*?&B,# M69*N8]D _LP 4;VG?+XS@"V,/5'G<_@%AJ<@'62XCS<^9X>N ^]R=06S#II) M&\PLL#"=M .1(17T]"1NX,^>-4K>5*&HRU__@7]\Q95U)%G8Y9W\<^B/Q;"B M>%M(;YF\W'?O]_:'<=1NLBHR;___5_[H]]!:50V==/Z^3\L M^>^?/;(FU.AYXI6/471H(4F+2B-X\T])7TD;VR,SG:8[9V"^AY]8?UB8$4SB M*IW^%[/[$[/CB)A3U*.*BU_%SR2G1V@8VTGE/Q(SL?#L\S^=>NZ14[^' MO 8V*?T >;VO +_P*@0C$IYP\*7&V^E/.I.+?ZAK'B'#@[?L3P\_?N6$?$MD MKNN5?*E6;$>84BT'D_0P*,.KU3MBF^G4F5R]EA=K;3&/_VK7*Z6\T($/A5)- MJ.5*0H5I=^"+JECKM)DH;M,IU;IB/D"D_-4U)%>!U;;R]P>.ZO$<__P0B=]H MNC;,2H#T:"V#YP< CF$<3U0P@_B?B$]O[RAY'G(/$>,4%$C^9=N+_";*7:<' MG6YRFD\VG'3G3KE;8;_O![6;;*61V]'Z9M,KVA.-=M=9&\$.51II[B.-SG,4G-OC:?KG5G*19O^6AI8U4G=Z/F('Y,DH.Z MF3JKWB^T=NY!FZNU<>9Z(@P2QRT;I7S'N!^/6+$W;?%%71G<58K"('G<(^C]F4U;A2 M2BT\:.K]4$V:VM+.#IO0\HA-T^HZ+1G&K<[RFCNL=ZJ+IM(<0\LMFQZY+OZB MH\^+FE)L"%4MF7G0TGQCH.42=#'!'R\]GFD=^_'D.YY=L'Q(J.PQ-L%$N74( M)1EC#_95(^ /SF&)CIU=D_K)V-LD*U/B0WI.^Q73)GXUAJ>9I"#*^V!D\$55Q^_/HNZYYZ5N<)B$F9NJX>!7D<4%<8-I_,$.6%!@ MN[PA,P . 8"/[?/&Q4RP+!P<(,45]E9/9(WCLWT7.0#&8:IA "HL8_#S6]$0 MS]'VU@%T-;39+4,BS,*50-N<380L<4!L$2( R;9-694\&%M M,W4=X4&#TPX/OJA\5TP!AZZ.J8Z0]SVS='5M?Q6HXE(?S S!# [+*,G&U.$5 M'%[)J@:NIH$4$M)Q)C!:KYUJD]7I')9L("V\;7U&XW=D(6V9L&RU\9)V)5F* M9VZSN8X5-.SQ=.,OV+R+EF3NO"]A45'@G.J@4-9("Y/YQ"M,X*[@Q<# M\X%XX ^,$#P&6\6N-!&@UPX1!*#D$57WQB4]M=!=@=#P\A(XIV+F>*\U0(<( MTZD,@"OV4X38!!*HXOO\)X+WI*)XTI#(L& Q$\7_?R"8R$&,SG3 L'QZ%$H, MM1;B&\%7CT1@_P[_(T3G]T9IDF"'.W.I_\7(DB-/HNX<:XVZQ0#H3#4)FRC% M="&.DQ?$ELQ]H>WA[A73\^,91.>,G<3(, G-5&R8FT^*"T./3'L&P\#*(-&@ M"GX_>92\'W3)0GL\Q$W]><(U=H;^=/2#3!;/T$QZ' +W,*8C'-0Q8++Q@V6^ MH/;0]D CM@##*":)V%IHCH$+V"+M K>X=-V>'#U[)\FMU#\VZ40"[?64[HKY M?__#)=E_ C0#"0Z=F3&A0(2UY(_*\YY[LS8Y;*O88><4( MBD+8B -NQY,"1@:8LT!4IK6A,*GB,.:<3$(T(DG'A-\+B"I9#IW?Z3. QY%M MN-,$J[7!$R(NUVXT1,-M\A@-.-JP:@R2%Y2#I>G8EP>..A(L!N8"XBIDOAXA MG!2">< SV)WR6!@"9-U5Z,1@(,=30_P\G??VN7*Z>\QOPT;'W1WSS0<HRIFMY>+N'5:<)(/'";="70)>T-0?LG&U#S[27_=@XT3%I2^K(U4>>ET2 M%8P59ETR;7A]^-^3SA]'K .D5G19 7P% NC<-Y=40CZ"J=C<8)WRL5S$M4&8F^^_T5T'-41 M.EZ)Y;;,\M[I.R"69Q V(JH1\9,(M'MEIAHP+HMZ)5MK\DSE\:3X;M:RS2H< M9A'.G(_T4_\-:@$]LCYS-C0/N4T_\K/"/7"E7&63N?@DJ<:625X1/DE"T2.- M\6D+DE&;,_24MP7O=[%C[5K4 :>Y+)(;!WV?X1 NL_)(VKFD=-Y1T(A,N:"S ML [&>WQHBL^T-.@6HRY,Y;NGL2=H+T)SAOO>%(T]X.D7F]VC M]<+.ESE%"[7S#>YE[Z4 8);MK3/FNB13>Z$K#V]!8[TX=9W7'H.A)AT2"]%U MKH_KH$6SY.X,V).=UO(UB66RH@\J\4NN6W;MQ,:^. M[B3[7#BVESIDKPZS?(^WY^V>9%^_,\_3 R\[2Z)9.#.K2W,;_?3_V!\4SF=Z M \+)$)FF _U<-$F=2JYC^E_0Q"GYYB"]NK?GTFNS2U^G:5;4L?QQ^;E32O/K MM@#',E?LLU>'["5X]OK'L#0"&_&9YG^.XOVD/VDJ&F\P>S$+[&7ER8O]IM(0 M--YUT$>D?Y_><[OWW.OU9"^C_X>[<;FK="*42Q#E\NP-+*%8+B06[BJ># 43 M/,'P5ZG08 (H%^XJ&<[[093+2W>YA8()';)0+@= ]NREQ*%<+@9D;.B1!5 P M_%4R$\HE>'(!('OV0M-0+I<#LG ) MRY.CE.(;F22;.O[R_WXD?OSNE)>YXGC_"-3V9/Y\S9#4"N.?KCHC1]-O9^AS MYS8Z$PLAIDI/,XN'IYGI+H 8&_&WC U#G;N$SJ6OV,Q7TKD:/D#_&RH7XGO@ M;.U$"OSU>D!E?/SO$=!L;8C_71OB8E=3 M#7NX2BE.I\>M!K%![,W.,DNUAI* M_;E[7M_)J!=&H3VO7M^+;'*^& YSDQ'7R8S!J#/8J/E8_#P3-5F'!4N;+V+4 MP;N8_+V,^C/<-7Y>H^8&NKZIM.O-;J+K9A=5BXU6UO'9!\S4>:U\'QN75JH6 MU5RW6EB:FVHH M])8BRQ=+I 72BI\__?')S/@#: F6&3^JG,'93K>6=N83MCYP'8=5-C6]@7(E=J#V5@6P(R3/W[%N/.8\?>NBBB91=BLOBS;*-S1C6_FF6/]-L?.9D=##-^-F=_Y_, MC#_ FPJ6&?]I':LSF[%M5XN"DLYENILHRE^7^@U]/,-FC%?[L4SZ.3O^Y/L% MZ/J_<7")J'P8#2"7_H6)B'/O%[C@IIH/#RD$D/R+QCT_)@CQ?!2TM[V-JV3; M+E).X*2H=;L/ZWZZ*"X:&K*Y'AMUR\U! @ 6HD89%T'.H(/8VS;WFXM-5\ M9+PD@.0' S3.&F'Y8]"P5L9R*"]O;6USEW@HW+8SPX?5&$"#[JI(A;LJ+K"K MXM*&\Y$!F@"2'RC<.$](YX]QPYC6FIK9*.6TNHB:0V?8TCME[&R04$XL\T6V M;=!7B+3RPMG/>'PW^#LZ+!D#6U=,%U]Q' 2L>\_C'9>F,P#[S7;>SS1]:UER M>5C4W"DG3/-YH3.Y_H##'DFGR5+K*>%3;NJ&'8QAVLRDL,>*?:YW6;A MMHZWQU$NK?0?=<[CTG0&R+CY02V7X^_7!3[>[756_8PN+95"2?B DUSUJE%? M-,NJV%Y(0JI9D=8K#1LW.?7!9 M5#.SEM5=%&)6)J&NUW<97",Y<]:9^[MN ;FXTG_4P8]+TQD@X[[9$%MK< RE6SK\\=9-PPK])79Q??C.O"-'QYPN4%O\M$SZJ"$>O MJ=R[C%/6D61A-9]X[]XJ,7[M.6[C?/(Z$#[N6^F6:(Y_?,7F?__7P56BVZ@? MKEYD6C]]>]LCR[O"E">F-T91>E,IJ1/Y4])7TL;VZP^EK_BX;\L_MS:+&<$D MKM+I?S&[/S$[CGB)"R/M<>R@\!%]ZK#TD??="]>E>F)QS/E/'E!U?E J&-M)Y3\2,[&PX?]/IYX[>;L<_OLG+5U_<'.A]]6/7Z3&%JZFEC-) M(2E[J[;2K_,43SNZ>N:?%^Z:R0GYELA_?,Y8=7JW?$ M-M.I,[EZ+2_6VF(>_]6N5TK@2\&'0JDFU'(EH<*T._!%5:QUVDP4M^F4:ETQ M'R!2_NH:DJO@HH1_?^"HC@#VV2&2.G:F:\/4:$<8M)81/&A/<%507 5PCBS_ MTPS@R+%WE#P/N8>(<0H*)#*]#;C4B,_($AH,TX@?Q!,*^*RC=&80EY,I*19/ MQ%DV]8/:C^1/B-/XA)^B<;/.1I/+>5+INOJ-.L8)@<UAVM70?;6< MRO%IAW.;T#)]U.?0RF8638<7^>8\GKE;9*KEQ&K '_?9Y]2%$>5756V3B^91 M=YF;5^("M$P\;BD-8V;5RB4*6CO=RZ^ONPFRPG'#3-P-O[BQ72 MLFE[/8:6'/>X::=V[EPIVW$!_E!*';CA1O<\@1)LZ+^(''=C5:.">51 MHI=(*WF<93TBR2KV6?7^+C,4T7WNWDRGIOVDA-]ST0>GP);EVE]6*L5OC/I_.#\5B$S<]&BF?3H_E?*DK=]6" MENO?1R?L_2UI>B32QMINH)8=NV63I34:]^/]O!M?X:9',I6U3K(AVD1P5US=W#_FT0)INZ7KDU,4K3$L7'-3[5Q;08KPT*$TT: MZ..BG5*[O=O5)ZE57$,.4R+U9YF_*J9M_TUF)4)O@.K19B4;)$SKY#*FQ>@P MTKWI4Z5ER%U2'7;#P+2IDJ0I+F?O/?273HB#7W%E6V4*^; H=W?6# B_P$1 M>54G(WR6#$F775JM'H8J*81;\-*C 9\8'][6CP>GX/>02N(C7)09$S4WL;^, M:YP?D!>!U37X-[ T@)Y=VZ?.@<6.[5H;T#/0ZL7'&3HCM+ M3L?%K%8&2SPR_""6S?57?7]6-S?!7G%<6!3D1*QE[[GY1:KHA.7S@BF76%A$ M)X!RR5S%PBIM 90+?\6'90T#*!6WGPO/QUE.>#JM^&0/TQ1O/;>O"1Y0C9J]31B9_/;$/O M6K/R^?#XMU(2[HLIR?M5OPV1Q%>2Y%=3DO=#DN<#.]]*2;Z8COQ9\5O/%PO8 MA4FUQSO)W@TH T;H)0YAQEYS-=(7/)=)=X$$D?)@W KU(1?7@F73_U6EM;5[6B>FOHPJ2T*H_'7E5= M+L(F8NAQ^D+2BU,>*/0X[P6V?XX>,=.N1Z6RU1?K M:6U<*"N96 1B LISWN1[9^#AS!/S=AU M*=L2HTU#%)Q.BLM-!%HGF,]$V/A9[H&BB_<0/4+T"!SEWZ%$T>_#![ %WG'J MAEMIR9G)U"@AHKY^-QP:G1Y_-_9*$Z=2QS?<_GZQHJ#EVKY&=BV0-#]_]N@3 M7=_]TG&="V#7D[L( IK9"Z:"?H!4/TI!/^!FSDLJZ/=$T.=WV88*&B %/7M& M,U304$&_2CJU]XH+/*+,$"];PFCGV1.M7\6 3R>"/F7 DMK#8,HG>L7V5!UW M9\EE^_JF^M O/@COG"YEWQ!S\ U7H'9;(]<8U4?D$AN[OK/>PX ENPTTN+?U M1=YYT.IL?7/#9PMU-V%EO&J?L50DD4Y&V-A94AYAOO3Y?.E7 8'+%&D,&@B\ M.>OYD2!P7^C8Z6F^GF%1=S:MQ3+%Z^C]F!;O!!#@TYE(.GV6RK^A)_!\YB($ M@2\! K^;O?Q($)C7;\U4ZD$4Q:C@3L;+\J(IJ2M:C!-[ EPBDDF=J=)%F+X, M0>"[@,";3 3@[NF7UDS$4EF4I%TYKGUP.?+ M/HK;6U*W%Z?:2'8M%=<@_1F&RC]ILO'C:0Y@5O+CF1 F+K\'S0&,SX?;2+Y' MCBE4]@LA>YA0_0XT?R5E_^3)V21Y!=DY&AU*-L[/KF#Y:8>1UP\^[/JA)\ # MR*97GHS]>#8%)KKS$DB%;:(8,1]*]/>5DH(+C6.K0=>AN<[]^"5(:T@8W M%G %U#%YSCX1\IG>YR22?.=&8E3/^^ M_KALB#^O.N 2XL]9\\QGP1_Q=M&]XS;%4;=3[X.^456C M!,%&/G*?W*5I#1H>7&+__!OPX+87G9;5RBC5W;0GL^N^LQKH#Q@/Z [Z5#P5 M29YG'?$]_8/CJ@HA'GP//+C@5OHWX$$VDXDA45JVV%QY6IST]>RR.&T"'M#- M]&GP#U*9LYRH^;Z[-"YN(R$>?*]=]6_ @ZK6B\6,@HNT]DVM,7)0KG!/_(,S M[ZL/6'SQZ-9V9HXL&D%YOXWV :,Y0'M:O@H !N]>@2?(?>?KP (FT@#MEO@J MFAV\(W+GUNP0L\/#GU]3L\,,;ZC9@=;LSY1\I3OAL^]Z =EWL\-+G\A]OQ)- MGRFZD5>7JH+(E>5>?*/:UJ65T5!;(C^5QO%><3BN5=Z[YA+_AOB&*%D&\-!N M(,O?/77R=H!L1510(E&+:>W2S2C!J[EL)]6$P>"T)WO%'U]+'B8\_V"=\P5L M]<('R2YCJV_.59[#5A<3GI_>M_E$MZTD"[-:]V'.CHFM)K&MI@?8]Y]5+ M'Q$-;?4W;/5W\XCGL-4U)VBMI<[5NW4^@=J;&%IV%P*VU0RVU=09BP:%MAK: MZ@=4[GD?8WUSDN\]C/51C9Z=U5;BHV*SI\9:HC0:S[_S-N? D'?917K V'#6TLK?R.6XQ%+>L] 3\'5=2HYYA:2E5+87&+6 M&6A*,;-(CK&9GST.$##]#E-?H9E_\@#"TV8NJ\MVK1Z?:=VB5IIF6=75*ILF M-O.SAQ "IM^AF7]M,_\.L8>=G3\9?9BN%@DI%>U7V%XGOKBQ*LJTO1:PP;\Z M^O!O(L# M7URECXT+C\E3N()I,H*_,!(0'MT>RV\XD(K MDY$8 SD,WK_.J 9Y; Y*92I7##6P1^9T\/$]?(G'5<=7@BQC'@,Q#$% MCN6B=T-T^A%W]%-U !5D^@V5#TQ$NO(\8#RVP1:2@4)F1SES2/I[8\/;QJ5O M&$$QYUCQ+C3"-P%:R6!N7 /1_6$\RR4C1*L+0CO+J+;M8C+:70;_$N5B$6\? MF7HP]@/9 D:JAF3(JJ0S)0.LUB4D^]O0R"4@3,Y"BNHP%; CH/:OCCD'\XCQ M29BFU%\_7_.2*I)LE]X(A,LW''8(4'MR$%?^-CCUUQY1^%@*Q@\;3)Z@@&J1 M;F>F@G3F+PW\(H.1;,(7@$ +_X;6@9]N%#OPQ=Z C#*/P/4PM@*DV?J=JT'D&/Z%BO'3H M3 DPB@\"67/3PL/#),NF/^'ID9%&#H@X#W"Q&S.7H$X#96:.]+F!,5,D<2; 0-OS%[!* MW4B&*UD;[UGR: P>/7"L]IWW$?D/[ 8Z)YUZ8B0=8PH556$,TV$F,%O"+(/KOGTQ! MDK$K+>U$CAA:]\;&'T_W<("@+02F2D:(164AG<@2/!%#V8?5CJ]+<\O$RRXP M"#3#1FYM&*IQT!Q$GV([BBJEC7=TP,0\< /,1 M%1D9B46&X>.H-+80G4HQ5S%08W^;#(:Q5])\UX"(2:)5D_#@'O.5L *WP8.Y M>@4\E(B #4072"O5(=.2C?;4BQK:8TBDL$QLP9\J;(2!B5D ,F* !>6FL CO M4$S,+ML\[ OI=#K!-.%N:2^N2H'_E,ZN8,4"3)+TS0/1M\G>0'$WQ$*NOSU'_C'?T[68:K'L;7)/X=AC1A^B1&$SW;4Y-___J_]T>]$&95-W;1^^C<*[)$UH:LVGH3_QB@Z MM)"D18E'\U/25]+&]LA,IZ_XN'];P<_MK028$4SB*IW^%[/[$[/CB)'H)S$X\.-PWP>]$K$XYOPGSUWAK2PS^.A1 MQ<6OXF>2TR.G(K:3RG\D9F+AD,#_=.JY1WJXM_(QL&.L'RR=O:]^_.K@8!Y9 M!N$( UE@>DHJO7ND[)2N>80,#]ZRO[[_\2LGY%LB_]6N5TIYH0,?"J6:4,N5A K3[L 75;'6:3-1 MW*93JG7%?(!(^:MK2"[,#$CY^P-']=A5?GZ(9,(V71MF 9BCJ!-(XW-D8MC> M# %S(7;M[!TEST/N(6*<@@+)#Z+S=K]16Q=G8VW!-?@^JM[K';TYX ;L#VHW MVY;V@%_)W$R9:YO%H#-2-OE%[V:%PW:/6]:SVMW&G#1M;5/.W=T7D#NX8\<# M_KC/9EQFX[%"X::;FXRJ@Y0]L5OYU2!VW'(AW%2E%1O-=&?%1*9TPT9O>IP M+8_>OEH)E=:T_Z!J44XJ3P:BUIQG5J==4F.GZ2H MRB/C9C6-&AJJU_0;2ZGW[U?C4^,<5M)F)EK9M+2BVBU:V5$OOVJN3HVS,[82 MJEC5XRQ"Y4*ZEW9R(W,\B!_W&:]/TC=J5H^*:CQ6MD?E:LE5<''RHY9K+GG? MMCG+99/%1F5QG1S%2H7F('G-54+E9MI/<^6Q%FRF-Z8R;;+=TF6YZAI)Q5? M#F9&<:KQFK@JQY3^?:4"NGQ"\>INO;NNMX<%35K:=FF0?.@6'6AZ0J*%X7*5 MK$0K"IL4:_%D=]K6XKCI"4'=U";WN48)'*19J9SLY&XZXH"'IB-BA;^-1]G;X>M:U M50/9-OC?0W!B<7_YK<]Z'%7/6]WB\F%=[W1S]6P[5[VWQ-I\11,XX+LB17"> M:3? S;ASQN#W0?AIY.:O]H\,[_\KY)K=4KO4*<',>*D@^_-1X9:D2!8CR M7 MI=B/0[T!"B#5MY$[AN/\+&%;&DF6JL/$%V$JE1RLV6"9:>KZ)FJN#)SPV MJJ@DC#+:7P]&2.Q11S1"B ,A6[IQRY>7:91=%43CT3A9;N-GVU?6E7[E^9#; M\ )I[,<7\"#G%IJI\!QEIC=8Q74VS!BF9&;H&8\7!X$5( M@MA^(LTR%5?V!S\!58W"2AZOP1C@A@WN!K@*0Z3C52UYB_ZV_YJ= M%C!MQ;Q/'A /?"#>LVQAK=H#6;'0@!#B*;&OPT2%JR2^/E@/)/&^S$N6EIO. M[E>T5.'+_KU(RP-Z86Y7L.LUT8CRTTAH_;]'=L+_T]F-T4 M[F8/_0Y;[$:%J.#.U'E&^/$KR9_:K?5*Z42P6&GX,93H&W8YO%ZH)V6Y;)O# M\DB=3+I2_7J"VP_OHH%5=L6N MQ^G6G:BJH]1]'SGM_FKUVQKHE:NQ.Z9 >>,/#MDUY-1'.6";]XMR4@?S:[Z= MK!:Y:[;=[8S3X[N4$5_)]#K[NH+R^G@E%[B'+)ON9 M9;ENF5&^^8CQ@CVHC]Z;T;-Y4BUG-AHGN@VY4MV4HZ.5N/K=S78GAM) %@YF M2&-4']V:."=4\D+T]A''H_P>RZW8JGLOWD?9;B^ZFCBU\DT:#0#".?;X1R6T^GZHEA^F\ MV,N,2E%T/(,75@:TG7F9G-WN?CI=27M\K@SBEN8U^^G_L#PJ'I;T! MX9B63*.ZAR'PO0VX7@#\.,7@6/Y;_0 WI>AUYT[3B1<.&^]%X?;Z-Z'/$:BJ MSQ+_[#>5AK:)M_=]1(S^Z:WE>\^]7@OVTBY_ MO/<^$+9^RY"P?R18-YXGX$WKP3LT QVL9FYI+['C084 MH -&X%-1W7M_C%)2'' $[!O7;11:^Z1*Z:)GV4>@&)S?3#\M>7VN7 MQ=XR+3<*0M*XJ^$4< P';R+I^'-5FWX/]"YI$!5@QL_#",R[8=UW._69."K$ M$JPRM>\'[1X"!KC6[!'Q+YT*_19XN!\RQ ?U]L9T @I1I>5V;%.JL*A MYSW@?_;M&S0_0PZ%T'"_.X,NR0879YO9F;N6C \#,7,0&7J4Z-D>U:![7O<3 MOMLM'*!F^/"$IU_D$5V5"'=5L44O;^V MA-'-*/L[5,B)4>]D[L893!K#K#:5HN,PA1>F\+Y.Y#M,X7TQN80IO(#*)4SAA2F\,(1S M^8S>Q0,68:PFC-5\5*R&O=%[W:8^97.QWGRQ4.M-/NOE!U\7JWD5HCZEB0%( M&1[/-/Y;\96;Z2LG(3\"QEQS>D&-O=D6_ M+,N^A)/HW;=%(I-(7>*XSE?U#P.4XONZ7N&7=OHN=*3G3T_O'0>RL9F_(I2= MH]=[TI:M+4"'XG%G[MU__/M'2L9 M2^ +.5H=NFFAF_89./8Q;EH(SQ\(SSX*;4[@L1J=S^I]L9<4I:FH#!==@8N7 M\:U"9 =;.O7^>WD#YN8T+(2/+Y!\MF&_(TX'C,Y/!T0A$T/_.P3XM_O?'J") M%,^@?1U31'\[,0%(Z;ZJ%ARE)R;71;8]F%6Z]R5\61Q, ,GT<4FD+B2*B[XP M2),8.AOA3]QL^,6\=)\YH5\>$&1ZW3[D8%V^\>F8_,HMS\&Z]B.<,6#&> ;, MY]'V[?RAKFE=5(\/9'<0+PX237S&%%?9YECNB[C>R?GN[,>C@\FA^WTYR [Q M^=WQ.03C8(/Q>[KO3Z8YI\I8BV>[,;<[:]0W92[=&"9E 5>0PAL/$Y$,__ZI MSH YL=LMW'-I\VWV;W\&G J9& ;10WQ_2\IT_P/?/SQS2O5A4/TS<"P, MJG\YU/8AJ2.M]WX\M1M=3Z/%=3J=%HNF_L!G;FQI6B<568Y-?RBNOF,8XZB!K!M(9OM_^Q1!ZP@C[Y<$\C+ '$]G/ MX!ZPGITP39Z@7 M$Q@G;3_+>N*JY]"U#PB0A?MEPOTRX03R(1/(\\N"U7B<-=,.5^[FD)Z=:4*L MW.S!5$'/HT82B:]U04P-.>'NFR!@TXFUP1>^I?72=(: >Q[ ]? MEW4D61@.)O\B++)YR/^VBVM6@N_O@Z]?_^KX-KX[=L MP-5"3.NGCTM[9'G7U?,$HL8H2F^EET;PYI^2OI(VMC_+IZ_XN(]Y/[?8AAG! M)*[2Z7\QNS\Q.XYXB0N1[''LH!8)?>JP&HGWW0M7XWMB< 8;IM-L5':[W%2QT2;T7 M<\3D3%*XQ=XJK?2>)O6DKGF$# _>X@UR:.H*_)@3\BV1N:Y7\J5:L1UA2K7< MU7_^/0S*\&KUCMAF.G4F5Z_EQ5I;S.._VO5**2]TX$.A5!-JN9)08=H=^*(J MUCIM)HK;=$JUKI@/$"E_=0W)5< 34?[^P%$=E2%[=HBD1);I@ONIV!%2R@L> MM">2A6C)*V3YGVAUL1TEST/N(6*<@@+)GX!3[71&C<=C@NCJ.M_<+/+=V0.^ M+IW_0>UFV]+MKQ9=15!R[$)8IU11YU,&&D/+Q..6);ZBWDP3A;&(.&FEF#G+ MM7KC 3]@'[>\'SFCM5185EE>'A:T6'Q>+*9Q!=.CMT?Y9E(NNI,>VU/O*B/) M3EUG8JM![+A/$]T5[G,+?L36!Z*H%>STK'Z-[Y0[:CE$<2$=9VU)F[$5KG$W M*<5K4V&0.&[9CFXP8^-6KI5H0LNC<5:2S?[-W'(R+.K.>^EA M9Y$O1#$_C_JJ4=90XFM)WGA%)=6:C&OU(0;7G,+YOJZ/UJ4VPYN MZ;\=YGCLMJJ&2^O(>07"\E:WN'Q8USO=7#W;SE7O+;$V7PUP4XXZNO $K+V= MEUKSYYC[SU0JL&1@R@Q$%P KU9G0BGH[5SU"O@!_&;K:[&KL@4GKX$LO$4,F M9YMQ3%HU#WM57.H?^,*2% 1CTP _')T#+54T[ GZAR^]\K?D3)Z#I(G!G@E MN&@>K0#H5QZ$A3RP .^\,QDDR1-&UB5:&5!]=,)]6[20O >7^8.%''@QC&NC MD8M#Q4L<),:X8WLE$NV?G[="7D&%A1JJ %%'YVNWH2*[(5E.?71BX7-<(Z_8 M[^KQ:,%=LNZJ$',>\N6;JAK6R/O0&GFI^%4L'9:6>E8++E0C#R]W0KD$32[< M52P9RB5X6$,:"*9<0QH(IEQ#&SBF6-V:67W2.+\:$]$=E5%_" M[S_FP(F0PB$#G@O\/5T#='A(/"S ,$?^[P?_XP]RKLF+;I),OR9D^GK>%2W3 MMH\8%6K)J[3D:ZJ$X(6ONC1\55%'Z)!'OX>? =O5F#L9'7PW*P@8M9?J0RL=^)\]$F+.;JC0UK1R.Q9.._6=\SD.'IS\7 .=.[,UQ[+OI^%J/\5J[4!S-UH56 MN='%:;S8CU^92.S9>R5#,/J"8/3Q; @ =+W&.7E=/NS+P- >\$1M)/]47&N# M).LQ[/C8\LRP>L2/0XKGP5$'#OMO6Q#B1T65Z\2S/0T-[Z_+_<6R;:A- *'D MCU]TKHZ?V=U\AI5- ,'BI=C@5Z3YA;A;Z,B='T%W=IN5[./G MO#=([! -M9S08MU99Z*[+?=]B2?LICL@]L2"^].G=8,T\3RV8+\VET(5\=E;8PHW7 MV0+=JMO.CO453F3O-=:50$'O+FYOK#5>\S\^\ZNS? M-OSWF;$R9&(8>OR$J/>1;J_$7]^NB\)"$]'DNL*.\]RBO6P"YH';F_H:X<:] M6X&^WOK^$R"+!\^7O@7A8]+.EZ;RZSN>57;%KL?IUIVHJJ/4?1\Y[?[J]^]^ M^$U?L8^6 3J>X=\\6'>L7?)#O[;I^C%?O[W&U]BM#>6AFO)$\E&#=!A M).BZ*9/IV;^W2%S/D>R00@%YA$];DZF/3+&O0[$4GN69&+70E?BIU MITO[X;HT?KI0XRN%Q:@V@[RAX,/<0\1 /U%E.R3, U)?9>Y:<]/&!\%K)C.W M4!0!LQT I\,]H@SY&CH;(F>%D'%X5MU0Z)%TZ$#%_9J/S[9?>;];:(D,EUY- M(9OV5AMM'$M4R'EQU9!U%P;*J/0E#>_4NHW&N-8\,[+,&?E!D1QR4\O!:SJ' M[V56D@V4.PS(&\Q/TO'83-?RU1X4$LS,AK>]S%-H2P*>Y+C[2#4D0\8=V@Y\ M@4=F>U1!=PL7/NL;9H68B;1$9 1;NC#'YI89)5H(7U-MQ*/_$'1Y&DK4P\,6 M^.^?*JSP5/DT)N8VD@Y@SNQ9!VAL@,"Q;C!5:H@I@A3 MJ>0BC,2L)J:N;Z+F"M]Z8+M#6U54R=I@O=K3\ B(=3;7$;&F1QJ&,?1%W?%9 MU=F[>B'"E PYPN0Z3%MH,]>@_V!U]-LKHDJG'B)M_\*'ZO%-$DL$2H:G)I[] MQVM-/G'__.WITM6V%T"$E\>)C+$TWMF>@O!]$&0P("YW!##D6L3H0('!UI&# M>25/T P[0PS@GSOS[CQ@R-$I#!\$:B1&@=%:-F(L6 _X76##!HJI:6#,T?'Z M"D:HRAKY?F1)^ Z,75-;&B%GP^"0#^86&1I&MOD&!C0Q<0#+L218?T!GTFR& MYRBBEAXS@J.;KYNX'T.91&N%80#"3(4OF*$W1V$5]2^X -Y ]W[SYGZ].#*NAZG$0BQW>N,V MUIE817C/"PSWWMFB/,UAEIZ]5U0_CQ*Q9)Q(\+ M0P 447<,EA#RY!7S.U8&E=YCKA CL+:7*S**:V'UQRSU%?_2>L^QN[PXN4H< M3Y.J@J@^1!@#$5= ENS)]N:;""'R;#J8&,2W.KC]^\\TL#91W.MJ%VVT\H-Q M;5D%-UKO_'[*K2%MB%_1,;VHB3\J9->04Q_E@%M^/.6D#J8T8>86NV:7;8N2 MOBHL4LG"'3B7L62$2Z6/E)! PRO9#6XC&I37US.AR#UDV60_LRS7P:GAFR?= M_'=B\$1NL1.]$K_6-G=E=)>(I4M2]6 ''/^'WCVR<,8$YL#ZZ-;$;G )YT^0 MO8M<;3D=Y?=878D)Q:3H" V1M\OE8C96BHF%,8Y;'0>M_N5[%^ GPKH3WZU$ M7X&G78]VZLDZQ[9"IX'].Y7.?IG2T_INN,MQ3R?KQ;/W*)T MXBUV=K/WZ?BBI$H]>==/CN:EKGI7U7BD9;0R?D5X4=+'793TXBWCX='\2]TP M\OPMZ:%<+G7#2"B70,KEI[EU'X#KC(WD=Q9:GQRV4BB:*&:,O$]RWAO:CK"K )8(*X!Y8@DK@(45P,(*8.]]1N\S50!;ZV*6XYK9J(@L8UYN9EIC MZT$X5;$J7M#O2^W\S&3K2S1M33O6*)E:G:I8E3/ZJ^MUQXR)?*/8D0J%>:$V M.5FMJWY7+BT?5,[MMA/2?#3?C J2L=JK0[5MV6Y=3SJKV+(F(J4W:*-1AQ_E MA5-UO>[[B7;U+M98L+F',JQT5Y74S?7X5%VO_MP>3)'8%KNSV$90ULGKV_1J M/$@>M[RYMW+&1!/B(K^9).^GURP:M5:#U'%+M<'-+:5SFV)SZK"*6HEI6HT) M@_1Q2VLPDN4)NUIT9SF4[MVF!XGA9C7('+><)0QWGFU$>4V];O/WW%H3>7L\ MX-CCIK+J:KU<-J=H&ZO4OE-N4Z56;HQW:A\UC:8WM2*7&$Z[,]:JK0N3%)M- M-/&FKJ.FRSC?G30E*2_RT?;U9#+@LUP-1']"HC$YQY46M=Y&BRK1U:H=GP^F M1="G$X**74O<.F>CL;;H7"]Y^6;!3112;ONH*=NSE=M-[F;(MKGK2BVJL.U* M8XP+Q1XU[;!W*)9*Q.L:RB%M4MD1MHA5O;P;# 9]. M#6(G:[ YM_VR7AC,;[MU)]N/)A*U1HL33E6_2ROWM]%BW1:ZJE!IW/6;^9J- MA%/5VM(+AX\O;\R$*-W>*K-F[?^S]Z5-B@+9VM_?B/L?C+YW(F8BI(8=[+FW M(U!Q5]QP^V( (B((RB+JKW\S46O3KJJN5J$L)F9ZJJP4,D^>\^39T_$VP]:Y MV^]V2G\GU,DFRR]RN.VZ1!Y%L+/WNN6Q5J%8'YL;ODJJ').?7RUH&VK0G^@M"K/[\G[\UOE\#^Z58ZXACYYI5OEPN*.,!,(9OP=\DO\ M!7@DF(0;)AGM5T'Y+ M$=@Q6?N0.[_W9 +S#.C&,$__L79%WAZ=G!$5L$226O5)._98GG*L7N'V><2 M:;@)9,W0R 4&+&!5\.2SR82.V&DO..M"Y0@#LV SQ^3J5_19" M)@/3LC0U3($+>6FYSQWWW7T!RQ//A*GGJN-MTV'^W!).?7^_X5MW'T[4J1KF MR@)V V-@Z8NZSX56P+,D\%;9MHV])$B;E"RYNIN:Z%/P+14P:)AR%ZB/90![ MR0(#'=7S'2LU!7( T]&/X@(+:9XG6(,)Z_9DG]0'-;3]I8J/0OE2'&%^P9\( M'4SMAR+KA-4E[J.(/*2.V_XXKV.6]_.YZ>Z[-3?[!.,IK#EP4^[64IVP%@%^ M#,U&^!B ,::J2GNK>?\/:I(.E0PJ.[+^;AS0!W:#,X3++< M<&86V'D+P"U,]U>/!3:'779?E,M\D0S(]B.REN$1H$]U>''DBVLDSUU\']JD MI\F1U8+/BTRK,#,6V[9I;?79BN\'27)DDAQY/SE%27+DG>U+DAP9TWU)DB.3 MY,@D7!Y]KF3DP>$D+I[$Q:\;%Q_T%-FL*KVJ(2CBH" O"OP6/69>?B@N_B$@ M_1T#QB 9\ZMU,(I9FN<7H-A[>FY"L3_60.^69'>A&QY\RJ$O4M77T)USKVIA MC+(H[U<9O&M=[\9M$?ZV\\FIWUHZ:>EYUG.=@QU*+&\_LOT(#.?*<3+]C;_. M#Q41!IJ<@#,0LFFW#LF2:0*]KVJMLQ>GAR@X,36?0RQCG,=9DFXX*"\##@+7E M7A"@8[;.+X= "1$3A3M!]H\KW <@X_60XME:26[>T3FO,A%B/I\G,O;G! MC_>#)3IXU"">4"S1P;\C/+^^HS!4P[LSZ?%2IS,PW3*:_J*L5\9\<=7.; K- M]1ROP@IM --L^ES7]SO3RH^T2?3PF #2Q]*)X]6F\,L1^8.9R_%JD/BM#XHW M,+S)+/.V@%*VL46<3<"O*T%3YV!M*,1PY@IQSFAD[=EEW:]+BA-M.SJH3G#Y MXKB<@' \0?B2VOIOHY=^=Y!5Q]/JR) :>78RWE0+KA\V. )X3A)IAKE\!#-F M2NMC"O92VGZ;_.NO@$\)$1,G>8+K'XF$/O_# S [ _D+9V;WR#[I&EM= M8H*![Z,#+VQ4%S8P1]G+NV&BE-C\L8D1[#STK!%0HL4G/O.O0+'$9WXW:'V$ MHJZT>?;',Q"]]E"^1."5ME$A8XQAQ? MG5P%L&.VU"^'2 D1$[W\CI >ON2RSI8]=KT-\<6&M'7]1FMK5*?=Z7#5[0WZ M. <;.X=:.,4P=Z6%[S/'3=O2$$]U%HDB'C7^).[TQ)W^+>#]&HI\P[:4$\]+ M#8!;%V!;7I7/Y2@N761<+I2&1;'?=:@ASXSJ[KP%V_/#0B'VCNM#GX=2SW1B M3O3ZF !8D@R3),,D!\=5#XZW;0*\+JX77+XWY>GUKEHI90:C$:7!:UG $<&D MJ-3V MZ3X8=:.8@-'6:BJ4/A=>E'/@<$@.C/D/^,B1)BJ8G>&FW[P@9WFX\L53E9EE MFS:\X&5_7\WQ5BAPO@$B[*_C425EEE),:7^/C?ZJB.OQ0JGP/?!2&H!ODJ;" MVWRF/K2&?"#8Y!J$-[D@HOM^Y+ V#6WY0\]K>\JQY$1@;V5 MA_$]_/YK"ISQ)KPD@/SB#<&>ZV7;G/SGK?NJY)>+!P88I,C__$4 F7?(A+[I,EN(/?2MS[K6KZ5'U)H\_A9\RB M^[FS;L&+24',5AO%W2U0M8P9&2X1A@IUL^^6]WO-6_J.WW[#L9S=UJ6Y[>2@ M[SU\XO$[1REN/Q?BPW,)9U7>5F:T*BXZ,JH&V4VF[P2?CF[MIV>^Y??&SH2J MRJO)=$R31DV41BB%STBRNYEQ8WQ_P0OS9L^D!(/N$(-N3X88(-9'=)(/Q+_N M 'V>X0WBJLK/B>]L5WI^LE4'6/ =SM5[!C8H@1[WD"[W'-[WC9 M$K7M:L#Y)*Y9R3W]WN$-HEKB$:^PHL4=W55Q*T8J90=-]3+;[%I;KET@(_XW=&W6-2KP. MG-_9Q5%3*5$9SQT&CRAS>)A;GQM++2>;:+]6&%(X@>H!=G/M<..4&4-MT0*/ M8'.B)%KRS+"#_;VA['=U[GUEB$R(>&^.Q;(U4:>A=']-#]>S\NO[LRR_ )\^YW^^8;'XLQ92:[:!,RKZ*U[8?36O MPK+=\,@+*?[ZI&M(CC/V*8RO-JF&8ZRLN3"M:BMM;G*_O^4FW*34^[NDNRGU M,!58%2RK*? <9/(X)4B#L%GUTG>6M@LKBAMV:NFHB JH[ %4>IESF H_!@^3 M52]05>MEV;,U.58W@T?H\,GVZT+IA\<1CKI6+5\-OZ78[B,GNM"#-0F+CW5+ M,7TP6?!#^)SFH03:535X.6=JZMB+\ \3R5/A]U^\J/ORS:E 4!,P(9<\';WBP*O"XE0]^ M-[>I0$W-I+4:SN!Q79!J2\=&0DX$'^\Y$L[^!7B"[8>BHEN^=-C_L$#@61F$ M8JJ2 P^>V7]>HAH!<>$:=1"_M6MQ\GCD/*(21K\N;OBO__>BB..1QK V79^ M'C7X9\LZ%(_@X7FIJ/;R)XX]0#OY67TW1CZ0 M5]JG5V<%\;0K_RNE9@Z$WO_N"KFS=1OP9P \@"?-_SQ/OCY\! Z3L(0<"%YN M7PON/K*M=*53\<2'\EZ&>([+M_E42:CERXUB)YTJ-W(/CRGBT4^O(73Y3JHK MI')"(\\W.GP>_M01:N4\UP6_%,H-KI$K<[54IPL^J/.-;B>%P#'==_.N&LSK1@-Z<8GB0V#Y0:"=N&K;G4,$7W5G8Z0+VV%"=XV_[ MGAI/*WD;(7AQXX2>4SKD:7Z*-?2$'2% M%N<[H[GI-TE>A"G#)\]T<<94.IV>A^9:?*% &B)ONP$82;T>.5G+V^)D-JF+ MNE<4L/)(5!@&/O/D[?.!7.P8M.L:JPKC92?M^=;UX$@,>SW4PJ9^D5:=+KJM M#WBJ/[<80H:I,>CKD6BA3W7;-B/S0GV(3:R&QLQG'!AYLJ0ETT:::C N&@(W M'BC!:!UT13CR9$DS01<7*Y[8&M)JU]GF97&]6L*@^\F2)(I1!S9'M'E\QFIK ML=Y?T;(&1IXN*>.,6W.BOR31*M-H^4A.6^I!"VC0)TO*]>C<8C"01ZA@6HNM M6340&E"4.ATYY]J5_%#+\Z+>"%;*TI/6PKPUID]'SHP^,O+HC6ZL3 1,M,1( M?5L;,ZD'Z\MAV,10D4S55[ QF5UEDJO-[WA/2"4&&S,Z=01/6&[,NH-BS["AQY M0OI^6?=K^H:BC,52IL6JSZC#'GS[*]*/I2FEX(JLCE6*DL>DA!'C#$918XQ1 MJ2DAL^"_)TOK]N>=+=]TJP;.300-R73-@=@Z)WQ27Y$K:)=;&'I7,AO]E5JJ MD]HYX1MW*;^^V:Q1OK_&Z67>VK:G.^V<\)%;Q"UG!WK1J"X6N:G>W33*J'9. M^)!QEVN6!AG;R/G(9&[MQJ5M7SLG?$%SJSM$LR:+VPVEE'/U*=J2SPM?0%4M MKSPQ!D:'F(EEA,6#LL^=$SY@?XW%K-<6Q Y>)L59?K.;58)SPF=-L5%-[>DT MJMJ&KI:T,LVLB:FWU*LVEI!4>> M+'XWLK1>D%V4>;]F5#I9I;W#7"CZ)XMG [&DH--R'T56ZQPOD"UO+<*1CXO_ M=-+W.@CQ\+L"SC;?XX':EFKS.:'8*'?+ M0B-&WJ/0-Q1V^X*&?^BH<..Y+ MY@%CDGV)W[[@#_B;MQLF^Q(9CKW913W9EP3'DGU)]+'X[PN>2?8E?OO"/C") MGAS#?<$?L$0?B^&^ !Q+SI<8[@O[D$GV)3:M5M]U5]Y_J]7W%-%(>@?\GB8G M$9P_)-)CLTWJLRU9<2)4$>^G_V9WYJAJJ@[^,'-3O 5S&COJT@NSKI4%#+)^VQ[]S)NWQ)Y+ M ^[ ]-/0.8GBH"*[F>F9C(51-OM^T*G9_E\?S MM<\WV'\G59F']_["+8-=+L!_81WPN:NAY]ARW+ZY*TVF"2IS#41)=)1G^1\Q(\,E M$&6?0/%M$>7MF^POARC=+57&:Z@N&3K6W_3KHX8^_8NV6Y=!E'Q-]5I5G0SX M578^GF7=Y=JH0T3) +,.P],9FKJ.DH(E2LHQ%2-F9+@,I&2B65BL(.7J2HHZ M0/ABUI,1WF\O:"1?,60DPT4,*2I2K59JAE5&BPA"S?.D_P<8&U M];3VALVZADY8.PLK45.\'C6L3:S6;M6@MDM4'RR,D=S)3\N=0WOU3)K"KZ0G M73GZ&D\T>+->*$&#.*/!7^L\)VB@L;7%N**T9)1N%\ZC14_5.'LD3;8=V+H/ND ((DTQ^,4](#'S(H;),U-U MHCK/DF:28-1=)\Q$SL]TMJ;33CR1X= MM4WEM,[M3HH8*TP:RM.RMEK:BMKXXV M6V0KA7* TOV93:^V4AD)N#$-W3DXE6;QJX3(DXR9!!&^%B+\M^H(2=+,%T2$2[E5SB&"[&O3BB#@/-K1E%57[P_G73EJ'6%IV'-T0A0LHXBM MQ-*$:F2F.8@(F1^_Z$P:RR1Y,TG>3)(W?3SP]5)>F5!F#[B*86R+&);] N*4H_;]4$&KSK8+]:G1)]@VC31V?*D>@/5#WT\:I=DD M%>?VJ3A1RV"TJ3I1KSX>"'0IG]-S!&*M#6<,,&?%YY!F=Y#+&Q4M&W6-5KGJ M:]ZR(P9BL4.3[=VVDM,W$(%@JYLT^69)1I*[2[(/AX3L:JI=RX58E4;R_\5R] D"@,3$]F53C05&7K"C:=3+C <8GG=( M8:C-\8PYZQKT-(OWZ1%JZ4345:XU?JYM*4>0^/Y.V(FSXJ 8B,&8#>NU<"J- MO9F\F&3X_+D/*6H129 @!JUASE?(6JBW )( !OA4$PZ0UXIU/1= M,WHB%Y'K(T$F#LN,%1*\T@E*1+U(=XN8;"!^9=T9K&RAJT>-!'.AOW0JFPQN M]+=J$*QR<]W/0>M@WP.'3&.9=YO@_-N3P!Y?80OG8"WZ=/N<:UZ)\/XOCZXY MZ-#XH%1?6JS 6_XI_2M5MB#9P3,DTTSE===S=-D/F>O)Q7*%5W\&U\)=.W[G M(+F*;9K2TE5_'G]X_E8:O.IPI_E"VB AZUO'B2"F.O5^2KYG'S\(!7#_R4'6 M]V.>"?]A#/SD "/[J\L]YSBO9W>H__BH4XW(/*#?]([VUZSP;.#'1>/D4O:_ M./S8-TM>DHVXV4:\6:^3[,.M]@$8PV_Z^Y.=N-%.X ],(A)QV CL@4X.ZUAL MQ'N.NF0G$K7INVT$_:;#*MF(VV$3FNA-<=@)_(%^LV8YV8C;81.>;$0<-@)@ M4V)*7' G_C"'[EUWW^U6S?[!JJ^J(5[<%:^HL#3YPT0(?POVS"[;YN1/J:+8 M)OSP_WY0/SY[3F4>,/QU1.JFN;OL!R@HOWC)K/BM MG=[OXNF_)V#Q*!;X9\4"(\ZD!'XIL8"Y.A="T?<\RPD;Q)H-\*]RF,:7#?8^ M@J_-!I=#@[?])0D;Q)H-\$MH09$6EH)GPG0VJ.C!.^HO4^7%1GT+342YG-%< M3_-BV9?(UCRD(<2QCWU4M5NN$SX36$( )8JJK0%JS2!)]Y6K@$B>LP4O&T^R M)&5L_.66EU!&XJI8=76AY$ #= 11EC\E/?SC=F?DR.C06VSE9S4#? <@ 2SQPJE,FD0OV-$FBL#/Y>^K MND4<-'+$BM95?TJ#BW7R.KHWXMZW*YZ^CF-+KX9MB<=K^0BYIQ&5A5U'D5ZM M[Y9E!IL4HVX5.,P*]&1)"IZQ+;)BFYS)DX;8&I/7OKKJRN&]>( #?5+.?4_H M$(/%Q0<=_DC;.8<.7%W)HHW.1N,[O9S0[O?9;%:+&AURE+2VJ6!AH A5TSJ; MA>L6;0Z@PY6OL?H6JD/H]KA7=$ 3W>&S7I%SZ) =!'[@M1E3%(RBT*BJ=G\X MBKKOA9FMZJ/-5)9155@%0J]=6+ESJ#M<^4JK*R<#Q 0=HDV\O3(ZQ,!LB@\Z M_+7NH)!3@B@,"X(HK=R.V):87%>(&AU:*U)CQ9PY%W4VD\L@H]K")@. #M>X MWBH.22)'CKE.3^#O&ASZR)4JD?8"NWHZ2>1KC0%2?J%>P:ZS4,D1&TC\8D8O M5Y,.(PY:VIBZ>J_@)(\D7F)SPT23R-<:'XCX"DV$^]N!VM\%], 0F-9R@>VP MGCUI 8BX=A/A[ZI$_";#)'*QN6$*2N1KC0%$?*7NPM4!XW7%>@Y%6CF^G,.R MK#+F $1>VT@0Z; V,=]R-5TZ5P@OI% M&PZ?:&//PLA3MM],SGZ:7DAPUY:@*E-Y)2@*_ ]9>+&T+/#%E M3U,VO"SLQ1>"F6JEE .WN>"["]U+*9([2RVE+?0ZNBG=2DF3M60I*GP$>$(J M!YXI6=N4"P3%G6X!>Z:6JA/R?#A*!JL*9,)FJ*&MY'-7+DRJM.47- M'6CP C?V3#%,2*+KD ;#Q\0!E\7*LBWI@HV(?;R-26ZQT9S\A:_[T[0Q&EF9 M7"Y*AJ'3TVVCH_.6YK5^_"+3-'::%0S%$LC18YN(%(&F4W"O0Z+E5>5Y\P@L M_!.>!O+A+E4%MBLRMP^IPZD1BKIF 4B9I":^ ^40"HYR5KG#VYZ>9"L!?+[WMMW7\OFJ M0S0:KJO!"VH9ZE1O>24,$6D';74AZ184N>:SDTIX.OHB5!7 ]+C?@$PZ%:BI MF?3E#JY'1CI0_1G1GVA^EKF(46^D!5VA)>HSG,@LFRUY*@8_?F%,FL9/R[<@ MV9S'O?6MJ6].=1,>];]1<0!%9[HR>T+.(Y1Z,\E+!>"[*1DJ)&M;5^!?@< _ M@VT LU/?\YU0X='M"="8NC/UV0Q^\]90RS'U15B);EOF%F@DX#-'LC1UK[:% MKU\ A24\$R;J%#POW&BP0.D)VX'5!]B#Z^1277NI*RD:I8\-B_27S7^>RP7D M__T1%)X>1PP ^B1 @=01!H ,Z$!Z4[JF6+%<;PRUZ?!5 M&(IBX_I6GPT*%9L0MQ3BVWY_2)D$]X+4B*LJ/X%F QLWNJKU*5J_-=%F*'/8 M,\K/JU2IFUUF31[/;BS-V+D3(P..(B]0S;6Z%XR]0O7:4 XE^\C-CR(,A0OP MMJR^$GHX8FJ;IAU (8_C)I'A)H&]$FN%EEP4?2N7GP286)!SK8@W*<>O6@0R MZ5'HBL$V:,TA46L:P$VR]SNT527G9(/VFD),W1O2T963,9;#G6?N!L9**>?FUB['9S14W2(S?(IE");4P,B3MXO-G33HCC(M M5%V(UF:!^^O\ C[SY.UTKSQJS55]C59K6]P6M_9(;L."J9.W][EY<078TA9I M5\L;J*;W#$(;DV?F&5 [B>UM,![1;+?#N1KB5X(Q=3J27S27NB"@>:-O=@RA MFR>+B@1'GJQH..IGZ_RL)(%Y3K*H->P/,@&,UA]7]'LA_:3&_5)0RA80%,]V MMGG=54S;!>=9%[P@:]J*/"+F.Z R .?-%8ZO7LP)>]+#Y_?J,/GPNU9(Y4:/;W2%=IGOQ,A[UGV!OX>[NZ!S!V 3T&"D ME.LOP+>W\'35#QL#S5_7"SU"0+4"7P78#OZLV*Z7LAUPW'H Y,&<=N'3UI+I MJ[]7?MZP]G^&=+HRMW64F3KQ3568/O+=P> 40 [-G=&'MP'VZ9OPC]_]LC::>F#)I'OV2\9(;AWYWAO!))W] M8[$11'B_=;(3T>]$@DUQV0@ZD8A8; 3Q@"<7\5QP)_ZP:N==O35I<'_[AKVW M[&Y,1=U%X&^)];M['R[8_#IAF&>T(!\RT1:6_RVQ3IP_C_SR=UVR#U :=>9N M0;=T=Z9.4IIM3Y+"Q[^U7Z->]T7RC?<&X+?JA7?EO(A'Y^U1W(I0VCAKTK<= MHVPU'5M17;>A>L*TK0+:K%7W3/XP;I;K&RWH6D9UN%FWVB4'JY=A,(?X\0L< M9 QZE=9/WU>@Z6BDX!H"C4=3)!*U0%\O#?4R$EW.6G*E2DSG1C'7+=6Z@]:J MQ'- HNFPF1N.GF:2_*W"<5/NA<1 = M9[LGQ%93K>$#/V[[P6#>+><]]?!_( MGZ.@K GC.(@PP$=[S+Y ,C-Z2606GF5/).L&_>R.)IBGS+ MV$I$]@/Z1M2R"%,\DNU>UBS&M9=QG 3Y+;E1,57*@],R.]3%'V8 ON49VXV_S M(^/D(!9 0*:!VLO](/?T(R7%"2UA]](QB+ZJ+]M]Z M65]T^.R=]-/#MGCV\B<.T'GYH@(+(Q_(*^W3*QV8>-J5_Y52,P="RG]WA=Q9 MX8$_ _8'R&&^J%0\? 34Z+#(RYZ&[0E@3X1')I4NV5/L;W+ ;[1X?/PIXY0*P/="_Q2*#>X1J[, MU5*=+OB@SC>ZG10"QW3+#9'/QV@I_Q0MR9_ =AG_NN&L7I>=OCW%L"^ [;O@ MT'73*76CJ."+[@RV^H">[Z7J''_;MQAY6LG;D/L2,0:=W@D2ZC MK\3A6C4R<"3[>B0VS-(+M\P3O%XEAEK/KRE+G3M7J)YQ;*$ZZ@P9U-\A=+=C M+#XBY0T03"M"OEY=E"==W9:41 D[:Q)3NK-D)VBYU5 M $:>S+.=&6_*RFPT0:L]=]8<"@*RG@7G2MI;6#>8JYKHHSFM46VL/-IV>X<+ MQ%^.5&F\6B(R&BUVAHHQ4I@"4<^USA6_9UR9Y(4N/3'P]K"NM<;JLM<\^$)> MCNP17C?3[S!S=!%LNJ2U: THHG6N3)Z@I>6P*FPL7O?L9DL>;%O5=NM!9F?SCR.9ZUY.+;;>!+G*+KK9L6':7AB-/Z&DJ MH[EIE;=D\-Z8:XWITWG6Y-W4&#ICFE_1>+V;Y1K3@.+ R).U=V2= M]_N+U1!%&".[Y+K.J(!S8^;TF9M:3>:=ON>BQ>5\PQ"J6BFQ 1AY\DS)XS=J MM4AY/++11J--KKV1=L&8/=.@8%GN!@O4V1CT1%#(AC@=5VH<&'E"3V2JX!D_ M,!OH"EGFLU6B2_M5#8P\H>>TU,74/C*1T8ZBL_Z8; 3##GS["3V;W2Z+MV>8 M:RQFB+V5Y-%4+K: *7TR3[%0(HS9UG1$&B\'A=W2:G=Z&AAYLG99R8CF8)H9 MB_W!9K/E1L1N)P,I1D\?ZM77.89I#'VTWR:<5E,EY=DD@$-/5B_XBW:/#B@= M[2S6@T5YJO@8S<&A)\O?J9U!KLA7<:/*:*TL/YFYG88&A[Y<_QC-8#C*3@&^ M2/AT3!*$-&:G!#%FIHJ,T1+*XM+)P\MJ1]G1^EHWMM1 K50G-=8I!.=PC^KN M&F21+9D&CN0, ,3(:B5"E,"PUT-+F7H^IY3R78->;\NX4%I.&]19X<\4:6=6$SCR]*'^$/4:[6%0,G)%$S,(M5PJY.%E.B.=@XG'&,1!#T9M_G5IB_W)FV='+*'Z[M>X01?6CK-H+T1 MU1%;S,QJZ'A)PI&G$VT4&L5<:5L=H6K3\58C@B@LA+/@X_KY%C;.-!NB2L@U M!5W,L>),.R?^G5*SF6EJXZU1U?QAK^9R7DF'(T\63R)Y88=Z7DGLY%1OP76X M68V#(T^VOML8S8+]>;Y:1>>988OESHEJ MBVY@]3+&5]".+I@LR4W'DV$ 1IYL$E.:9]>:P4Q%OZXOE5VCNZQNN;/R9S8M MH6EE=8^G5XRSMJ?K32"VSLJ?,%S04\*9=T4Z6+4E9EZLKNK;O-E;(FK\]D&B"IV9E73<;Y5FWD46B7'-7PN8,(<'&;8F3-?E&ID17(' MIHAD,Z)>V^%#6PR'GC#T=L1V5ZL.W^6W:&&)TH59BUL&<.@IGP:C=6NT8%E% M%&BY.ML8L[YN@\>>.-PFIA(^%3CX2]9*EZM7C12<53755D%,-\-B(Y.%/5EX^ 0TBU?G7#>&^/& M<:ZK>=:XJ"D.^7:[44U\BGA&Z);P/[K,LUBN5LC4]Q'EVQI\\RJ M?;?[Y'''XMY1)VRB U[AA@W/E!EL3QAV7]8."X"NOT\TK;UQBYPCN4]EH-4= MF*/= EN)Q4P-I74UF#5F25><^'7%R1#?L[I[[^A\0*DG'T2SZ,S)(E)OZC, Q[O_F)_2+JF8T]\ MQ;M89[&W#_ZXK?ZFC$,S]\0X>=WU'%WVX7&1<$\".W]&ND-ITG,Z?>Z8CK3* M\G31V?WE2>G3*QF>=^6[T $=L[5'40 "[9F8D>$2%2"A01#'=EC/%WKUHH_C M'54=>%D*O(TNZ[NZI;IN1]7"R^F>KIPZJ#%N/12Z,<-NR+R]MFACA2X\M=): M,:C$?;IA5?,V6)@NB3/T]NC5]1YE)KLHI"BST [O!/8DV@#Y 1O#D,QAHF.56 M;L7F:Z+OV3;=ZW=6?JVU[]9)94ZKW__U%;Q_,929]Q)+[G'-[R5M1*&]P$5B M^$6:@GU++DY.N^]WVC6JP0XM;+66L>@U=KK+;#/.X/-ME/[ZS")L1;<(9"H; MB)Z7AUS1D4MY>#]XYMTSZXN''O:*?,%V5##5E!)>OZQL4YXC6:X9;N%55/K8 MK#]V+H>H^S^^1::+M;_\G5\BZL5'ZK?X:A;" 31R!\SH/D%&4=*MFNV>[:I+ M:(71N,0U^0XR6D@YL[L1P\81X34_;W703)R<5PIX1"UT-T*P+EZ[4ISI=QHUH7IS-_ M/0S M=P[]V(?O\V801M&:LJR7)VAGM-V0K=J@66[]?6[X>T'LUR@J,<)@2&L]4=2' MDM%9.>Q:0@.X0J 0H4D)R3E<6Z9!Y[VC\2N&1B%*X MOI>4Q]\;$A7R?6??R5>S+3X59)9J'+D4-BYC; L:$RBEV@Z9PEML@(%!LXF[ M];L$8"*S++X4PB3E(,DQFQRS]V!M?.JPW!;Z@V7'M_(&GNL4*ME ;Z,D>KXEOJ(44+O4:*5LS6'2/G2]1 $55+BZC7'8,8[B4,#W'= M9M<[ET(-FI7\R@BM!>AU*>N%?%3_>2 HK%&M>?Q$48?,LPC4&)%Z=!5?)),G7EI4%TK,&QK;. MK%2OQ]).#F))TCPKT402321").DXA4)!Z5>S*$)G^XWBI%)>%_^^6N8,!I2< M]J29F:ZJHE[P^D[ D^3*@!APZ+WU9C?-)-Z3Q'L21]17=T2=T.AZ?4V8LY>Z M?M[NRAO9KJ#W]*E!(Q-3DZOS4:9XHX#/;]NB%#L[OL%5=FV>GM0\RL]I;:;0 M@NO]\8L@3[U922NO)/:3Q'Z2V$]RY"9'[JV.7 RU.9XQ9UV#GF;Q/CU"+9VX M47.;WQZWZ721(,BM % M0P#DF-B^;*JQ0-/;^6 B6'@,G#"7,$N"\GS9< 8#WO )HH)5EYO!H'"5^P]R MBWJUZ3BNR%>KW6&[W;$PEPP O!_B050F<>)&'@^Z2P3Y4$ H@9!+1(0E.V S! M! /!U +)3?W/UV3&<*VO.;(A.6.5!N"%OU@VS628 M$W8,R?1%B5 .=U2=<$^[7'[X^J.].7;LB82["EP)9( 994;$=->:HR MLVS3UG3U,&#OGGCU!S!26MA 4=O!HSIE Z4MY/G-!S#A GL0+ I($5@/ M$'K3M .@W[X-U.<%[F>XUA>*V/NM>Y]..=>DFA0O24-TA7"SKM29+@2\=40; M:+S^["@S=>*;JC MA#M2@QO"69/RXQZ%GSPM="^ V6U=FMM.S@3+[D(F[((I M94U;,0ZJJ#SN%X8^,ZVT<4-:U0AYZ^Z,RO( I+KE@[=X;XP;PV'8#\#0BK0$ MD_4<7[V<5024RMG^CG5@![S8X=?SA M^:1@BM-A0@MI@X1;;!VGA9CJU/LI^9Y]_" 4POTG!^-I/^:9-748 S\YV*@H M^@^X.,\Y3NSP0FR_Z(^%7RCZ@6;>"M1.]/69YT.$F@(Q.%+M^#L"3ZQ>3 %PAS- E_"_:2(=OFY$^)I-@F_/#_?F#HCT]2C-Q#:X15 M#NR?4U1^\<[G!/SQZ^VD=_GS9<>)>%U?O"[,"_N=/_WW)1]_J9-S-$A,E]B9+O>@EWXQ@R8:(B463AR.GKL@4D*AJ VA"Y_9SVHC M+JOM)^*4B%/\->![H%$B:C%@I$O#,EB>I*F))?5U+*FH(ZKX9P.JF0<\VD9Z M%Y:=L/CU2ZDQ7PI)8]!A\$O1:V\1W(]X<<^*21,I2Z0L'O0*];O[$;*&ZGT5 MV3I3XOVG 91+ADONAP?$L 7!GD(U?:I>P@R(6:^Q_*%(/K5O9* _ELF[/R^F M]\=LR4>.OU#H(V:KBZ+E-1X-&?ZHS?7+X/"%0#UF>W^YU<5N:5&P-1/-#B=L MG;#UM=7TA*LCW_J+K>X+[^A7\J2'W3M__,J=;89V?S[R.TH>>FO-E^DA?.7L MGLP[TA99<_'"QQJLA:W&C]\Y"E#[N?PE;D"QW#6W^^ MW?@;TSO;G[.KC,D,72Z5I]JU+*>/K(KJI MCO7UY?G*&43OR?/)JBY^1]/]"?2S-*KG\9$S(I[MU@IN8Q6,Q5R+I8,&.5G, M%U#$Z1^_:#)-$*$/USHCSFO+Z,R+;7ALJ M0CE]MLL$,?,(Q6HN\:*^(7-$AWBXNX!A%\P7FLYQHWB)$=,"SA%FR+4(#(_?I%I MC#V]<2L!A?A+3GQ\"'\G!=?P)M1YVIHU^1[/=R0%T;.]:96I!O;0S M(5K/ ;S]*[P,+ G ?]$ _(5] HD#X(.P!26G 27G@%"6SN?( C:I\L6NV1CO M5FU$[MPT]+Z@1X['93%?[-B-YK#H5+.;B39FH:U/IRDL\>/'.BIW82,^L=CC M+\D?-\Y[MC&H*GRV+ H.200XK]9;VQ:0;6"<4VD,IY.0^W<1[B3N_B5D^[PU M76"5[*;?:+#BUG:)6LE1);$/Y1A8TUB:8$]39Q(Q3F+M?\3*US")W39=68_7 M[!SM$SM;02G2RTX#P+;0)";O/;[>L"U$L1=+U5-3DN; .ZPM[W(6X?(<367)XMJ\Z9& M^V34:TBY_"IC5+O8D!*P^M8?!'#E/WYEKIDL'S/4N7+$[9L@R6^B]S%&DJ_E M*X@%E'S<:U Q2YF%(4G<2HKPO[U[#"<=PQ6VO6&J*T6E%S>I$<&!*$\ZM8X=_+!DV"UU&L M^4M4C\?/)3YG>XZC5.6BX<\Q;I[/<]U9Z:9YY;,\H7O2<"6@$CUL%+R)J8\6 MW!A#P\1R-)/&R,25'>N(U)\@C=\M-'P[63P?S1TA?K7CK#G3T&<2*MIEK=@O MAJ<@K)VFTQGLBMG1WTM7C6/@][-$^.)1T?TKRM;D^[6^C5%L]"Y.W:3U[=UM MZ5U7O"4=;>]L2^^:6R/WX"?,>F\[^@&U^&XZU2;%<9?17;]'V_/.O/B-8OIPBXJV/0ETTSSC M_\%)>N#)Q( 3Z7S>[F87!13A@S&&AU$0)DWB^'WZ?RZJ?WT/?(CX"KT8I,K< MQ49^'X:-]B:RY#S[\_/L)&3QD3,L:-D*-V#G:Z-/]'1YJLJ5U;@%S[!,3=0!)_=&F>U)9A)>N''I%0&@?V+[ %MB<9*2R,W+,SF'+YT"3X4?-B3%-Y =,569_CWOTFL%@XJDM]YS24_ ?@"3GS;O715VO?Y_HZU__ M"_XYSD4Q5 MS_Z)+(ABF[;S\PBSSY8U4R$._L1#CM141'94R4"D*7CS3\D,I*U[9&E@XY%' M+^;/1ZB&A$A1#RS[C]33CY <)[1<2!OD&<4._(^8ZM3[N?_6\:,0FH^?V:X. M,>?G_H;3M0J?_>*IX;9X]O(G#C %<@SX]; JC'P@K[1/K^2*>-J5_Y52,P?B M_7]WA=Q9WH8_ [X#N&[N'QOLIWOXZ,>O+A2^E#U-Y>#Q$;;'.3"QM&?DZZ,% M7(C\XBV'2'S\*>.4"N#4Q;\4B@WN$:NS-52G2[XH,XWNIT4 L=TRPV1S\=H*?\4 M+0DFJ%LI;V;[+M"(W'1*W2@J^*([DQPU!3Y*+57G M^-L"P)'G/JWD;92KOLVNAGZKH_$(*)7&N-L3'^>F2S@?F9J:>M4%T5 MO(WDKBRQ'(SQL%;XY5#%S\ZUF=N=\UN\Y\SU#48O<\$X-*->CFQ-E:7!K)HD M[WN]LDIHO<7*;H&1IP]%5O7ZFI&,K2@-G$Z)X],CBSXJ#@UZ.&\ M.JZ@E6Z#AL^D7H]<6JM-F=&&!5%=B$(S.R4SN 1OW61?C]P@BWYF+$W[!L+I MHV)A,II/"K!_^L:*O: M;;\4/O6$4.*<:!8$1^B+?6,BVN4N !(5#,5.5Z67:8T0MRC"5Q=;+F/;&.GK M&HR2G0QUVWV*KP0!:N"9XG8R6)@4.PV'GC!TC2W5^]P"RXK(F)_J9"UHU\AP MZ"F?VFM^UD)8=.TZ-01?5T6=V0'K5BL/)+,%AYX05F=J97/GTP-47Y2Z*C88&'0CG, ) M85TL/V!=H8:*JY[$R^R(\_0MV*[3J>(%9-@LJ],U3_=6VU+=DZF*%YP#M(ID M*C[G(#->S:R(%;>3!PWP^C,;@)>(_+S/HSO#'^)$NURF1D(/XMG)R'RGK&W4 M!;H2%\MB?UQ@\"'3AC!Q,G+9FJUS5@W'C2J"MWW3:!LL<18E.K:0G=6QJ8VJ M:$V>;?0F,V2T]!N MX?&H[!7$HW42*M.2[]G'#_:J=/C)"X7[F05Z&'-JT'C.<6)'=7JO"5PHZ?39 MF?_L^39XYM2T@Z-I=_P=@=;US[UU$@ ZO6L8' RU\,7'H9+LVJ;OJ;>P"'X? MBWSVO;/6['G3]S+>PU$DGV)9E_>:XF2[$MD./9FTE.R+Q'M M2[(I\=N4]YK+)/N2@%BR+PF(Q7I3WLD-3K8EP;!D7Q)QN)P/X! M$;Y U?9?M)UZ29.3..#K:+/?3(YNT,KUJPG1C=LT?P&:)#*3R,P7*^J.FB2)R-R40RY, MC7[XFSHY1X/$=(F=Z7(/>ND7,VBB(5)BX<3AZ+D+(B44BMH0NO"9_:P6_K+: M?B).B3C%7P.^!QHEHA8#1KHT+(/E29J:6%)?QY**.J"*?S:>FGG V7L*IX87 M2GXI->9+(6G,V]/&CEZ1]V6^]-'TK&56(F6)E,6#7E$WD[ZPD#54[ZO(%OL> MJ[P?0+EDN.1^>$!TU:EO[BE4TZ?J)WKRVS+G>G+Y/+(.":/+_VTNR MCB+4?BY!A_NR]'&=Q,=(:\0+MD^/Z^MLLRE?Y0Z",$AQIO&XXY:I2<#A--IA M,!%K+#9V"R TP!L6+V*8AEOLS%H<=6>D?OZA,&CMS<=[EKA^Y"_7T+J3\MCE0R?E^ M 1EOJ-X9>=X*SMSEIO4ZOT7I>F9)YH6A"N4Y\^,73J<9G+K/T_V>+\+\WQ?7 M9<2+KY]Q,N*JRL^)[VQ5R?DX'^]C4##Z],C#:%TG9C+74@Q\A\X&C=I\5=_! MSN.PH32&G5X?&\HE:;QY-K0.PB;7! 9OD*0+]XF?=R@X>/&?5Y'92U77_;%+9]EB_YD3)L& MO'*!AGI4FD!/P2*Y6_1;HT7\(FV)&G%Y)X%4RBD%&-COU4;O?F$$E M EX]FB9P--$AOJ#HQ,B3\'=B< V? B=,YJ4*6NZ)Q:Z?9\>YD;+:M0#+0Y\" M>VF70K3^ T<"5C0@51*U_ZI1^PM[!I+S^\/ !66G 67G@%&#,K-%+<=?HU6% M]//XQLRS1NN6%K^ %T<%MK%<&T5=P92BG77UIC9FH<5/ITF63!SZ<8[/7=B4 M3^SVKR#+'S?1NY8;$#D":XO]2:G0+4V4I2%!Z::A*HY3I]*=A-_O5+R3&/S7 M$.[S-C7G-QL#?U0LH#C*\#ECX^86QHDKVM0)_W]Q:_FCO'P-P]A' M)ZWIL%78H.H.49M:OQM4',BWT# F[SW6WK M1+$72]534Y+FJ.H"L,7E[.;8 M+#=:4_H,&>+<>N#Z@ 0X(/\T#1'JY@A4('S,J M"E1@,3RIJ4["U5?&_6N8XO-Y8<>.UPV=+XX[TF[:6?';,@?P_"JF^/!N3W&*C.1%N&G4VUT%1;=3K6;0ZMGED,]0V M5(8;8VB8:(ZRZ0QQ1?OU+L[8NR@,_88QY]L)W\=-O6++*NK9_&R$TMUQAN$7 M7'Z^"<41V'H,E:8I-@D4?P-Q_'8QXML)X_FP+CON!*.-WL\;JU&/]B3"'D\6 M&A2\S(]?!)'&F3LMJ(ZHF\[^@&U^&Z:W2:E6RAB!MMITJZ"$_.+QBYM.WPI M@+ATOLQ=;.3W8=AH;S-+#K1/'&@G08N/'&)#0LB.T0+O\4*N5"&,YFY>P#BX M\$QRB'W5X,03C]Y-W $G]V:9[4EF$F"X<1$6 ;!_8OL 6V)QS%TN=RR.*X_7 ML7?A*/L%S*ZZTI7[!7PZ-*0R;ZKYHD3O/'!B$:'9A=-I@DKJIZY2WW"7,/"A MVJF8P< )*;YGZMM(9]HXWFI5#9J=&-)PU>.H60"1X!:I;PD2W!D2?*3**69 M< ?ZP*>L5J=944?99G;)%VOSB:U."Z5.5H.2#ZQ6"DW3F2OFWMVKX,<@POA7 MMVG^VY, '_T*-Q[RL&[YTG[G+S[/N>]Z^G3[G#2OS+=GWWWJ:#I-3-4K5<-65/4_]S8:3-^T[X#MAX%D(M,>[:L!\$NO\% M0VV.9\Q9UZ"G6;Q/CU!+)SZ/N\\U*V'Z&H5?(VY#8ZXD-UEO.4&'L>QXZV3;,[DUI9!!R MKKPLBQ*ZZ.P&6I=UVZ5U*VSSQ9SVZX-327F Z;R9HZI[3%N Y<[V;A3K:-Y15SUB(9+6QF4S'0@70_CZ9\R\(M;8GH_D: MX7!45W-+WYTJ]2'%_?B%$6=8-)#>Z$^2L43 M@Z? MW3POH<4=PZ-CU^P=$M-?52 PI5=C0>PL\+BFE23XB5IB*X0;M:5.M.% M@-\4H!9K:B!W:X- I,UE=NH/T=W&X&"[8 (]-9:O*R?863DI$?4BW2UBLH'X ME75GL+*%KG[;@TYWM*4V,%J\SY!XOJP$U9D?0!K1#'9"H]L#\4UXZR_P93-% M>R6#XTN&(%FTLFB.NT85T(]@3F^,O0,.^PM*$:4"SO)MCC6V6SUC\-F:0\ C MB\!BC\0Q4]M5\+U%N,JS^CI] MJL_(PN^ITH7F@2.#[AX,I3P(Y(2U?]>?SA M^:1H\.S#A!;2!@FWR'HTX$UUZOV4?,\^?A Z+/:?''PC^S'/G"6',?"3@Y\% M_0=>;X-G3@$_'HEV_!V!?J"?,F!= M PD F?ZSM%T=\LI/)[SR=:V^>N;![@]??!PJR0!L?$\]>LO0_4)O'#A_Z7GY M:!@=+.WQW[_RHN$/U)NYWLF^1+,OV /U9L91LB\1[0OZ0)')QEQM8_XP[^MP MKL0LQM$.53)P>!^UL N$._9 ';.%/@]O7+P\CHI?\.H2D=L#@L0LXZC5.6BX<\Q;I[/<]U9Z3I]:$]MB4"-M^#LFBY&ZP+^3%D.I[9::^IZY]H;CZ MNQI. D:7!:,&F%4W4,VU6@]=-V=P*#>8&IL:UK+Y7&$]'(LMCQPRVC@LW:/2 M*/96!NE=:%1@EZA[5:*B0JN8D>'2 )8H6!%B&M2GNH%][LKN_FQKM=!*143P M$C?07XVIB$ (2G:8K^!KH4D^A2B2Z5Z%)?!\P*MG_./S6:>41Q62=X ME*[DAET:V]'#66M,[;&,9#)WI4QU'Y,5$I7J;[#J.[0$.0)7TA3DXBBF3!SU M#0B#J*6\JH;DH-"^@6.&3(SRQ8FLN \+0QO:^13N-O7M'QQ96R M8P>_"[6*2-2RM]6RR LDHXLO1K[T>T3#3U_(4&LJF2HF%7K&8A-($Z9H:^UJ M,&9"W8U.9[#3Y.W?5!!^C7K!\T+^^BJX.!1#?GXYTG%SK4:>:/7%21V5S RR MU7)]6\(#F"L+WO5OZ=G(H4:B]#"'=M".T6LT*1:Y%LOIO&BL,H*X-?FY/M>T,7$Z4F;XK=*J-!OB M8KAN:?V5RA9]./)DG@6O*)<&7AX75X1?(^OV!"].X>)3!6E6^H+"YWAN MH-(JVYLPW)@\?7M1\6VWU)9;QD)8*P3^_]E[LR;%E5UM^/Y$G/_@Z'/6&VM% M ,=S2M(Z?+B[#%\ MCYIBK3(&4^+H[6A56K?CS7&XT[K3[ZIFH:^UC 86P*.1\_6]<[^.5?B.P-U% MC7&9;C'YABNJ^R-5I#\7G5HA5JP6Z/#=*#%+ M9HXG4*_?T49K61A-Q4$C5GBLYG.U,JDQ>C1T*B^R=UI,?YAF6P^+ M9K8AQ9[T$0P]FFL'C06&56HF7UY/K-&T/TTBASS5G^N9@>HY-+!RBBFINFD; M 1CTA!C7C([YV*;M1K'(U9X&T=7 <8\?K,FP+6R],*X/PY@S(=;)GXX+1!SH MJOQ"8D(B\AR<*\=GVE>60>$E/I.RG\E_37QJ#ZP+I#"TI#&2;14)0^"19U(4 MDFI?6XW;W--4F766=4&0,^5%XY:B<+(4!1_Q^GLY"DDFDGRQM]H-VGLI+'SZ MAH6_RGV)OMCWX+8O%]J7FQ:[QEVY:;$KW9=;9N)5[@L=2=PVYFHRK5ZUCB]& MA)3OYI)O?BH6GKWT9K*<5:?_-DU2\W=W>AWLO7/7]7\I7VNP3P[LR &-_K\? M[(^/DH:-1%,7O8 ],>TVQ7EX"U_B78>7+]@7] MYGQ]3>";B_&UZ]Q\3=;^2IX#DR+O*&FF;8B:A*BY@6:*/:.&BH;_QK/X"G;; M-7+P*\'?+P*6^@3&O"K4D]_?C1AD;6R/D7O+]1R1[F\ [>QO9*7NBDK>EQ2O M$UQ?G\WYNCI^I)&%35K4C1DU\>,%"3B&H3OX/4$9T//Q^)XVQ@FK4Y9K ME1Y=[LV%["9MD(V_!):ZR?4)PZ%?1*Y?"QY^&]$.Z/GX&[)M._F'W*3D/SQ#Y@T:U!/5 MNBNIPA!&5;"8>@JT7JV;K:1F"YV%H9E3JS6PU_*YC:-PM;)\:F?"/7Y]KV;; M9B(EW],--Z69H4-X&\]G'=VTRG,1C4M+UF?EV3T3R+CT\J] L;S/-GM%LQ0' M#9V9R+T\GR@NVURX4!ZL?J,!]]LTBS2F)XTEG9M.$]WLN%)Q[BMD<#<0D>GMX0NS?*?%%NZ^#JO0+3/UVGU;;)=5Z5VIS"8U&B44)R. M_="E:RJD!2;$EN.'NZH^./8\T+XP!.?2A<.7=^ M<7?$.Q#:MVOKFR?RQ3V1BUT[@S-O!=X-'=P%K1Y&^?:#&,],>UI3DV>]B?-8 M_CA,!]Y7TDS+L*'?;E8TC#4F.#?#.Q)4N2RQ&B9:PQAO=A)JLL6M5;NEC[A^ MRHVH,B$Z<=P/^*8.;@[*"77Z<+'[U;> MJ1**=[E\I91/K?B9,;3UB9.F"Q)4,X- ;#05BK^H$KZ@XRM Y^R;:W&R^]_O M"H\YN@/^(X$P[S%UB&3!USY*QE-PH\$XFRHT[M:TR-U5!%E=]N[OG,]2<,U9 MNMK78GIW6A[>L_-,L1:[[T(11NC 1K]49_^F&G[S"OF[JH:@:^0_4CN\R^QY M3CW0T1DCM%NKUG0F9-LU(Q:/Z\E/4P]EN[YT&MF"T[$?VWHJL;X7U(J#U0.V M?^(,^]UOH2^%F[N1X1IC0R<#S_V13N#9X'+O5&EAI2>&.8?3IN4)*W?XE&DO M!PVH$.V%>>+)E[IRW"3[&X9Y3@F?^R.%^WR N7=*=TL;/[40VUGRB7SJL:', M1MUDB4@WB=BD0W3RA(T0KP#:W\'D(@V)D.P6"Y<54P+B4'@C_?+AIDUJ1$BZ M:9DW#^X6W/G:P9VCE5-_?V6+94>"EGLG":3H9[\9D%\@YONS+6[>B/! MU\N=ULH9Z--8+99^&$$O"S!J0FQ F/J?FR*XA7*^?"CGLW3!9QDXIU &=Y5J M?$KSZ8>.,,O3M=722(UJ1!F #11*!"0W_O/- C>DZR"E[B41A"@-63='[I.K M3GS'1*FW5)SX,Q.GSF8R[4;&:[HFN3GE02">##/7\G'6YM=3+59,A9D%.R/] MMTAXAPY%SWFK==,*;ZL:\1VUPALK1OR9BN%\]M.;-0,[6P^;XX=%K2-.2G:? MBVIT(4[:[9'04#(4>STTY+SO^:6Z>1XU)R7-$W9:1$@J$@U@^/&_^V^) MPCS.T2/BV0+D;,R7UPV#,NG#Q@___5][#2XV$@@-W'3CIR]F.\OR&FNP1.)& M*.SVSQ"AG?=/477$M>EWU4Y%V$V_]9\;405"4/%(*O47M?TGD..(EM ;;H=B M>[W?W%_M=W_S/GNEB8>W+98^_\DR$6A%M],?CXE%8F?:IP,E&MWNRG]$:FR MO/]/6\@&]K2 ?V.^PV*M[K5O]#["1CMIP:NF9&Z85?YVG3>-1L?M_ M7ZENG^5R39XJ"I5:9V)2^KW'V- M$:0*-CUD%[GXQ.Z'$^7L@_L?+&>0YOEH\:TT;"8$1<9IM@1YN7N<)B+ M5KH/@:V;$W1RT.A.A,0T/.G4RU("GR1L8$/F)SE1ZG23[!U=*"NM9F9,\X.5 M$]20F59$YVY1+.H=.Y\7E#2-'@=WC:#FR7?AXIWCU)W&-,QWA-[3O,.OU5$_ M?CR2+=KUM6)M9J!+5$'LYZ=\OUTYRGPP/>?& ;Q='$AI'^ MV@_:<[_< -=O;/N.-KCL.4[*#S>9=3O)XC.',NT9'HH?;F).QGPZ&AEH)%I0 M3ES1)&4NJM1<7$-@R@3%K-O&45 %L[UJPP'VMNNG$%AVY&4&FHF*!C^T\,F! MW*CE#*]V3-X%7F2(#-3P^O"O;*^GR!I+BDD>#Y IY![:G]L4MRI:MH&E$IG" M<-?^?*91[H.>G&3JPGVYTTO'K[A;H]S1J1KEID[1)S<5OW7,"XX< M[/SN'5[&R3KFL9%X_+8OU[>4/FG2M7%AIN M$NL+']Z^K76"$*BKJ*]LH<\W\SM!L#M^?3'_$\6R08/\F5C&3[G#VGH03>1[ M6,*P[GM=&^D4AGD%(MD/V.D)B&FK\:S#)IO:XU2@%:7>;FMR0A_U">R'#<5/ M6<;X5?/X_*R--R5V,C7UI]W+O6RK?2U4TLOFS4T3G5 3E;0:GE3;0>H254EP M)D -=:;1G-Z?*HE.8FJ;*9[1^TZ=Z[->HP:&39Y<#UW9J8MW*?Y=+:A+::LK M(\.I%=C-NKJ<3@-SJNWH :ILP*/>>N8TC:D=+C\]U!DQF>-';D.^,ZFR"^NM MQ,VDNIE4-Y/JT]4/7'H%**#%.ETUEJ-:ABXPKC*FS&U.7SNNXL+%UZ>7?M.&.-LSK=E!\"RW68;4\72:G8:SU9X7J+[W.[ZC-H##3&U09$=R- M/JM[GP=H,R-V/UK)^OB.;TV*]-B:FY-\BNLGB#:+O59YY/L T$\SV1U4L8(W M0)%>0+UAKF"HK(%DQ:+RHD2F>!Y(Z8= >8)&5=A\O'V9A&F$EX1U";S*0!)2EOCO(;;X@! VN>H6C]?YMX(U MCB*JZGJ?+/A!=S;^$$"(L"'X%7/; "2C11&JY14#[Q>''R*3!^$//0;CM@\' M/!R2 ".AKEV">$O89'\UE*-88ZI>RU(949N&J!K!+F*3@#--75)8:79%H&@6;@E>('AWRX)&4B?+Y :BP"@IC4T-!GE(69&^9/ M_CL7#6OM0BOQ1W];^@C!'YLY[2VCXCYF,_%=$N$C2QKO[2DF]C\^\\C4_Y[E M$$CA$P . 693<\^ELB_USQ8:]H?OYV-OAV-MX#YILUVNR,*[_";9G5BX6&S= MW='B$]U,\/WYLCO^G%I]-?QM'TG]16,XE09T^2Y%WS]E'W,IFP/M%]S2=B,5 MEM_=8$_,2,\#H- .?V$V^EO!NS@3U]Y.4O8<=ON"N^E_Y3;MP23:'W.Z_14S MR$%/PGV79ZNTG+/S45V;?+P\?471D# \F*RX4F;VMCM@5L0F'_X\<+^GP\9] M6>M7G6DB7VT\\M$)FRTY$*=^9;\-GU('!\0:U*$/Y[Z:?:T@RP(DA#OD=-MI M1A.U5A49Y8XMSA=U9Y8?J,N/B^MO;^<@L32Y;J&YY'OM7F5JUY:Q>@*++Q,/ MWDT TJN$-N3T](\V+*(7WSJR!2U8,5 %=(AYNGV+/523YKAYE^ED&^A)ES2] MC*S?B%7\[KXE%_>%_K@U>^0%YVZ:HE/S4;7'/=M(G.R;2=(O5/QJHG?-?_8T M[T:3[:G?",6+^$3U#*6-=MZ<[?N_PBH:.ROHT)!)1, FPW25B$6)[22@*15E M7#,G=/!L RULQ<#FF>DE/\C4 EM?F.?P(S>I(=BH\U*<*#P>FQ>8^][(?-AB M0/WRJCCC"LQ3ADX\I)=EP=##;.. ^S8I'%L&;.L7/>['_+!6K]P_TE/1+@C# M9:[*W\WV$IEC'S[M2\06-:TF-OGQRO%>U;'GHD0HF\X"8HM36 MXJ>()X(]APFVJX'/?*_"3;_#"S3QUTBRP9+'OQ:I(1CJ8;P:':;D?@?_4#P2 M _>")X(YTG,$\/_YBQ5-$UE'SLE&Y';FM>\=M/RWP,@Z%IL1VED[?"CZ/W;' MM/"$K;4Y5N;;<2$*@<#+>#=D,.V]6>RZ@Q'JBMS8-C@-E /_]TGE]B]I#99U M?3P2F<:H4\YV[>S$?.IWBB^9#V',>J # $1O(NVWS7V.'0OEV8PVIBWV:33M M/#J=>!N;?Y]5S/R2Q._>:=-J1Y+DCA@OB=/ZJK!NE#Z3^,GFJAWG!774L==W M VFE+Y4NPL37]( 0WJ$%X!^6NFV!VMF)4 2V_!= GHNLUY6V$31:%0SO-B)&]55+V/RU=^H+^):V/X\ MA>V6O< =8G95M%?]1H-'XF/2Z+?FY:D"GG@HP1S'>.$$VF6%8*/^"K;L^G3J M^TW[II]V_#;C7BWG.^V'<'9,+QI=J:M-R\WIN/'C5SH9BJ:.L6"P9^)25%31 MC8-?]'SVTKTW5@L$;9#JV4UC<8D"U0UFM:W]O]5*P5;< (G&UI+"II^(;4$3 M4098D-C/J90R0C,$#$Y,&0E_%Z+FJ@UV'"7.YZHBD7QB=](1JH@GNH3H+_X% M9E8-N:R^,33QN"G"\\>&DYM91HD.7A4)8^X\CKR63,*$M;:$/)X$'ES%8SU- M&=T+4(?V[+M->CGE!3CW8\/PA356#&R4[89_GZ?27E2-_' 3-WXE=!K\/ ?B MO/ $/",\7)G-5?<+^ DLUEVZ:WX?4=G/P,?;-/!EP,2_T$;("PB?S7>+>T;$ M8?Z]8?6;\'ZB+."O*A91[("?3K/XC^B*A@*T ,=J3[=E,&O"A][XNXE0E/)\ MWN;+B9%=7DW3B7CR1,X=?I5BMN8&$F5!VYT0$^S>]6.EM9.G8^9T/52KEM2_ MBR8GV+VC(_'C\,)?9W6^W[Z!;@3E$NLX'K M4FKY<#=]+'8*M%;/%A;L?*9!A"AX ^?$P\3S(6H09!KT)APM6]VZE5PW*G\% M._[I(MMRW7P!'Q@:8 [RY X4TP1&MO2AL?FFA%7EJN6(\QT&F=W7HX(TYZ(= MM(I'R]I]/#>PGI468]G9J:?NW^P+J31>]5>C3Y9M=ZR$^TM\'ZSP?O]O$(@A_W? MI-H4!+B ,_9M',P:Q!CZ9T]C[-IC1*G G8'N/EK%!M@F_N691Z2K>_)?$UB& MH"1)2,HBB#4-VV,JB=B-B&Y2])?"?IC0^C:JO!=4PW.?BQ"QD_393+'(\"$B M$6P89VLVS',.Y;'Q1]X$R:WE]@?8YFG9L+#]1WC&S0!9#D+:R87GT)7Z!.68 M1JE!MLD)&H_LPCQ9X-3^HKYW"1)_*\*IC@PHA(:W#_M*&[KE=]#I>[P[7CW& MGN)BTYX6FFE;F=W=3]8S!ZP1)AD4;3['Z?0&@I]:.]T54]EAM5NG.V+R/ALM MF]KJ/C9ZK_KX",'KG55!;G6L&FTCYSX5[CW>C[J$X,]&]SUE :173%?F/E_* M8<.PJXT?ARF)'5P#<$I81YJP=A*I)Q-T\!HA](X\2T8<#A6@(D&OX+\UN(Z M/R1]B;#"MXC^\F^I5063SWL:>(.RK'A@&?"*!W@!&C+Q+V1EJ6 O6?9>HA-, MBPPX&65@>]<&>%[&VG7Q !,%MW,D"#.P3<5]BNUJ7:)TYH8N(00/E,0Y(- H MM)KC-RAP[88_!8_84"0@H7]1MOW0GZ^J(/^]# AI^E5=/%K.0'KQM-:8)&CW3O#0@?>O:E0%JW\9;DJ8&BHKO#UX M\<;(Y:\M>\,VG,W(>J8,G4$>:I&5M["*P(:$OG.?[GWBW@0*&CJ=(#G:D48K84^YL6]5;ONSR .!LX2^68^\32 !9#^98UW=7FC2N_>9 MN=)<&S52+-^[3]SU['JY%Y4:S]QG H\S$9K&O&N)!N'F3;C(O^5T0R5^L-QE MA^V5M\LV"I&6 7 5X*&PQ,LD4D(,I9T'$34#0H'E#;\+"A-NOAZ ';A!21VQ MW?;J?.8>3V_3M-?.BFU'/QTK9@PNQZ-!!@X/OMY4,JW,1U+@=Y5 X8' MW=OLU[J\!"N\9%N]CU4@Z_%TS"+,,@\(\4V'+@CC9I3)9?+Z/N+R[,QRERE, MLVPQFJ6%='HV>PQG!N&U \P2$-O9ZJJ-SMESQ8X4T&NZYE\P0\"R 0X1+2]> M[Y^5DF+@PQ[NE20/^AT G-BQH#;N)3F7R5T&8#GPS@$*1,+'JGOPX^DCI#V[&S]I[@I4:"-1KG.Q$9Q-TX7=$M-? MKNT"2]_:+MS:+MS:+MS:+MS:+O2E84M-:?5$FD;R0ZQG#^3[N-8(:KL@K(IW MN>FJUIEB$T%SNL-V;U4);+LPY8U.&W7M$I^E1PP[5>\F@@7/C!^.S&0+13N< M6PWX,H<-0RYS=R=& QLTR/><,7UJ/@I3FXLRBQ6:1JL-&'GT]ONR.$NI85KO M%&A.KY:?5KE5#TJX)0Y'/EH%?9;MU'O3'I.W&P5IG @_CH*:/O1D([Y4,F*6 MS]:;*"^EGC3MJ8%''KV]%%>-M%"3DU,Q)S_&D27>CQ$\TW_[^QLTL.]JT! ] M9X.&YQE]/T8Y$+6I8<\MR84$*V!"8QM&\DVFT-:FF-CRR(VSD/^>J2VQU+(D/Q0;$Q\SV;Q@_ 6A[F!ZWFBK$QJ$@>YQ9, M,L+V% )IPVY=B-HQT6#<'IP-$AQ>11*1C#($,4FD(L.%/!^ <"3=5DE,!I%L M3R]LJAC'F&[3=V2>"ZD> [@C%TI-SHJ:*"MX,ZXZ/5F0+'T3Q&!B?N2LBN0P MC[>XB%4S01%U*ED7\HY7,50D2!]&>%_JAB[;DF6ZO\/&P(<9N:O!> MSO%^)O!F_&9G]W,5@[*7-TG%P4_:<$1@;K&;LK,%9NZC_@ED+ACVM7G^_I@- M_,M-"=C!XGGO\;BBIEM>AY3=A[J?!B4-NY04J0Q>"W;6=I*%O6_VNK:3F?:#3_]3M?"WTTZFRF%;DY2U1YOYR;1^.R^D8XR MH^>3SHY3/P\X^9,R/]^WH1_"B+^XCXO&D'N\=_JU:6%9$VS4:E;#^0OF\-;Z M7$/*R#K/BZTH7WA@"EPTC_2!_=TSC:+L+T'^MU73&[2H.EG#;HJ M9YLZV-[5!P?:;B^ART_<.E:K!RKSU22H%[7T^EB3GO(P>' MBQ02/<+V"X@9W A8!,8L0VLE]S)X\TC_LZUM]8_^01^V0!!'/#4]D M2 #;9%'^\9?-",S]'X_\OK,P.LW7^V\ M"Z?THJ9]+V"WS-XEZ4K3>>R(Z6)W,.TV\W>/[P;8G AQO6[:;(=QTE-E])!9 M*:MP9UA[+G1^7CSFQR[E/G7GUH[#1%MR=4BO[Q\[B4YO?<<.+[1SBQ2?EI\D M<\6S6GK8:J][";MP*J@U.:2"5-:GH;&O28[)3RNZ)NL:25>'\(7@JMT=YJA* M9::P6#0K'=9NC;)EIZ<7HA>"W78FX6IWHJ[S?'C(+OO-68VS1\\SQY\BUF_; M2"6U$!BE:DT[!2R: +G#(I\P-UN*YPGPN%OJ1&T5;=K%!0LS&^-^8MVGHH#R=W'S[X3[PY M@]5X,8\+?:G3JD7%45I+ MW-*QFD[/D6<='HT>G$E_/(]E.A]#T.^_?Q=/WW'I^BR8/OJ4S&1*O%6B!6;T M@%HK)I,\+.Z=>OM?(BF6,6(\U36J+)E\5"7.^FPH.%\%*P]'?)7.C42ZVX MV._3Z_)$M.5VJ1LNCDY<567?DGMG>97K$O:7K=+/2, YA.N]-1_G]5R;G1&; MN/*V<"^Y#)_"=GHWSNXM,P0#Y:6+=P5(G@Z1SB4R-V9SR+V>)C%6?.2; .I[ M1U).@&U/4F"0,2++)[DR0R\Z[_V4T'0'K/F*/X%';V_[=O?Q#X90?@9.XHHD M^]H0&\_QZC%FXU(H"K]>HAN.@\QO\XKVLX?V"\ALQ([$%TT\VQW%1BZ%2,% M@G0134Q6+Y,(SVJLK@]^OLFX@ST'W#;>/9(%1;X%N7FI)IB#J+'H8F&V .^7 MY[=[(0>4WC+$!GWQDQ!_KT?!NYQ6-5Z/\Z+X0"_"W+@MMH8S@6WL>0 MKQZI M,-PME4DVG@!:V_A5&567IC\V6#%FT2L.GIK%:6^<,.M/Y=R\6\,/1=@.F>/' M8M,(G0ZQN\4%TY%]"._S3>GIM[=0(&T@-M!KM_D'%)O'RT<__7_L3@K RMZ$ M .DHN5A?'VA.<-&B;>G^!RXJFGRRAYW>Z1_BC3G&IEN&/S$?&>TN^FV=>)(Q M OU^OE_)#GQSY_F07(@YW_&IYO\=AEXI/UV@.5BEKV*\/;$_5!S@$\:V MT&> NY]OF[/SN[_[>;"-&IV[Y2N?BAT.W M0Q:I9[]-U3JKCK\ $5P7_OC_]U:+/3=@%9(\_N%^D.GT=^*/FN[&CUUJN36W M;USR^UQRU!SU*S,)*3/D4JIYI$4^J&&OK&_XAX-IVQM 0UF2$W9[#]A4S.GV M+O PDK8M,25/\FI];C-ENJ -^O?J*G:7ASHKN[?U ($@$4I97*^1:+S69,%K MIKH&M4\0*BTHW\3LHKP6[=4B'.\+O)A,*=K]T]BTGT8_?AW%,9G#?JB4-<9; M-QI3?P#9>$W>)1HGI9O-[MR9=H2J%$M5!N-$+0,3>*W?T M4WC:4A]9E>&2,ZW@?)8M?DGA>%,P7M\C!&>T7H4<7TU7ZIGDM#QJSTI\G,XXC(/E( XUC]/T<1;- MR:S7:S)5_X\@\'X='=Z?4$3NT!7=+Q8+L-.W^J,7:TLI'+9BQ"+C(IVM;6V- M][18)$!6OR4BH&#/4[UHVQSK%%YHL3L0!)2.3?BLKH\5;:PY_<9>#6GZE&?9 M;FWH24ZXZ]Q5%7VJ/-2=.;ON9DR]\7R4A]*\9_H) MUC1Q4ZR]+IP1JK1-"B&;M@>,%OZN%*XCTFH5B_SX7$OEZO2\@/- M?\X>6EG44AX=(ST-BX4[D7MLM\:IT;/6R-$6;E#>WZ1 -7,K4'TK4'TK4'TK M4'TK4-WO]>E,;](=C7A6+9BK6B$O),S M7]2O>QW4CD"IW%4$NW^YR:1=(H MJ$"U-.GU&OI$MGAA\#C+Y0=:@Q\'%JB6G7;/YIO5/&]W63,V4J:I9)$+*CM= M:XME/BNLVG2B9Y6,I*-WU@7.C87OCYPO[^M\>S)!]+ILQ]+33CO1UD9!Q:3+ M6OFA;\]* UZAA:0A]:HY?M!P/90/%I.^4'GH;?H5MHV&MN$F1>)M'Y%2?;9Q MD*F%5I@K(._RA52PSB:K#VK?;1);#Q*YB&EF( D!,&^38>86QO!R$YDP"95Z M+4BOPF_V!QV::YZMUM:*TEUQ:MU/V:9JM;N%86*H_T:=,G\F?L&B%UUG8K+Q M]61N:O>;3QT[$QUJ[;:=J72QV1V/1(]O??YZ-C?]JHIM#43&HI:C:Q#0#;7-( <7._;TR&^!/"YCR!ME M10W=KMDDJW[[.*A,"FGXMFM,0)5>?)8@=Z,&2%7P]@6<.$1>=S9B[9>8I8C1 M3HXM=0@?N97Z]8$*AQARR:%&(80D:N4XP7YH0_7C([G%PC C=33FACZ =5T3TX LXNU09D1A MO$$J-;]!FPP:0MZO8#4055+@UAPC*%WAB$21N9GAYF=F=?/^DO)X15U8D#"$ MI6Q6LLGK'HRX>:K34+.\^#1./QF9;%QP1G]X7O=G)VVSD<0?FNQX==E:L3\T MN_'J-B)QVX=KV 9"OW35D/'^M!?X:Q4G$%3=/E!_[FL*^^.J?QZ8=K/\$&;-L))KZTJRR"<6Z M-(K2(:^[$\%LWQCFU S#1-)?6[?XQ6\]?F&V_,+^7H*UIW4OF8MR>/Q X>*P ML@J[I\W/(OE//]4(#YD\TQK2"V$M\%*E^EA/C0*/KA,4N7P) R&X%P$>1,XM M++LY"4^8FWI]>7@O)]X=L>TG)?$F+L^_I\A"\)SC:\PI_/2T!,^4(I9419=( M)'OO5IG(8-8508Y(X%&-]8_?35M5?2%8G27+BYHYO5?5:K(3.T72KSO3@(2& MD5II3\J]_!/=JA9:HCK+C.*SD9OL&PO% QKIW%3,9ZH8\-&_B8Z)72;U]-(Z M)J"/PV653#Y9;I6K[#W+L_5XH=%O]1I)^Q394\\JF; ^TPI/F?B<;F59HU9L M-SG)A%SG!+2X33#I%Y3,Q\S*:[,A1T8M,T96*D&'\T5.+">057VZH UY5MOQ MIL7?=0ETO1K[Y2N3[Z&>/VH"GEPM/^E\OMOF56':&H\J0Y93I@]W'^\M_P:U M'(V.B_<)II.CA=FX6W^<5WMZ=>0FL\9"R7CT?+;?Y?3S)]IM7U'D7[Z)^!XB M_V&+[.0R7UFC\"J=-4I\:T'7I&4Z$>5GSCEEGENN%]/X,)/L"*OLTS@^T:I= M!V0>FV+Q4#21>,T4.V_*ZV_+[77 \3C*0^\"B'(D0L,I@. "&%%"_Y\EJ MW!YFDU37,*3RH#"U)PPWR>6X]KCX<2.?TR6EHIMF5C3'>55WB@")S&[66,!+ MA*\YR)%KBZO MFZ]<6[4JR?X&1\N,VNNLGG\P$\[#B%3 M]-A1>F?GNI#?9PO/1EV'//PXW$Z\ W5^;<#7;3?.8U&#U8TT_#JROJ U_:WB M'?G'!]0# MI-.S?0JUD,A,9 5@*1/36S;H"TR4 @+4/K')]4Q^UI8IAA>XE' M6E.B'V==-^2P2YD2H<@1._M,G$'0F:JYR3[P#LV76'LQFL5BII$<=I3UNE\L MFC6SJ$"^>8B),I^C 0Z)RNX2E>TSIM6II:SYF!;ZMF71\KJFMJ^;J(F^2H^' MV9S"KUOYI;0H(3Z=PVJ5#44#HK?["H D<4 :#DD.^92#ZLJY^GVD7\R3>KTF M+J>S>3K*<(9=4SJ8GU.IV(V;WTO,AMRN*JO[]II'Q06=>^C+IE3#YQX;/TZ* MVT]Z(@4FWIHP!7DP2#0@-\C\H+8_D*$_X#1\2TK?)QV&[\LJN6*]C;K%I)$9 M+-J=;ROEZ)6R.X#8C% F(/D#"^@JV'['<=\GU_CQ$/ M$]N.X[["RKJT&^58M19>=Q$.VD8S5TZ+'-WCN2.:L%\:1\B/,F;)9CRY% MGY>H9.0Y[&Q6J%9+;;=F$%?+>56#"GPM6^);%VH'7D$C4:7JABXA!+<8EVP& M?AC.5I&%>9U41JKF)-CWEN2+DI/5 #@7R.#)/4]E,TLM62B'6H T:ME^^__:&H MJ@A*>2PQ6^DV*6H@VY@K5$5T;UDHK,B5&;:$P1#&*OF ]WR']OG^2_8"%N( MJAJ>MLB)2T6FBN)4F85(N0G%LOV"*=L?0(T1*(GNL7T,SFHF'MJK[C#$4X.1 M>/[D&"&OW]8*!?X#8\7"IXU)875L&<#I6=TVK!!5TTGI)&W[!7Y.2<5/U!4S M1/&B:;G?PE63KI$BE8=KVB,B2&&KQ[7Q<[!)AT^JS41R=AUS%;Q8PY1LC4&% M#.&VBDG^:U("&4[]#1^PF#S9ED#^R?S[3VBS,:0X!52NL(=#KS0FWE,H<2*[ MI79$RC)$M\8)6B%#4DRWGH--CN/!FH+GPKXX8T4:X^$Y-"2':AM)8TU7]1', M3+=&MD9E#"1*8WA4NRQ0A.>(&R2CN:JO07= Q3( #S5756H^'L5H00-,]5R1UFGW$9D1_H:&!>V$$]WKIM6 M&%,!2^F,O-L,>85_7&J9]GRNDMH6> 2\+N2-(W/4\ 'E_ACH;B!LBH T&60N MW!R_DF)2_E7/+D$T,,B>(\*;7T.1GV*33B='!]P@^95;X73QZ("+%.!\@U6.7Z:N=TYYJ++M5A,3YW.$S]%G;%1BFL(P MC@S;AN!::(F@KF96,21;L:B_X4//"#GX;F./N#;(SK%)=K"^L=%)]31WCFX= M-F]N VQ6#KVB:[H!A[XQ\NO+04!\##4#\08)DJ5#'(V-NQ:&:W38(TQ BF5V M"CL>S5[$%J\Q\TS^C9W@>:JR;XX36\6M#4\L#)+3OB&>S^$W6+ M?0KL0\)H4C(/&\FAW9\04W9H8V^9 O=\II'PE.O!D)\"CV,>-$G4:F^*A(C@ M92%PI;P);[Z%Y_KVC[[CN5.,1XT(2<;?V$K66#&IF6M8*L D#@4!(R1[A\0U M!4_;._3#<\6\"?&YI:XNWNT!0("(0:B06*!;E0_H!A$-X N7^@/P*9!INGOG3V^IC'0LD2;>7[#\ ML2(#&43J<..\8J>*4D7'M$$V81H(JN,1"=RIOZF#/RV"!SW C\(ZRU2 N^!& M%)G;:H'^:_&T5""%!':Q2=@$W!>/2_"$W9V&XHEC+'04_$9UR_:"N@.%1NH) M8MV"7(L??FIC-C;@"VN]S\1>+<2=B7QTLIB^H.=-$A[?RHX$T59P6QTR%LI' M$HTAPD*0ZPW(> A>&<(^*?C/6J!D[M42W!::] ^!D$$S,L^>2X4E$<8T[S12]([6U=R>.(SF9\R-UK4A-:,;URH0#_ MS@Z"#1<3-8W]XF6E=CF,@;"2Z736NB&LXHEF4 MW=F1F!D)"D.?' /SP9'R=76.:0\FR V089T/A47]"KP?*_O[[=J5[ MRYENR==.I!4AM;7HQ9).6J+Z.JY#@X<:"[,<7/D MUIH]( =A>\S'0+H+74BYE\YM>F1;0H1-LWK@:XW V,-Q_ M4A,\#AM1'+G5N5)#>K,1KOT$U]^$-K#OX$NGU;CCM M9]*K_)3IQ_14(]=)L*-^E.LV>ITF1^AUC'3[:Q_JNHNC>"_")W1>TG\4"?>9 MI)\GM+$=MG(BGXA'.[-&@WZ$,BU ^N.A;I])+Z3>==I64NM/>X^I MQGUL%1:91RS:R43D./'KKY/ T"B7Q07L[@8HVWW<-VF6\"Z$LZS I:SIFL]0 M7Q_.;MO2X7(2GC\W,!D-!0(2-C&MWX($<,]_/$"3(?W9^>LYY_= MF7Y=%37SV#XM2OQ=GEV;X6FX4VKDEG?1&M\(@$<%C[L6>%3:9[M ?%0=F]Q< MNR34J'J%JYW9J'TAFJT$7&EY7FY@<+NB:Z-P&QDS"HL_>$28(V$;,0]=4\[M MZU'Z$O2;!2%Q[^CW0A%8"RLD7B62QA]AMV>-"DN'7C)@T7M+G^.E1RA>!&$# MU! U,D0-?FEO>FK!$+@U<:,9"*])\?J@+$F?'>V=H)\W'AX0ZL3O!+GO]S++ M=J5J.ZO.[&$^O6NVPN'"@_/,&1+U\F$)\FK[QS;#W853[,HQ9QC0W!7>U<-> M0 E[QTM%MD657WEN?@MNC3) QKK7.8S3Y+IN6M@54 SRRPS2T!!KILRZO9XC M81CXHDW[5>!#8,,-%P(3>HGTPR0:/SYRA3F]*+57!F<^M-/A/8AMJ9;?._&@ M3@^<>E BV43:GL+":A _5!CR"[R@TI:JV^-MMP/KW628$TOE5H%F9+T65\%#S/4\$EB>KE M='J@3U2G@TJZ2*=%L9EJ.)]?DBCX0LVEW5YYHC=2#"*7_L&I:R@,OBY0B>P] M"982BD%S.W!? ?BT2]A-3RXBVR38XR*(X$-5Q.(KBQMO=><.ZO@-H5U/FHR6 MQA#!WWW+[J]F"*[!3.CC@Y^HF.-MQ'2@PV3P;V0L.1*V,[87A3M3\+CD>"81 M:E>B-NAJ$LMSH=LDB$74%O%#WTKQ3TX._4(**>',:^O"U,YW6-ZZKY>$^;C_ M@5P3UW["!Q*9=^ +=^?&NSL;B&"E'>$Q9MZ9)3[;E&/]86L9C6M833&I8QO\ MS0S@^C;7PBX'3M 78I?XI)YD5^%9B0YW4X]V>Y[.#]'[0FY22XKEX5 M.ZBY0.UFMUN;*]AGBR9_AUU.D7 ;NA*F"_:'OA#3-:, MDVX+%V6ZWEU';;-\D>MDY\TH/J2'1<-N_/@52P65B/Q:.BHX4/.%V"6IY+,/ M_7O.Y%%=#(?IDK NC-^?QG9"=C&B]X[3ECO#J< U[E:=N\HPRW+8#X\&E:Y[ MKX[ZC?"3JZ*4C26UV]G51)!R, I1([PSA@>Q%F5H5XKWS2T9I3P+K AJUT@" M1YY3L(NH<"^0 K+M7B="Y#MAK:,WK/4-:WW#6M^PUC>L]0'6^L5P^M<)[ I^ M8#>]F_IT>'H&!%%('8"E!_K%)R,^[?&+=&F*3VG+VH(R(0P$L6&("9E^[.;Y MX' [.&1#,+1[K_1:3>^_S-;V7Z=H>U.+4%5=WM20(%!IFZ2SDM - 2]!2 A^ M;[IQ'6D,9B2>B OJ%%WPYG%C]$W8"S.G'_@"DT/9XC/)NG=31'?*6>P_(O(I M53E/>,W!;Z[;]H)E7_*F8Q>EY.,OS?VKC>#;13<&."1YG"[P",U("BC:QUR_ M*%1N+O5Y[CB(?C3[$S;>*[0FRJ@S2RQ;Q;OJTT/AB3N_HW[L<+W-K]HPU^%= MJ.=;F8_]V8.&4(HN3->K^7J-9*WCO'1_\1;GZMFW^A<<).W=++@76(&7&WVF MDNGQ\VR#%E$G4YXN3"W1)24;8]%H8.[[VUUMO]S'!AQ'F,]/M04&,+>YMN3" M#3[#CM8#"QH*6R0QU5-J9#:;JS[(M@L. MNL\3-4T!$+V+%L2CR/3-I^-QB"! ? M3E-=(C!%O")2K> MYMHI<\/+,]N]S?9NJ^"B"O[[MBELH@5']T2;U^^4#R3 9_@_3.TKS%XZH\TX M(]:77[YBYZYMHUBPV,^Q6@:["% Z9"N [17?2GI60#P]^+9CVLV4D_UW/G-/ MN&=O[AN:\,E,G ":=[UKY1)%ZOWA,N"!"0H@IS'!.F BPV1#GNRYB3U>+6G? M[H0?!QB*.J1TV98))[N;%0!O(HBJK84)&.2%#?E '7V4ZQ"WB;LVYWN S;R MJ!]LL*LB15>'$PD]D+=3A8BA@(B,2(#8LU:J+55TM+K2Y-F).(KU"H-1K1)8 M-"R*#92/QX7/99T8QI)5:"4]ZO0>%L[#:)&?S[I[EYGLZ6P38HWD\/;D\>Z0 M@CQ9PGHMBP#& FP4K9T>FM-.H=M1Q/XR<\<+Z26II!F-Q'[CLBKT;G5KD:]V M>7-34Q+_W\4-8I_%F-05\MB2GBM2:S*9=0KI9%M1JRL[DVI\D@7,>U7LVGH7 MJ[U )LLLLG>%4DQKT@HJ,^L&W30+2NEH\D:T+M!M#V#'\ BW$$YZ>5W$??SDW_WWM1E3(%,,\MYWO M6Z].%P4T&Y?:#PIMR])X'ANR0[O5@,)$(>;W^?%]UYS>PR]WV^F+QYY5Z?IP M'>TUWM]#T:%#R_DZX'0;LY+@>Z_1Q'QP,OKC^B%+TPO5S"72#[%*+/<[W>_> ML::WRDR"?;K+C#4KV2EGA&19$ M2(HF5.,.$XDQ0XZQWR8RXT;\!;+A_[@?G M&8MDIGV6E<1D-"KW!]%AJA^+#N/]]"#.].584HI'4U(:T7"W W>DHM\5;+ZJ M*,D,&N5Y1>[UR_'8A"F,'-"HAR-51EF)G!E;\*P@/-D-U5A;9@./C!Z.[#T) M>=4I,'>=5IRY[\4&_),YXO#(Q.'(:+PFU*M)!M'E!(W6TT0[U^"@/2Q].+)3 MKJ3K R-J3&>%7+KQR$_6G K=RXY&=IMU@T;=>W9:1H+2C76?"M(21AZMJ#)X M>EIE[IGJ-!&=S1\?:_G>LL>Y71#W1W(C*7J?L.G'CJW$%_'68W3RR#MN[[3] MD:G$?4E:M^[1M#>M)=*SU"3_J'']^/$\V?58'S^$N\6I^#A>W*?BY>DBWN@G MCD>N>V-]FKHWA(Y0&ZJRQ'1Z'6O43QZ/%,KL73&=+N%'M8SAI+SB4JD MK6CQN P[Z^%0XK.+W-/#S)HVUP\P\FA%=W/I(%:/9TK##MV+3M/HTLJ=TF8,R ML(>.A%(NM'Z+3LCGN./-)MQ]-8EZB S9^GEV6U>SCD+;I>&/)Q*UX:=R MH4>K'XW2^8$2;3"\4FBFHNN>+%03(QCJ+__,J?L59)H(>=ESVJ@"188"DJ/B M8[$P&.2ZS%2I.+7A?2HQ;(<;Q\E1P>.N)3F*H9_/CJKP7.MJT_Q)[2=S9;V K)R(M0F_UVG^SU8G83 M_[W %QCC@ ,X#+BZE]1(D]P8'HDXN'%"W:]52VY&MD$M]Q5S[ZS>%E1W/X?X MMU>.X'V7BA#]1JI;^1VBX-CXVR(3U8=@VMZ5OFT+'O^%Q MR4#"\.98-RSW9MVC_=_>?[T0GG\G8CE(76XP>E ^" O4/_[-L[NNW5G;\ PW MGBD9?HW5@6X8ND-JX1R14]%*?C7-Z]LR$>(OU-K MY=E5*&YAJTVRJZ2K8*5B.YPPTV:TN;]>K^("!6ZB/L,J#VE+Q="U&8E.NWFD MU!@;\+JQWOSM,G/H8(F8[]VG2>MM$>(MY^D#U2^$!66 _.IK(7?*)ACPV%I4 MH C6EE6)C/C%J" HO&<60:ZOOB];IEO!"E/)JY1,"LV \&*2P1.)S67/28KN M\\K^L*&#:5C])MB2Q+Z%OZKB2IG9,\^8'<16JV%[V10[K>FZAZJ90L-<-8[3 MSV3;.$@_>^ED:/JK('\!:':W _1^$#CZ42T.9!D[L>O(?A!I-S' M(8PS1)E0HP2OW]T;#Z.*2>BZ4Z3\AX4T>;MK;M;1ER&7AAQ1/:!3O(H,7>&, M86?1L3KVTP,S6(5?I)-[K75V2P#/.*N;%L$T'IL D\%J-M*>'(5'AK3.YLRG MHA!VCDV X'%G-0%.V[/LF<-PQ\G6@\2E4O-&J!)$; M)HIP;J*?_C]VEP.X6 \3"Z ZR865[F-PZ6U7; ^!>XQQM@S_K3["UKV4?+4Q M-WD*&X\DXR]UX=Z! >X\'X[V(5Z\WQ[9_SL,#;Y_NH!E$)]7L<(>=IN\V!\J M#DQ=M2WT&2!A.D+'@R]R=WZ'OWQK)_X+]'T;5^N<%_H2/JV,=>X,3=%=J7[$KV97]>X+W0DP=XVYFP;\W^6 M :[+R=R43\J^>@M94D&AZK?2Z=T^@^=J>OS"S%<4N;VF_+S2,Y(L]7Z*O92Q MEO$ XJTQ0A;I96"3-,O!>TCST?/OVHCQW.7%$3DD707V(:C(#Y*&C413WXF1 M#II:1NG0IKME],9.9VQ^^3[V)FV>P,C20@-AV<_ MYCY,"HX$3'^^4XCVCJLK6^WN$7[2,_IES7$!,GP1V^;EB,^-?=P RV7YAUQ% M7!MA;G+U&P&(FURY_OZWE:OK]+>#EYH@KPA&+GW0[+@N)?#;2[N86W*-DNL: M!GON1A2[&[)NPXW\)_@;KQ+E?T]X\%]ZG2^IJ^CAPM_:B>*M.0:'8)])JFL8 M4GE0F-H3AIOD>S MV>& S5NK>%H!C';LQZ]$*!$+*@QXD_&/&RF7YOU/D'%BA%QZG5<@XPSK=09@ M^YV[>5-4!#W!BL=\D(I0X%G>OMN,&G7:^>XTOY(*-+>\W48_T[-%USZ<=$RHB+ [6!930),II,OH3N M^A;!G8K?<^X6WKGYK;?PSBV\^?WAG8_H<5G_\X$IO+MG+ M"3N?6A_@&FD2E-WS^42Y @?PLV,T-5V3GG4!G9R57VCS_&.GU:*-M9,:"?8( MF@:0,$V"OB7XG#'!YZ83 K*!_DB=\.E!H1>50HN%, M0;"+"\=GY8-?X=*O0"]\NE48H!BFK7B9&4S81J?%&6$KV6($YYXH!I(=GHRF M7C,&_X\T#KE4?Y1#@?;2NWUG \R]M\KX?B.;X[])[=^="L<2MA\-$('QO_MO MC<*\SE'B^-D0(!OS)7C#LFSLL&[Q?__77GWFC4Q"EQ?=^.D+WLZRO+K0+)'! M$0J[Y9_%(7[S3U%UQ+7I+3.5BK QW]/[N1%>( 05CZ12?U';?P(YCF@)#61V M*+;70\;]U7X7&>^S5VI0>]MBZ?.?+!.!P.\,_^E7NXY%8F?:IP.U&MWNRG]$ M:FR !OB?MI -+*;V*A:.]#R"YC]9G33?@7RVA4L+V&/XC7ZIQ MM6R)JU"M-OZ@RM?:+2H,8]JE6H?/7=%2_NYHHBWCTU?^YQ-G1;AZIRG5RU,D M?:MUV\1GI!FBT$I"^(7_Y;9?WZ[D996[KS&.5,&NJ#.1N"]^ MI.NO.(S*0Y%F^^E80NK'Q"&#_R4F^NP@,8P.V5@,T>*/7_O]3ZT!JB4K:I&> MVOUNCIG7VK7\PPBZF!V.7"NF'AVED,"O[^5A7JUWBTO2]3=^.%(M/IEB6F_T M.PG#C&>,^5-I27KY'CTS7!_)JIS-J7ROB4S+F!AM>>C@D4?/;%OA2JYQGQ?I M[-C("+7)?3]%.T%=?]/%O)4S'LO1J6B;@I2-)>_E-'3]/7J[E2MGANJ:,3NM MEN,4<@VKQ%1AY-';'V:K:8E;9-)\EI^'$TQTWC!:3C]V_'9Q_O14&],/DZE2 M;S-/3'A2'V<"N_X.4N7,3),4OC-#L=CZKE19Q88P\FB>#;Z>'-TEU <>L4EV M+BO]<7L,(_?GV1^DF11B)+I/IX?)?BP>Q9P@BZB?0H/D,,6P(AV5#I_-6LKB M44S:8=K.UW/8FA.SL8X3M/^#CIKC65G*3LN)U1IUTPL[7!T%[7]F.:UF4=R: M\XA+YLI&(N/44TY0+V=]VFYU6V6]0L]&"M_/BAUF. GQ\+"]./11/I M?CJ*F+X<'Z:C3"J11LFC#LBC97/!2\O6/;V8R+&6BIZ6;!CZ61_W-1ZMLMU4 MH;"B6]R([[2L/"\LN2"ZSE(=:5VRZ4*'%?/UGB',%BW,,0'4:HN/769:3Y:F MR'ALK!MR%U5S@=2*]=DA]L_7,MUK#DM#H9F9-=J-('Y5JO4%ZJS62J=E).Z5 MM+Q4E/4HB*Y*.[9@%UR2I0MW[>HXGZYKC'U,5SRRVF%CC!F-"].P,ZZO\D7; MN8\V@KI4.^@^:2PRYA-OKP?%=M2,BXND$]11.ERSM,64$Q9383G'\B T!U7$ M!764MO,RGV=;>9NW];[03S[&)_4NQ(&/Y9]KM95$I:Q/9[13;]=K#R7:"=RC M6"Q=&?0PR]$H,QO1TW[V;A[,T9RC-4K<4[?,9Z=FQPM MUWMTN7/7C3NI"CM[<(+T5(4?M!*3UN*APXY7]_IBH>O95"#O+WO#57SY.%_2 MV?MQRUR7BC;?&@7MD9Q9)>QYI=6CLYEAKCO*/2V% ?0<]]]^T%K^Y3[47G/) M9W_U8DO*:VI"*>FSN:ZY;9+]/KUH-4<:E /UFC%C;X TH91TD[2K-+'SZ7:K M-)&JDC:X(Z1!GUWRH2A#*V!\N+D4\9X&G7N]#L(P/>B_B_]%KI!(DTO3PO^9 M^1/QT [0DA4>";,TT!@:Y"ZAXS#^&T6HU^;_G?ICQID(F[CU 0H(%>S\[AU1 M@EM#LV^^+]';IES?IK!TA+U)RQ5NS$V+7>>^L)'4K8WI%>X+DX[$D[>-.=O& MO!.?]*IU?#$B;!JJN#<"BH5G+WU61Y7/P&]>3=N9W^\8QT8C[&7!SR?N&-<> M&PA15?S%V*1X#=SXYWH2?I5^A-^.Y]A([%MU*:PIVH=8[J;QOX#T!<03K[+W MY[?3Y%^M9>R78)+OIGJ/F>1C2O7*D)YY985/D4 !_#/ &YA^LA^WY#2][LM,H>G4T. 46U@MA7ED.^-FA MKCG;O8_K)_N,"X)OZSN(>(;6.3ZICMO3Q###]A*/M*9$WP]\E60#_23RO@]] MS8*P!\!>\VIJ,E_V1H^=\"IQIR]IV;@;P.5S],>O=#QV \.?3;C=P.25D>$D M6'5%\H!=A;MP66\.9P)Y?OA.%JM)SVIQ(9Y?T;)74 M%^/VDL/RG8"\9YHY8<^S*W HNZ*AN*C@0%OG"YC^5ZBHHI?/7'Z)(+YWL-)C9(_ M0=Q],^4F[I]BL[Q/W.O9I_8XF6$'G59XR#].Z^-)3>.PN&.SA0FQB>3)S9:K M,<1W*S/3Y#NKW M%N/FJC)M%2&;(@J:+O9B#9J;4CA3".;BPG&Y&,W%EWX=>N&L!M%;]$+1S#_6 M1LMJCB^T)ZRV'&;-L>A@O9" VE1L*O'6<@0[F+>/[TMDRY0^:Y!/=E)+(TP: MS0)@=_M8NK MHOE=,HJ23"3Y8KW;&X3U4EC\]"W3ZRKW)7J#?%_COMRTV#7NRDV+7>F^1&^I MD=>X+]@MN&W,U604O6H=_YGX\I=U^K4!8C\13,RPD>AEK]]/3+OGLC9.BD2_ ML=.S-FTD_:VPZ3DD[7(3L^4F]K<@ZYZ>OK++@-Z;PDU_KY%HF/^\IZOARZ)T M950X'=B!>-Y7MKH+%*"^>"O+ZVS1]\U9__KR*"[3@^8R=+C*SGL7]4X".^^= M!IY\9GOP&AG[E:#RMUSSY[99?/T>_C][->(_U/ICY]8\;"+IIVP;8-V]7-'? M-Q,YUTIL^D8B^;*-341F% M[F_R>(;PZ+=<\VNAQVL4R3=TW3BW3#+CJ<'<1_4RC:H)L3Q5:S8O-MSL)"R3 M"?9YF?P67N[-UK^HT7 CP\T?OLG(S7&^.N\>7<7/]VNS&Q]+DKU6O[6W#90O[PJ MSK@"\Y2A$P_I95DP]##;^.U&T[$/MY,]"'3E/"NTB8W0.C( [[')ZPJSFYB7 ML8@[JP>G+?.*L*S<12U^,*Y#4ZSHCU_1"'V#0GB#Y_@=EF&CSFI MU%QFHI'$+0'G"A,]V$C\ MEK!VA?O"1.*W_)MKW!#MB)]-; M?Z*2^AX9'Z_9.S<==!(=E+-1#<^G[2!UB=R&90$:*+IBIJVX%@]WPEJ4"POC MA1I;<7V6Q+M#;/ST&NC*3EJ\/_&;,?6MC:E3JZZ;1741;08V5-O1 Y28,YFE MA$Y=LFFQ.,U/A+DIIKM>FQPFE(J^5*7U2YI1B9L9=3.C;F;49RH>:#4&XWA%[J,O=1G\>L93>XP,) XM9-Q,J-_147]$#R)/ M8?W)/8C.I+U(TZ&WJBX.Q/4%_17MSJ:CN/EH=6:5=DVM11LUT6BXF,UO;X&1 M3D0^3&@?'G0SS+ZU878!,MPLN M:< &:;RG<3V5F6/'>;)<#E%U\Z=_9/GQ& M/0:H06Z<,9;%IVZ6SO;I68WCIZ4GPX&9_?B5""73KYJ#N_E)NW6]OGIVTG7D M]NPM9E>*AN1_>$3+GL]5! 8_]NDET1Q3 .G&YJW++,"K!,6-9,K2_6R?PY9M M9T_*(L&;EC1&LJTB8;@[Z2R>N&;5Z< M/)4+"2,:;F9&9TK2>J$YX/,8=/KM['9+J;IE(MQ2JK[_OMQ2JJYT7VXI55>8 M4G4U;N+V=Q?L-77V,.,7;@X4C:28[]035WDJ>CC!?Z;0] MK)VWB6&85/BH3LE7.$6OD=\O#F(_83#Y6P>&/QAE.TF3Y>)ANA$]+MCICY?9J_2$+FBN[,_C PWB^5J+!;W%4T@ M1E@?AFT3*J29"#LL^L 2%W9"XF^W^RH%^- M_C];I>_;<7^]Q_T?5%II;\>A15Q8687=[?Y9)/_IZRFY/1[GN=*TU>55[8$? M-!-A)S!B_M$I[P38-?!EU']W0Z3>1]CY O9CV"W[!>D:'Z!R'8"4_=N4C\-3 MCMKH76EYX*/0]L>7?.9ZP1[HI"X:UKIMB)KI.K(F%'I6=8@['T-0LGGN85T< MI(M\KT _CH1PE17BGD>/=P+)G/7"N#X,8\X$6'F&\$$@(X:)4,_=U33Y"M?F MTCG-X8EG%$ XUU;,'W+6FM MMI*=LCDM=[*54MQ0E67;.7%PIE3+OS73#?/Y (K!8?:S#&5@PWM[_FQ-3I.; M"/L::LO2#;2-V- N:]9$P^AGN7'AZ:&J:#1:R)64D!PE)D[CQZ_C[%SHM[5Y M";6AB4EA*E$&>0_>9W@1-33T&27AHT\$%VZX@6C)PGQA:Y_BD.FY/$\,,VTL\TIH2?7\0 MC6S3,UJCB5?.NPL_C*:1O1G&F_V$.1#9J2A.Q2P;Y]K]<@-$\;@B/-F%64)8V98FS VTNC6G_LI:<*/?KQ*YI,?S(O,H&\6(Q6"XEV@1E,P_;=LG6_ MT(6V\KDDLA[RI?E]7N&GX4*M'AWDY*=P@<,DB@6(J\^+FJ)]E!4C5/,MJE/9 MOR+WA\UA=9L?>W?GGG(F%G/R7Q,V0(;O 7VA$90$^:UIX?^XG0*P8O:NW_ M,E$)/P.?#?AG>);P:GV&(L'F*$'^[.";)#QE YRD\8$%&(4C_!P IV?!&&S, M]_$V!H1?SV^+6OKO_]I#9VV\-@#EZL9/'U"RLRP/%<82-VZ$PB[XB]2-^"FJ MCK@V_9!&*L+&?*S*SPTH!0A!Q2.IU%_4]I] CB-: MYWAV)[D%_W5_N@7^^S M5Q!HWK98^OPGRT0@SK&#>69BD=B9]NG K(MN=^4_(H75.580_],6LH%^U*L> M(H&. R=G77RTN7$HQ#/!_(^ /Z\A?;)'&*1%MCXQNK6S,$=PCXR*#,,>G"@C4P MUL?^7RY&:KN2EU7NOL8X4@6[HLY$XNY$#T(*+SN]GC-[+2[AGK)0D87WA$3E M2'0M DHZ,)L&FR(0U7WC\8U/[9VCE9J),B(?N(DU\*!-VQU\=)=%*.]M4O]/ MG,W_]7^$Y5V3(MCT)()0R'"G;)?GXPG^3W%/=>)&?G#"&;"),(J^):MZV?0V6%Y*!]W6%,_TQT MMW#_EL ;EG*_.PC&_M9"#B*Y9(IX"2_$U+@B0X6G"H1QWZKO*@:_?RPV%E$ MV0=:D;O=^R[W^QZ"YQ)PTL)67(V9U 5W<.2=$T*=$H?;56#?!^!>3F=B*.8 2MWKO\I22F=*'?Z8>6HJ(^FYG M,5BB%K9GMKY@27R]XNO53J]7XA=W;#2N[9U:@ MIFZBJ(-/3,@TN)."=7+%2K<\YD;]ITFT+X5.]-)ITMJXP@C_L6S!!HEVICXO M\X>?<7S902_XW^ FF( -!AFK2D3:N?EDA]GD!IV"V;VN%EO-MJ;<+ M!>6^F<\W[_-$;N7S.E$*Q<('%NS3)X6?#D_T5AZ,E7[CX/?A8?EWPS_O80,M M9?[*D\?RD7=R_/2M/ZX^#;WZQ=7ON^KUO7)?FK^RI-:;EV0PZDI&^4MU5%0O MROH/3(]?>*8T*'5+%\TKO3:^;_;'#7M84!2\4IN_\O"B5[*4RH^69-S?FK>_ MR,_SN]L17+GP]OSAL/'DU'\,:H.#T:.JN?=U];8"5\KR_*4'FG5PXSBGO?[# M]^)#R;=+1Y4?U_?Y>VG^RM:H]W[].+^YIE?K%*94?V[7+ MLT*K/V[?U>N#B_/KTT=\YL*4QJ,_-X/S[][/NU.M(3]]EZVOO2=\YL*4G$/G M3&Z3[[]K^L6C7-=//*LAX96+4SKNWI\,S"?M1KJLD0NW_'A>UN'UVN*4#K]V MZS^J9N&L;W1:NG=5*A;O+"SZNG"E\:BT;TZ'Y7&M\+M5[EV?G'^Q_ I/]<'=PW&G_N5[X8MS4>W" ME0N3/W&/*^:5I#_=*<6BIS6LAGJJX95SD[_O='2YU"G+]^U"JWV?+W?D^U*A M4( _)4TJ2%*IT&[-/_SN2^/NVY>Z7KDKW!S_UD^=SMFALU3\CX_NZE?&V?7H M[D0QG;9C7>?MD\HR\3)_?B+_;AEE^Z)_ M\./[8?[QR\U3M3Y:)O[>L.]*5VIS?#>P#JT;M2Y796^I^/]JWM[U.X6#D[ZB M=EJML>MHUP_+Q?^'>GMR6&J0>K^:/^DZKG7S^)98ZGX__ER=5/^_NOT\,[_)OY&O/IX9Z^ M*C_J>5MK?KM>)O[UZZ_==O]/[UM?:5P\_KR4KG[>?:\L%?_+VF/__-=CS^OK MJCUN%+_IPU_MT3+QO_=O:Y+W]>"J]EUK][312:'PT!PM$__!;;M&OKC%QMWX MP3+_R'>U]O=\=YGXJV7E2FH=&;:DVSVYK_:^5 XZE67BGS?T2_]'N7]=.SC] MH96>_MQ]*Q]7EHG_\-=7[_K\]DFIC0]M>5RUGGH_RY4EXM]425E2.^J]7I3) M?;ZM=^Z;117FHY6D?+XH=TKM]OS#W5$W3SI-Y7O-5\C!W='1=[FD+Q5_KZ7= M#YU6Y>GN=/C'_/-5J8SRYFB9^,LWYI7]^#"^EO2+X6%_T.]U:F>59>)_<]ZO M]7_63RK2P0DIG=[G&^;1KZ7H_]@\'3:K+NGT_9]-[?[AKCBX/:DL$_]OW4OE MZDNUV^L/C%]WWQU_\"O?[BX5__R7/_ZA.^Q>2@^]JMJ\N/UR]:LU6B;^Q=J@ MK%6O?PSOB%LHDQ\/WP;G2F69^!NN]]2HJGFO=MG[<:C=_>@__/RR%/UU[[RL M=+6#Z[[O73X6+OWOG;-:99GXGX\K)R=*O_]P9W34KE(^4O^4[>7H/R+'OO?M MX&8H%1[[/XZ[!W^.1T]+T5^Q[V^*3YW.K_YWQ[(KPX[D#VJ59>*?/S\&UZA< M\ON-'R=6Y\O-Z=-=;[1,_+__^OG5=)W#/W>#1\?\3;Z.NH^CI>C_Y2N CF.: M6G_L'=[_N&Z-!^K)4O&O?*N[P)>\+L&*8WSO-K3KTZ7B7VXK)3TOE^Z+>AG$ M7]9 _)62!NN U-:T%MA&Q<[\PY_J5]^\D^K@>XV<::IZT#BON/)2\;^^&O8' M]XIJ]W7SQ_%ILWI>'5>6&C_UIS/_ZOK+\:6DRY+6T'^U?P^+2]'_X'>A<=?N MVA5).1MTG?O#RXNSB^MEXG]V=-"TJZ8VD@QMU#RQ[AX.C=I2\:^.CQ]^G?^X M4?J7-??2/#TY+/3&HZ7B?WIA7C9E&2R_[\>*9PW*O5_'K\6S[YVK?)/ M_ZZ@'1Q=M5M'?O=\*?K?W"E/Y=-2C=1.?S]^+QU<=JXNC,HR\1_9SJ-_?E%Y MD J#.ZUQH#\URT]+T7_4N-,>OQ2< PG,PR_GP\:78Z?372K^'4TOE]Q?GM37 MK_R[9OGQ;EPYZ"X3_V_'WV_OW-Z?I_X)+"5&[?'ZZ:"%Z\3"0/\<-:Y^5KX^ M:^0X;-^7RM]L6/G/14#DY&]\_E'\]UHS;@]]J?ESX9APM52G=.)8>GRY] MTM>+5VVBV ?MT\.E!M6=VK@Y>ZB.._U3Y;S^^_?7KM;REJXH_I/^W2B=7O1J M!^>5\1>K>_?[U^%HF4JYEP\5[7?/(7W_F_RE6"\_?OU].*-2&\XM;I NND0W M9&@[>&QD54[QY<7IX:'N]8_NB.7[8Z-Q\?VR44E!EK#R?)9PHW:"&__"4>6V MDF!>,)[,\9V90#0XIC00;6!HP^ZLFQ?L,H;=_S@=]^Y[/YZDOE)SFX<7#?OJ M_'336<%X[ (C?E@X"KSA>6$*,X.9-&%,(1"O9]* _ZB-SK@WD/H'QSMI30VX\UN M)),=;YOM>&/2W*-!1BY]>M-W#8NXKD@?A_&W1^+2][" G0M/:A%!-T'=V%## M][.0'I[A=&E&\F2 \(%.S&J1(,49AH8SM&P/ WV/!@T!XN'/&1K83N0AP?:2 MB]OY 5%SR2I)3"52-PV:TW*A<_ 9*15Z. Y^7%(?5#MMC&[4QIUT,*B<^ZV# M;OG'S2*0[E[ES>>V>;1R3N$E[%X\=)5 S<>2QOF21KY(>-8&OG"<2R=?.$XEE:^ M>R,-+1[>&L!,M.G#ELJ?K8;T!-H4/-_%85D'!UE^:PL'M90KY[/4PN&6UB(Y M9R=(:[,G2&/LZL"5*3%E6N_L=\IHLMK'RB)-!G"G2=[NWZ2,)@M0DR%EVC&2 M<%WBNL1UZ9_EIN";FWF57O#3TF;HW>!QPA90R.HNM#9+LX#LO!:M#K.DC$A; M@M\-JTZ*!(>[2#L -)N.-SR[R+RD*6R1R4ZT(4C2W:D%*+46RKX)3S2KFTO0 M]FS<[$@0P^BZ1P8N%2#7'RZ2OK",]& VDTGM0=S_"*OQS)>YL8?PGH_R)V"( M/]P)$4WSXE?*DO3=VIYN;B: GK)6-!?$$US=C*7E$)/_9#O2Q*43[XG@I9X" M6=(%S'NZ].Z@G!=70!HP6\PII?DU9?X2&[H(97^'LC MK(%W&!P_"Z^;E@$+3//PSD&M=.KD!WFS7Y7[S;+7E(J#A[=7_[HAC\3RR;%C M#[#(-1+NN^'UJKX+\D"(K;UWL%ZY=W M5WLX_Z4& 43[9SRAW^*HE9:;'GTB0-+ M;)MUJ:= /,"B)M/"-LUF3DP]]^*U,DC^].@A_[U@2HW!V>"TYMT5;$++["E8 M[T8397FQ66*V-B"Q2#36Q>G:=MO%^%][%P*KJ6Q<+26;O;S%'N[OM;E23*2D M<3(+$2G$E,O."2)*Q6J'[F8#L&4)!C>/;I[.#W\_525=&=X4Y:_^Y:6"!1S5 M#_\4)%$M+2M(SQ&*(Q1'J"PCU/8"5J]"JV*^Y.MGA2/ESB^5JZ?WOYVZ=8FU M,0M@,);$HK+*7N1HQ=%JW]"*![1>A3?/QJV(?__C^X'_]4O-Z'>_%$Z4FG9O M(?"PN%59W6#<:N^ 1]LQG4H">!).7TN]F11SP.M55HK1,KM-[SK?N1NHA8.J M-?RA_-81+#"N591%39:W$-9*3>94@;[BQ+%=%XOV=@QOET/ZZ0*"9S<,9[%! M!6QHVSY6VMT6."2V?YCXS-,,BUF(;U$DN:) L@1\!_VQ^:A7+^I]8]CI?K4. MB\9)!7N"J!_^R9=$6KVK>4U^JMMJC MLYMS__(G;2Y8!JN'P\JFHU4I5*[$TJP2GWF:827FL-1J4.CVCR7CS&Q*?4.7 MOM2_=EJ#GS>TD:T"!HO]Y LOR)\$7]Y;9&_#?%ED!I9LT+!T@Z-;+AH/G^DGN)M\E,0#^.E3 MIAG& 6Y7^<(!C@,RWQ7DMO(PNO M?RVE7$!V7HMXKR7>:XF[2*D&FC2WF\A4LY,=Z[7$Y6)+ M(8EW2$HU-/$.23M6YX.]@G=(RD1#@/<>'ULO>+;O5;J5Z.DP)9GJ'.VC/P<' MO]1.2WIX>O+KOW2O-OZU[88!\T?7SNXN7>N74SRJG6AGUX51Z_?YS\*(]4,J M*V)1Y@U(.-YPO-D)O%E1?N.G.RY_54O=;W>%IX-SZ\&0U5XAZ;8$?O?KS6 X MOJKTOSO%ZN!;?G!8>KH.FA\51$E6./9P[-EU[%F8Z<8KP[X>?%ZHL&$/V9VI:'2G>5Y+/:]5?_4NMFD<>'OT\GK0ZDHL%WNHH M6ZV.$JNXL<\FC.QZ=QFL\(0+\2_IH658B(EC9-9""V]J@AW8_S=_U+K M%NYJ#R.W]UBYOCCPE"YK;*3E15G98!U8CE#I4CZ.4!RAMAZ,>A5:/>9/F[?- MHC^0!JU?TH'SQ=%:I:"QD2*))6VQ,2Y'*XY6^XM6/'P53V.CV_[Q\+=7_W(@ M%>33DVK?O1K=W5?"QD9R<;'](V]L]*ZXU"[I%&]LE#XS*>: UZNLE'O'JWLC M;_3E3O?+[LG@EULOZ)6@L5&A*):VTJ\[-:%=WMB(U^OG]?K3 8M9B&^MKN;] M5/G9_]V^MW_4'G3UYS?IN/7]VU&7-3922TM[4'(XXG#$X2B[<+2]8-9J:'K\ M,JP.OI9_.Y+BU5N>>O?%+-G786,C6>/(Q)&)(Q,/7*V#+<]&JIX*#P]WA[9W M6:OZAU]*Y*1[W2EJR>E)7: MP:DZOK_/E_6KZ[#'45X5B_G%"/:V>QQ%A&%.?]DO278%"D9 FP+IOF>'7["F M0/2;[34.XEV"5H%]Y+[UY8278,X^7WB-^33R)>$:\YPO',=VC"\0+Q[&T\H7C6!KYPG$LG7SA.)96OO#6/FGD"V_MDY+6/BDY:6.9P@O#6K^-C_K6>H9<<7:Q\CWO,[(AFO ^(_NG3$D1B6L7URZN7>_OZ[-> M:?W=,?QX7Y^D 'F7B,3[^L0L.-QG2ANJI+DC0@;[<2S^&QRQ>YZJN[$Z<3G: MDASQIC]<.%X &=[T9V>D+U--?YXC6_1?VAAHG0MC"+:G["03[Q3$J^>_YYCG M?IRQDMD9*S5ZQDI-IMS%N7%H.+]*]4&_>F[?M\H-Q>S\J"1<:[MS\4@NNM_^ MU/N%XIGOGGVI5TY.KEFG(%721$DK9NKT.0<<#CB9!9P5!2VTVZOJU?$?Y[KV M<#?4[;[[O?%TF33X%-O>[>&W\V%1:GR53B7=*&CY^Z!54#$O:N55]= X]G#L MV0GL69CIYDI6O!E\7BA94;3J>?^QUN_*CF81@5UBI(D<6BM-AQ;*?K6Z0)1])7X8/W"MH4C)C:E5;3]9_2 MPT&E=ZLW.H-+)>E>0>?]PWRCT_D- [/JC?'M]YN[>SWL%:1J1;&<7U7[?>=V M$'EC(%[(?GM$2G\A^\1!,0.1I%<5L3Z_:-Z>EJ6CTMW#:?VF*(_U0^\Q: PD M%V51D3;HM'&(2I?VI8!('*+2 5';BSV]"JY^V9+VY>9::=:,7^K=^3>W>/.] M?,TZ X%UJ$BKZIMQM.)HM6]HQ:-5\70&TI\*BO'S^/CD[O+Z]->Q>W?QITBN M66<@11;SRF)59]X:Z%UAJ%U2*MX:*(5V4KSQK5>9*43WS=']Z;#>'QLZT0Z^ MM936KV[0&DB1"F*Y),<=QDI-W)8W N+U[7E]^Y2 8 ;B6:M+7M>&)W]JQ<;Q M3VGP_<3S:*SS:7O!J-3;5[2]_M([RY:+_ M_:1^?V)\ETK&6= )2"Z*:L82HC@T<6CBD:KX(E5KM@(J#O3\6>&P>B>=-G\> MMVYO1THCWV6M@)3B8KK$3B=+I0YC>#.@E,T\U>9/O#&IU=:'.6ARB/!]=!,R!9D\1RH<2[ >U<-R"9ESM=(BV1^]87%%ZV.?M\X66; MT\@7<%'*G"_IXPO'L;3RA>-8&OG"<2R=?)%S1:XOJ>2+5.!\V3Y?UB@SF2!; M%GF!]:4TK#/EZ):+\9#/]!/<33Y*X@'\]"G3_.)VVJ[RA>-;&OD"^,;;T&V. M+V](6%P9QN2E>U-?U_!]?8(R55?S57V"E'>7+N2:LW=5XGGE_+>X-*M#,RFC MR0*N<&5*#Y&X=G'MVD 4,F-$BJ7F=3%E5C%O%)1&O5H=94D9D;;5*&B7NMF] M2W"XTY0Z6$ES&X5D3Y/S3D%NW4Q'TO>JU$#V IR=3#.!E5;X^]X@.IC;V*=WG5NQLV MC:0K;7^KZE;GJWJI2H63MGQT",(D6176*4@I8J'M516*..!PP.& DQK 65'P MPG3*?_S[XM/3G7+]^_&XJYV1\B#I3D'UK[^4BZNNVJ\5KKY^N;KRU,JC7 DZ M!:EB22UL!GN*NX ]B1QC+^PD)*V5UIPR1%J8Z,;K7+P>DEZH2MFR^J.WB7LUGMN[ ME,N+W<-V>6.1-Q#B5:>W1Z3 Q4LQD9)& MQ2P$F%Y5ZOKW^67^OOJG-^I7A[_&^6'==,;.*&@@5"B\ +@T%F5X%0)?M8NWA\NQWHW^JVGFE:ES]:)Z%+8%*8E[=4,?[;:3VI@Y_ M"NE6Q$UY?SLVZ[V/*+VMQT_G^] Z:=LWM7ZA]7AY6JU]_7%X'O3XH8&C123A M/7[V!DH2Z?&3\A9L21L^,<>@7F5W_/QY=7VK_:P=]D\O2O4?^K5R<-V?]O@I MBE(^_E!3:H*KO,D/KRJ]Q12"Q&>>9A3,0LQI=2GK<_/KS6WEHF#7&G_:^>$/ M_VO7DRI!DQ]9%HOYQ3+W'(\X'G$\RBX>;2\\X,FTW4/5"_[#![>/] MMV-2JQUHHYO;7U;KCW]^'73VX08/1Y7M93HE/O,TPTK,8:C5H/#'&9GEAHV8':8@XD^*TG:(7(@B48N&*A!+M@) M#!Z3,@8E@HIB! M&:(M>P!0.1:(:0";J&B[ NA$<*-E>T+;<$C+@WMTCYG9M*D2$,T.37?!#6SR MG,#$B\G5=X[C+;A#DU] MS)3M=6.*ROWJ04U'+ZW/4*;>$8AIF41W<$'LS8&7BD_=1%'>9Q.UE7RXGD^$ M02G,5]K]W_]9"R CTPJ(J= EN4L.6,%BO0-O_JR;(WWLA@?(2SEELM/T>;*6 M(R$$+5.H!?K1S=U(0OEV=']8N3ABC4+ZJYR3GZY(=W7KFHG-3. M:Q>WPE&]4;UK-.J7%T+EX@C^JYS];-0;*1KL1\,2O)[MN["ZNJ) GEH$I,GM MZ0ZA"RXLIN%? ]!FS_VTY<$OB/!;BG*MQ-99:%BF\SJU;>\U56TJ2KM\G]=( M^SY/FO)]J:-(]W)9:9<45==UI?6!*0J[HWY;.U>FXM"8B@-(0R@,E\?'P4WQ M$'2!2,^OZ#B^H/!S3IB.$RDH%_]N/">^PN6Q<%R'.53KE3.A>GEQ5+\-K[FI M->[.;NDEEU>UFPK^T$C,8C&6@)_A@;2U$.EZ!'P>T[1':"R"9=#R71>=,91[ MW=+-,5BGB(0>7@AF*%BONHE6:YN*"+W.(:YO>O2RP/!$4Q7A4V^#TGP!!L#3 M0;/J5BLG?#SZ]^&_*P*^N:%WT.;%9X _Y0\_"1^1[HKT-[U3I'_(?PO!ESB& M*K.*YWX9+5SKN^$7^/3@2]MW@F\_@4+;OMD6F@2&KX-1;>&D?OL6\T5'AM<3 MX')P2G4?IDK:=,[$D12-I@BJ+ GK/.>%904$77#> MW_"X$?CK!Z9M]ZGG,1V4U],]H$7'!&]%Z/B>#Q,'$]1"L 7W #QN A^;X.F0 M#B,>>1K"M81B+_7)K18)!_'L:Q"AVV1(J&8(_A!&AP>6/'BV8[A]]F3@,/AH M,&+/(,'(!OH8Y<#V/==HDXG@!A! ?33/LG@$@'X M;73 ^[/0)>LX]@!7%9=@[L5O-AO*[55SR G'\ +;"4>&"":T=!^>$M M?#%X M><%[!T$T=,V7"DLH%T@-\,#W*!G1NT2_$^_W;#%X9L!V]LPK$%BA#DH-#Q'D M2DZX 1I/AH]8L)[XK9*[B2*YA.DEC-;P3#+1Z*I.]Y9T9RQ,MJ/@;5V8*$[Q M.)CS63#ER343=)CHRQHJ&0R?K18PAVNPN(PX[8!7+%LHBN&^6U)+"X-WH)0N M=$V["7P&DP*\DU#BX(5^!_6%8AZRLAW9#T01 K#^"YH*F.@8-O^ W7B RH"@ZXI9@@*"# M(CE4=_#-9O!FT@+%@C\"K,&Q&X[0]BE"4 .0/2W0 IVZ='C5 &?:T_^ B('U M*,!(3:-##CSP/T#.+*ID!L %71 1ON#.+D-T$#D8:#A UX=W&W#_ V@+S%\4 M1@2A$?P0P^T!?5FD!Y (\ SPA:T,!.&,30C! A\[#!) X +3G$P(Y] G9,C& MC%,70-0ID\94W0=X0M$B!$:5$[ZCNL'=.CP$X-#1K2X%QT 6&HJ-PVA8!N\<>XIH_7"I0@031 MI7DRU%%4@NFC1I0L2&X#0&4(\#!>1A4?E@$@.RP[]A#$$9'4FV-8 MWKJV@R(8*)0;!,_=P#[K^F8HA$=D@-\A%68$!I[8=N"5%CX/I+UGV:;=IW!+:PRNACO!^RF!0? 'N!##?U0Y M20=63X-8+9!_^(SZ"RR,6 #1V=@ ^1@B-0UJ&R2%@=^9I!DP.#JY1^QC#T+; M1;J@1DV6PJFV H$-ZQ$M'^2DA7((8M'J,>6 1YCV%/LL&'?(?L.R[,TPJR_ -J=// ;#'M"&>)/I"4W= M)>&R"C)E#W"BK4"M83UEH6P8]((2NC[2P&6&";W!M'%VICZ"Q\.(V0R9'H6> M1\LGJ[$GH)+!S,T!@=&"A D#"L!S/X,IW O7*D#0-L)Y]-4!AU#S&:V!MRW; M<=A2 P^(J$<'T-1!WN#[<"69 @22]"[70&4,'X5/HM:)N.R7(])!UV/I;W4D MJH$(O.3'KQA^;RV_\0NPAOI>#51DNNHLN:HZG1Z=O85;!0@U0!2P5*P AQAU MIE,5\%LP]"2@CP_F,WR;F([.Q$^B^Z8=^G\8!+"$KP#U:$:BV2D*$5<3+'Y0 M!X>TF=UWHX,""6>PP(.Q*!P9&'X!?6SDG)R98Y>$3BR]=.)PHL;])9=S>;#J M39,N4Q:A)&[IN,8';PF>\1TM_18&>]$/IQ9,8"X$SOC0!\30J:%/P<<&1034 MP< E534D#2P>-)*)&!O^!N8[NDK!VYB6&4SQJ;GCNL#@-M7B-EJ\S!@*W318 M.'3X\U$W?8)GT,/0!:]$ #;/ C9I&O7LP'Q/G M-/4M:12E[=+X00N7JL^4=L%3 U1G67*X4NM#EWP./T0GAC@8T MIVV(P$JYA M%'(Q.2G\@@$N_68&EB.)=L$UTV6OQ-#4<\)Q1;*F/JQ[XE MY]25Q:UXS^1D M>EDKG"^IY(N<6]F[CK,E(;;(N?S*;G&<,4GA6)$K3 KY JY:B?,EA7P!(.., M22-CY&,5)HTD95>ZZ-ZHO4 M*N=D96<;J2XAY>Q.UFW/(40XAQ]ZKE"C.=$-,O1H4C3+"U$E,>9FX:O]HL3% M+VF!*^6D9"N;;U3@+@SK3?+V-M1/F(HQT6QFN_E33'JXE\O L]VT7T0M-2?O M;C/W%R5,D10U-KE:'<#GJ3.T5,\?-L%KV@ @?3=O%O8#=VA5^X\RW5-]] M"W'KE,# ZK,/NZ'S8$M*FAJW'Y92 =B2!JS.\<^6"FQAJIM6@3P8C'+%*693RQ;A]HI0*P+9 ?F7:<+948+NI"*_L%[V>"GPL%LN+ MAG[V=ZDJ;2SO0-I"[;!^>U0)*1!IDO+50UXS- M#C]HHK5T^!?A2,_9^%S:*299DH8M;YH$NZ&$#2#:!(AI!%6E1=:9(NBS >0U M+-81F;8<:((>B,(<9]@M^#2=5JNF[6TGC4VL^2UR5H:;]AN9=*^EG6X=JO"T M /TS+)Y Z"KXC*@P;24[@95T5#N=Y'HC51Q""VPWQ\)?LIHKA.7 )]5,/7H: M>,!.9Y+9TYF"*M$622JV&F $I*V:UKY1$2,]AVF;%-99"NNL8F55N'+2NZ$] M[1E"F[U,NH:(@@E3)7.-'2@*LJ*L+<<>M<,&6M-F(]A@@'6LLCL=%V@"--!9 M7X8V">D2>6M/=]I"U[;;;DYXCH2*FBLMD-#"\ZUOH. :]ZU#P'FZX5_+22+. M=5:A[12P0#M;6^'WI32;D(NU_GJ!&S-M,HRY/AD3YG1\LP-DG'8.&]+61-BG M*^@BG1Y="K!E5A(*.3D]N@2('XX.Z=G%OO%(ZX[A/XMVR[-<$BC'4IHHY?1HQU+QGINV%6KYPB]1"@I,.H)E:ZH, M2#?/;O7IR($T;#T*R!2K$"^<80KK/4?[F4=,+N\.NQ#5 "^Z: M%'UGW;4B?4-I3T>4+Y"A%NW0%+1-)%3B:%\Z]LH1<8()_Y4OYJ10?]A7M,># MX&/KHI%CX&=LCTCKRS.ZE M(QT73X-JXJG.VB;]/WTP_#N<(.M2 @K!E):RA:XT)@."[[KC$"N\5Z0F8+5G MD(Y0>R(MG\+))?;A(D[L_7K>)X/S\$\%$L!%SD>%,<(/P*8GXK0,ETHD=G"< MMDXQ'-J@Z ![J@2MCH:3OEIA6Q76=65J#*L2E4IAN4 &4K&F5(H!'@::,2.. M +XV(P6GMIW!5NSF^O#FO7%1KPGGM]J9>C;/=\L+P M5L@DL[50CDT[3EQ_;4\ZD$K#"SP\>V908H#"(\(:[CX&'3SG>](&+13P&1U0 M'NQ_0%L-XYK,&K_-/I<:%7/-$%'TS(D%2OO2]?1'?#&QJ!4 :,/ 'YMS!,.A MV-:D/><&.>'(IWV-L%5BRQC" "+MQE!AP#&DGQV?V@K8QIFU]\5F2BCM[-W1 MMLCA@/&=KM_\33M[PBO]-O:QTX?P6%#@H-$23),V^J(HJF-'2K2:3=9.46B9 MV)H7Z%$%92,//L'6O^(2JD?[!-/5)F@C'#3U#:DZ>P^\"@G1(^80;'(<(VL; M:-,)"00[,.E>V% NVBGUL 9@9T+LT>:!X"76FFU9]X\A M]D.DS?46R:A/FI%ON-7'VGT\PJ#I^QIY%.5<<4\;1LS'&B,7#A.IXUG>T[JW MJ6.$NJ=U.]/&" Y,J6 #!Z:T,$+=TY+U:6.$M+?- S;#B5=FL0=&:VJJ>KZ4 MKC)?N#.^Q)W5R)Q0D\E$BY2II<0%8^V6HB]6)7NN)FZ,5?#2)T/I*GL']$EW M8<[72=01:44%2IX*U/O*WX60G&02X4LP/!\DC1>&4SSU+661JDD?V=AJVF@Z MM'.S(M +W5J%,[9(#YL72G>+/NCG2 MQV[8=KR44_+33.5P6$@(0:C^R3LKMF=DN"[%USI M2-JF(N=P3R::MI[/Y3?$I[F=*34BG+K0C'A]I;N1=D= MW!W$3:5I@5_]G\WD5JRV2I?8H=7*T4U-^')Y=E2_.&F(0OVBFIL8H,D/[[QR M43FIG=J-ZUVC4+R^$RL41_%H))]_#='B&>T-8]0C,5O/$0EW]SC$D MM%BN0RNWPSR#L(- M<9;N-M!_VPX0(61X/7BV;1&6BH0) ML"-"^FZ0STK7#J%)< Y#$Y;HMD@%O\MR^X+\89J6@)-(O"T_M!5B[SF8,\5'B::5M=XBQ-3FG9OLERH!R# MX-,?;91)E!.8B#?"A)2 @&*0+(*SFTM<;?DN6 TD>#H^PQ\$Z54T>W!(@'H! MQ=DEC!9L\"SO!D'"=RPZE281C '8.![+S:.IM3I-",&:HX3!H& M@XE^="I*-,4;;V_U"/SM#S )B*9<#_6Q:>MM)K)PO3I[/0K/$::5&TV?YC>Y MI(NR&Z>\O!NZ=\VZ+W/KGEOWW+KGUOT>6/=!!KFD-B6MI)%[J=24[O/E3OM> M[^3)O:Z15JM$M%*IU4HX@[P\@8*;6N/N[+8A7!X+EU>UF\HM"&&,O6T.E MR5CJH7$-9@K DTE3DV%1!HBG1F6+GM1@5@2:'FW2,C#1'PR]/MSED$>#C-CJ MKH-9C_^_+#<8OPIS@T6AJK=!:GM@7[4)4 JMA39+UC8\^K4WPM'@ 0J67,N, M COQ%W1$A)X]H@]9 M/7L/;A24 G/!K28J,*7S5'V>E8 M(O3=;BIU8;U,:O B=6;B(9680T-MQF *.+79DY(XT?6.!\*%:&@+,P I^):) MB>7YDN."4@ 7<_K332=JJFBNNK,C+\XVVEH*WNEXT9\3V-/'%.@V, &A:6>2=,X);3?O%""TG/G&MO/2"LJ-0^V)4#PDL2 MC&[IOOLYVVZOS6ZWSYT[C^W,>::$:#.QN+T@P@MQL(T?#$P!"3*F##$@JI++ M[U#)A26(>H'Y2QQ0I\1\3^RI!R&KBO[,F*R%V,Q):%=/L]WX3.7]X?RNRGEL[M\."_TFUL ->XFI MEH8"EX9,8,-[O,$=%H E:^#;O,*DZUA?A/VY8Y/AI&?TIEIT,11/2'K>?\4P M$U9]8'>*C3]?>E\393G&TOO,84V:Q8F(=@I *B;1+F="M&59U+18NTKL)VH' M?OCN"P1@4\R[N:DFRK^XS+_O6'#2TXX#S=FYVE3+Z5K*JVI%L9POQZJ_^>19 MG(1D*\DL[YL0[60:?\4MVFI>E,LQ+DW["MI!L&3G!:*8DW=Q*[UJN[1/0]>V MVRY&J-J[$.Y+@^ &<9'DHGR+1 BCF'%%2A*>6]P:"JZEO*BDZ=WF3XF4)QO+ MWJR4)WL8=Q-27BB*I3AC@WN!Y5O/?8^#TUI.RTZ>^\;"(!F77!;SR"0\!U&0 M;,&S(A7$W@DXV*^]6,$+YTV M>XZ]'Z6<]"FF<$?B(:]5F3 GCNVZV$^Q8WBQYD(E/NL]S2.).T2R\W%+314+ MTF*K>IY+LI.Y)'''1G9>O/.J6,Q+?)N&YY,$AJD2>]0DU43A^20[GD\2=S@E MS<*Z7D:8)HGE0HDGE60CJ23N.,KNR[=2%$'&N!)5U%#+KZQABPR M/L>7NLYE8I)[E-:1\4F^U(DL$Y/<"W#=3GI&/)/(9"G(;%< M7KACYQ,NDHH=[-^\>>;%?LT[L12-Q/F]GWB>6 I&XKB6NB0++O?[EH:15)AC M_^;-TS'V:]Z)Y6TDSN_]A//$TC*2#*QL=6X-8IKP!E'H$HLXNBGH5EO0VP/# M,ES/H<@OM3I%R,=U"ED3L MUZ0M#'7'&XQ19+O"T"]X;)<8I+T=.,_T%(J\"R4 MS66A)"TO6\Y227JZ<:N'*N:5V*,R^Z<>:4QC>5OF?R[69E0\H26[,O]<0DO2 M$+GEA)>DIQL[ A1%68DW@LM38M(D,%M.F4EZNK'WAU%%65OL",*7CWU*JI'5 M^#KPIB>T-*W_:E@M>T!B#2EE7)QYPLVN 7E!+*J\U G/N3?[+KH\[R8U,KMN@_12/O8#2)D75R*;=XX&Q'LW 2P+7]# 6FHWP+;Y6SK7GS))K]FC=OE;-?\^:M M&F7U#?%22HT MDO%)[E'*2,8GN9TV.HES<@_0=3NY'XD#3[+9'5Q\L],J)ZEX0\8GN4>)'!F? MY'9ZZR3.R3T U^VD9"3I_2<=[*A;'G&(Z\4>$TAZ8ON:5)'IGCCK9D5]E$6I MJ,;:*8(G4&1#IE/7"^<5,JT5BC'*]+[B=!I+AZPM!*J\K+A\EA(H>,&0;*5' M9+H#SOIZ*Q:5.,&;IT)D1:93U_=F;9G.B_ER@1LDNYOV$(M56LS).UF8@Z5" M? SB'I^""ARB8!&/A^=X"8[4E^!XAP-RD423-_HS&0# BV+):T)6L/ MQ^SDTRWB8&]I:%(&KZZQ*]4UUEZ.%+$D MQ]E\?B_ ._&:&NL;DW(^O@JCB<>PUNAG$ST)$D0]FCR*Q_O9O#<]).GIQN-9 MJJ4ES:UX^@AO8I.U)C:OV,',RW'JQ+ZN$SN=?J*5?L(E_5WI)TFCX9;3 M4Y*>;CS@KZIQ.K\\?25E0K+E]):DIQM+ UQ1E;A!M.?I+UI^F4&T ^DO_,0: MKQ7":X7P1!=>*R0;D]P+=.6U0GBMD!WF+*\5DI%)[E%:2L8GR6N%9&62O%;( MYFN%X D9X:-IN^XGH4DZMD.$H6/CS&U+@#^#0S2"IS\1EX?$>"F1])82>5-O M3TU4\P6>%K*QM)"=%>_4515Y4T-3L2PM]A+CX)V!!(\WH9VBY&)MU\US/;(K M]+S42!I5."^)FAPCI/.TC:R(]^Y6'5'%> ^T[RMB[W3:A2RJ8)W$=EYGJZS^ M>!6&3#"(8I&.X6TN=I)Q(>852'9!6_.B4HZ_&FOV13L%A\,W&C')@&C+8EDK M\U/!:4SCB#L<(H/49B?+@Y4^@(Y.HG/IR).NCLBSF"_%:''N3\)$T_S<: M\DBO;+]E25)$38UQ.W(O\'MW*I)H6HP1COV+;^UK7"\=N2-)'4K9OWGS))+] MFG=BV2:)\WL_\3RQ=)+$<2UU^2)<[O6K)?\TXL!R5Q?N\G MG">6;I+DB9WMSFU5T=<+XH4))NS\3JS57G>#A[%FF:C#)Z%M^TV3)!,9_VM# M&28)S"OVC5I1TE2>;?+N;).,B/C"GM;NBWA>+.=CS$78"Q#?S:03!0P)GG2R M[[*[).DD"^"\+.%D]\%9*8M2/EZEW<_2;I$?.U\A&*1)[IF-ME$ M%4L*R.HSZ2;_]G20ULTS97IA"7Y8)+N@/\W[;NZ?3SV'$$&WVH)E6$08 MP%-[KD"L-FD+#3+TR*!)'$&51$&1%)5>"!\4X:-AP;VV[\(W[J?/4;+0UX;# M# "H!8/2AR[Y''Z(4J$ L^NQF0ST)[C6\F"F*3C167X@,H:_2;0:$GZ M%Y+'<\*W!D^3&=G6BYQIY=Q*;[MM/"YYO V/[ "]0T$)_Z8"_KGI$+U_, (: M_#VT7<,S;- 48NJ>\4CFGAE -'UQ>*G>=&W3]\C6+Q/F20KX4<^K*)@*<+^_BRROS_%Z*5B9& M@U?$SS>+W^^F0&EVAZ-%+(\X*TG"#HTO_CLSVY9M(@G^^T&6/[QQZFHI5\XG M>JC\];19F21Z2W*ZQ'7IG^5VG_)6LZ_T@@>6-JON MAK1LJP44LKJQ'?K9*7^X$R*:YL6OE"7IN[4] MW8PA-)YHJ8S%.6,!"5!ZD!4]6.VQ/7\F6M1*\9Z* MYHH@[0(%XE$$-9D2IQNPC!1-E.7%;M$[%P2OVJXGV!VA:]MM%WW0]BXX]Z^+ M/VTQ^R#-#5=20*1@*4PQD=X&!P5)5$LQ]IWF"I1&V4@!D;*J0'))+"J+RRE7 M(*Y ^Z9 ;_?,8NTYO*<:E.Z&D&D@4C'IW=,-+4%%6=3DQ2*SN[V75:"O.'%L M%PMRV1W#V^6@3;H4X=D09N+5#Q.+:"8^\_AA(5\293D+6V!<>;CR;%MY-#%? MBMVKX[K#=2=U,]_ PL/U9C/N70JE)[&=M\1GOH$U1Q4+TF([G W4=8Z,_;?O M>D9G'"77RB1H=MW$?5:&:Y\YX66.>1D77HYJ#_C"R^HEP9?W'JC?,%\6F8$G M-C0\N>'HEMNQG<%G^@GN)A\E\0!^^I1IAG& VU6^<(#C ,,3G=FI/"DGJ\RFO\ M+DW*:+* *QE2IATC"=,9E73.;^4'I0)3$A(/7.>9UCE,-3;S.<9K/AK-7\#K'F2AK^=X3 M1.N%Q3)1NZ^LB$69%W/E4K]74J\41$E6N-1SJ=]-J5\=C%I1%DLN%GC!XBP4 M+$[LD/3N@;TLRZ*F\?+$.[%[R8M#;HM(:RY\*2;2&TLBY$59B;V&%5>@=,D& M5Z#-.4^26-+*7(&X NV] KW##Y-X>6)>GIB7)WYCBXFB6(JKX4QJG'=>GIA7 MB>15(M\#"VH)Z_YG(+[)E8H#AE M,]] 86]5+.87FP5NNT Q9216'GZ/N-.R&)'B'RV3Z YRNQ>\:<(Y?,DFJG\\ MNR^NY$-AG4Q1E>9+>OSO_\R4+IG('Y94MIW/H9!%IA5D$2M4WKKD@%5&T3OP MYL^Z.=+';IC_6LHIDX#GYXF@(B$$+5@YI//?#_]W>UE= M>L@(/P->. /=G,GM#K[Z\,\M+8IM=X2J3:M;NQ,AU9F@;CX'XZ7TX6KEZ*8F M?+D\.ZI?G#1$H7Y1S4VRB9,?WGGEHG)2.Z]=W I']4;UKM&H7UX(E8LC^*]R M]K-1;Z1HL!\-2_!ZMN_J5ML5!?+4(B!-;D]WB !?"4/BA'\-0)L]]].6![\@ MPF\Y(K@26V>A84'GHSHMY[0-+8@O5[V?702R7>?^.=N&E[Y/9YTT7E$"Z=ROG -86OG" MZ]6GD2^\7GU*ZM6_-8#)"\^EOHH/+V$_V3RZ,*SU*]BK;RWXPW4I(Z5A>2'N M#=&$%^+>/V5*BDAUZ?^'[]Y<#,A^90=/N5E^7FIYO><.-^]8[&JI(F25LS H7(N]ESLUQ;[8E[4 MRHMUO;C4[ISE%957Z^?5^GFU_K[CVO"E<(JJ9V#[CRL.59_N.7K&QG_U411V':^_+/,",RMEA1?*XGSAA;)2SAQM/*%XU@: M^<)Q+)U\D7-%KB^IY(M4X'S9/E_6*-F1(%L6>8$'9, MU2AY565F91-E(+@R[5U=/EZK\"V.S^H 3LIHL@ U7)G20R2N75R[-A"KS!B1 M8BDI5DR9H;=DKY,M4-,?6EF.75'BGAM9EZV<.TTQTR4 M+52*6+9PL9P%%WLN]AD6^Z(JEM1"W$'KU$M](D=F"SNI#&NEB*9,%U;S^]FS MXG)1U$I:%HZ+IVD-V$VQ7R]S,&5R_\:*S6I>E,M*-@/EO&0S+_:W/2(%EF&* MB?3&4A"%PE*(X!J4;0V*T5M*\;3?6(2Y).;56)LY;2/?)W4J44BW;&S*>-RQ M6;_"@2KRJLK[IA.)5%5.>?7VMU95+HI2?H.^6&I<<5Y6F=?GVV)H/O&9;\ I MDV6QN*33%M<>KCU<>U[4'DU4R[$J3T([7ZE3GN4!_\1%:#M.70HGO@$KE:\Y M7&TVO9&6^,PWL.8H15'6%ANWS514CM0'>?OPTA<> .>(M+N@-B>2RM,QZR+B3F:D"&"%?X,W&XY1'=A:LVQ\)>LY4H"#-X$?HN"[0AR$=1' M%#J./1#^*BNY8O@K$NDO62KEM,DW';C>ZX$((.V$ 2,;>8[(.HH?,@A^AF>M M>Z,B1J2U[5.!"^?@(I__0C2:C@D'W@-I@2>T;2 ^*(C0)@,491RO[@S@WR$C M#Y/PO[1<>7(_C%(7'.+Z)MW6-X$=A&D(4PK=%"BTN/1I+<<>84:\Y3FV.7EJ M3H@>5EG"@S:9X<$<"PJY\H0#2B$R-^2 DL\IR3-@.@&]2ZS6.$KAGNZT63I$ M[GD$PB_6!*$1<8CP5S%7F/((F59\.QW@=C8OX/,0( V6$7.<2Z=>+^:7T/%W M(W'-Y1K?6KQQ5O4+.756\^5<82)W6CXGS\A=0[Z0P>;=,?$+9"3;[$ M.;MX'3#)[^@MSP?1";12^ A/ UDQK6? M+HH"M5D8$7!^@MYZ\ UFS[CB9)P#XXF.*OC;> 3/("?,LS&<4Z>P%ZR@%:N M_0Q*+]&;6;A6IL##]$;**5.\EB)K"5TQ2Y$E]-UZX^H@\\!HPT:Q?QF=F98\ M,].WBE!Y4804,!3>)$)R.5>*4X1 8OBJ\_Y5IT%,DVHBK.Y@VS.8U-M 'A0D MZGBQ56>-"^>6G?R4I$Q]\KD\JL]V5(,,AJ8]AC?@[<1RIY@1@G,3)@(*P4Q# MN&I@N"Y*1$HY=0,6KN/C2H?"C6.F%8MA[<.)T061<6J-"Q?L4GG+*_XBO]BX M0()\!Q\6,!9>X-HM@_)K9'B]F94TM8QB\H6K%V#-$TI?H$2K;HP&KCKT_R8) M]8RK2YXJ"J.>T>I%J!G@'_67',3^X,JH23(385KZVG9T%1D!=WNVC^804Q]/ M-TRXW09X V[K'D"H8*(T,:1W(B,UB(LPB#A.K38Z.!S6N\0L"'NM+6VY2%'9 M2!BJ!8-V,*S8FPMPJ'+Y=E1_>*D(0KUBVIN&=5RXJ)[7SVL6M<%1O5.\:C?KE MA5"Y.(+_*F<_&_5&B@;[$98R#_$3P!/ D#RU )\$MP=@QEP8 *K@KP%HL^=^ MVO+@%T3X+?6P5F+K+#0LT_G4+>)U)!084K/K]_RW]-NW8O9GITN&.W_?KC_8O9E52D5\[(L?V#F5>KTZHV[ M>4IQ+C:)T;5):+)8G(M-JI*VQ,6WL(? &Y:C->Y;AH%_R3,QM>CVW7.[=J+P MUTQ4=?D]R_?FF/+!_?+L_0Y!*V@^)+]$DW!WD :CF;S^58B$".F37M@RA+7) M!%L'M!:^M'2K!>:"X8+YHT\'*71\LP//9!$/).YT&^+%S<59D9#F]W3DZ89\*;+_CDJC+=N*>JO.O&U?<3G!)HI"17"J),^EQ;QU&S)?6-R& M5*,[V>M+&^[:QBIM4R'#[8E@#0_6,W3K+&+&O(+E]W(%BW6?F*A''.!JQ<3V[U3]H!ADOD6W,2=C#-='QFC5;K8GZX#/6WP=-*>K]GU7'/O,XT[GO.K_6+ ZBUB%MGV?).TO4P%00^)SD+[T1M, MXL':1,\BT ,2.=Q57/H4G#![SL2,B2AB![!HJ!MT1J= 7G27_Y\^&/XM5-FZ M)V((,0?NNQ NA(%K;S)ZVKXC5'L&Z0BU25SLLM,Q6L0148/@:HNP=U'EH2OR M5('HSMM8IY9_H&_!='=SFUCAV\1\FYAO$_-MXCW8)IX+[*MEJ9S6P/X;-Y 7 MSNC(,7@B;PR497_[./)UN'L\K,@WB;(?K\5K0L M+SG=MI9Z19FLTT>'0V?\?=-C7]R:5MG6=+&0TUX9]EJU,QU <_HVJ-_([UQT MK0G6BKRNM@J*5KI7%2U_GV]WFO=Z2>[U2A+*S0O0F0'O9=Z):CI6+9%IM?Q\#]3]PI&Y1D[ Y^?"\1@8X>G07&/0 M&P3= $N:!"$2?H0'8F EC('-;+U,T-J87Z6##80 03X&&O]I#JUR\[2 :003 MF%",3AO0F9'1>3ED!78 6\O8>S[-K"GB.B'"YZX8ZF-TJJG>3:XV;?"]8/8# MG!<,''5Z:((R?D1S3I'^/KNM7]&/\M^ VK;ENXN$7-C#.L ]+.0Y05N"1L#; M-CUJ/J$097L+F30]9 X?.N@.P4@26\*>EW0JXI$A+LIVDY@& !R]$.2\XYML M__&18"PI()REFV,,7S5)2Z?*T"-C 980GX:KZ=^"CV$2P0H)A%,%*NE=IN.X^V,)Q@!Q1L?C #I> MADK>)BA]AC7'_R4"C*9!*F6"R77+[EKP^/94+"@7IZC%V!]3.!3S%9XG4!M7-ED^CD;AQ-:;/;DZY&I1QH(CB&D J M'<3J -YC1@<*G(O*-0H+O8/%XPRTRNH3(7;!:36I">"T#)!?D&(* C021Q.^ M@),H%9/58*HG-IW79"#"_$#\P#%:>/TM19)5ZTN L4*+@(3!6!CJ.(3N5-*' MSC(BF,:$7A.91E$U@Q2?1S9HPZ*TH=-TZ%KYT@*UDY%%E4<6>6211Q9Y9#'K MD<6H3LNT$%,R1U(P!L!J+8'E:(^$B?. R^<*H\,)\DNF$;\!9B!%%OWG5LDP ME!#8=["(M8T66@^?*5798$*\9V74 .M-?>B2S^&'Z)01(0-*(M5;#&#"U8V" M,=;F"K]@4$R_F0%L:>C-P?7B@N@YX< B5<,^K%$_CA6QEG*:LJH@?$24(L^W MX9D=8$THB^'?M##;9[:ZC8!.+RXLD5)JDTOUIFN;8/!M8T5YON17%/(%<(RO+RGD"^!8B?,E M?7SA]EA:^:)RMJ2/+26N+JGDBY*3.5]2R!>9-HKA?$D;7P#'N+N_.;ZLWX5O MO6CEEHD0[/99>V+=8)%#TT-+L :;(;(%P2(+_?M ^ MO'4A4Y/N@OQZTJS)7/1Y.R7MI%WJ3/SIJ%<>:NNR2 SR;;OCEG7,.$\)HQ^*7R^ M^,. )E79*46"S"%#DR*9MO'%U66;Y) A/;1-M[4=+4^&2+.?EC./]VJ*_,35('4GBT()24KS>0#_Z MLBCEBW$N"7+Z2+/2#HI%SND.128%/1FC[NT+_'."_K%8+"^:][NT+5EX&=(K M[;: W/J\0]'JURUB6]IL79WZORU'+3;O)57J&C/X;CUPGL#RLCJ#>[?$<672 MQBEW&9G)2TFJNR]V6P_>)V1D9T4U:V E2QK)8SCO7Q>@59 MG5R&(ONR(JJE6"&<1_:S)^WI"^^_.;5!E1BE(Q]HRD;*](?#,@<9G5"C&F3"2/O'S'((4[!F]U98M*[.D\V<93OJV0 M>*PQ7R[$9+JGQE5;QYJ_>K'#!G$S'I9*T19$@D=Y4K!%D?3L-P$K2GGO#CML M:PLC:7%)=HLCZ=EOPJO8;.&&AB)I:V.TS%L$KFLL]-OJ(V5/SK"%)-BMW;-,=F]$&%;2A;?O8 MBB4-8!#C*?*DI[F! X22J)7RF=[!2>X >=+BL@6M**5@FAM)OLE+BS'-K*P, MRY4@[H/C28O%%D[7ID')XY=^K2 6L)@0WX5ZI9.4M"AL0>+38.QM!.\U2H;> QF&(I2UL<_!A,9H[!R**L\@T(?@QFEV0V+ZJES&TAK.,_ M7'H]XH0GVH6/[/3+)U&PB+=IOT&)VV](#>&3=2521H9L;UN\\:2HS.M[\9V- M'=O9>*LU6-*RWNJ#;W]D9_MCO71[M:S%V*^,[Y%D4=C3MT?RQBQSL20O^O-9 MVTAI>':K?]#478(=*@?H#[&ZQ'/5OC;E#:E\%V6W=U&V/^==W6Y11$6*,7B= MP@V71.1_[W1^5S=O8$%5%H.-'.YW:9=G^U/>U>V@HB@58I3V%&X')2'^2>\8 M)2+_.[FUI)1%M; 8 =N#O:5G7:JA/G9LT\0B:]MRK_)\LVD?-IN2A! MVLA*C+39C9VII)PUKCK9V>6*777X(I/:#;&D7+],*(H29^1C-_;-DG(/N=ID M9P].E183AK*V W=V6[\2FK;E;_S$DL;WVG9[KVWO3RS)\7:72]T&&C^QE+5- M+[48H\0FC[K\O%)F-JCRI5A/?Z9N>XJ?5LK:EE)972R,O@?[296!#1/ZP_:0 M[(Y@6(_$\FQG##>0X8$_W+3?4.";2+PA4*HVF9(FTPY$TG=C$XKW#N*]@]X4 M"!"+O\ ^3GN8&TD54L:C&:-^F<*N+=SC:H%9DL\.1 M(HG%?.Q>7VI6!M[AB'!GEZJJ.87 M.]I1'^C?G@Z3^^<_;>/Q_://3=D4$I!^ W^&NV0YN4P&?P]MU\!MN,\.,77/ M>"2AI.$FVH>9T4R=U(, V ,^A$]$/BP\CF[$Y0HD=. 4+2>%O 6N6V1"54'W M/5N0!%PI_O-O>''X+R7,9!1,*F $ICYTR>?PP]\Q2/3$VU:F7X4;B700!Z8^ MMGWO<\=X(NTHI8+Y!*(PZ\XN\1+?.LSYW4P44-S2?!XP2@O*0:[@]0@-U\%[URB.3Z^4_Q9P)U@ M:@P$W%OV'?C5:N/!1#RZ:-$8BHX>N>O!_PR(!2^R.X(]) [=CG;IT_&0HT-Z M^$9YNDJYO!8RW7-SV< M0X<05Z1?3O:Z(U3?/)U-XGF@1B@RE/,Y%/EH&*I#_P\!7H M/9&6C_ @7'8Z1HLXHM"Q'0'F\PA_N0)%#T+?A%*@MQY\@P$+$K0ZUDT?&)(, MY0#&F2 8;B@!;?@P&?-0=[SQI! K_( S""A$H\_%O]W8A)*2#5_@]1Q"Z&46 M*L QMUS!6+AX!ID"$]M$D=0)1%\#D7)39:@A>6'@VVL8*OL'MBR2L(? PG^ M-($_BWAO!MEUQ1E_6 *P7=T([C)MUX4OVCY!<.B8N"@$#P55 VV "0((^XY# MK!:J8:NG6UTBP)N)R\5^6V*O[HC8+RL0%UU]""P\@.94\@R=1;F%EJF[KM$Q MJ( _5QG!!). R]NVY"V_(_(6*9@![P$QLEL&E;61X?6$1^)ZJX1*'^E.FTO5 MUJ1*VQ&IPL4;_0Y<9<'XUMU>(#VF;74/P,X?X%(*RS"NM(A,3)("B!L,37M, MT(WIZ1Z50; ^@7[,IF2QJS'1G50)GI1EN2OLB-SIT3SN):LGRF60T1W)\=;I MICBU"AW2LJD\:W8WJXVJ]3D8[4 M]W88 ]#7$R,&=6 V@_"$;T6K&5Q^%Y8FQ^X8GDC]5T,WX6J[TW&)A\.:N\$E M,$"K*PI=8H%-SX(;>GM@6(;K.33N%XJ#FQ-63UB6UG7 M=4EIM3M*J8@BJ,A)CRH< M_C>P?9RQ_J@;)EV#?0S,!0#Z:)N/^ C3UD.AW0*W@<''K]!C&EB8(T#'L0=+ M20",!][ %7_E"SEU@AN4%)2XRYY/GTU##O@!!>41GH%DFSRM4,[EPZ?EA._( M%=,@CX391#3",16^Z.@FT8R ,VQ3ARXWD26I98+]A-M>O3DS1D5ZS>ZXQ+Y* M(7P1)V20D@]W[2;JJ.8CHZ;__N__K+7Q$YE6L >D4&.F2PZ:@*O] [T#;_ZL MFR-][(9[>Z6D@0K' ,CHP2'+Y=E1_>*D M(0KUBVINDB:9_/#.*Q>5D]IY[>)6.*HWJG>-1OWR@BZF\,/9ST:]D:+!?J2; M#;;O B#!8D&>6@"&@ML#"XD%5@$5@[_8LO%IRX-?$.'H^-=-(UV)K;/0L$SG M-Z*V$=L&EV:VL3==DP'L''L4V!IZ"Y?^Z3)-GL!HIK^!(0NF9P9$<'Z!BO[@+DBLG1PS:R< MCH]&TL1PFGDS'6V;H"F%M[NPIJ+# ),$7W#&' N>LF!:H>/(W$4:XL=9 H=\ M? +;#HX0#*_'MP_QV$[P+4$O5D3ZN83T!5PU\+4X/& / M(PDL>UTP3/RF:;3P3K#H'I%&06 8OJ&68<>P= MW4MV_A9X]PEF*\P]T8=QC MP;(]RKV)< !5,$(#@V^AOM+O8$@^$J>#7 -?+$[;[17NPQ%,+2D?808LEFY, M5YXQ^*@4'('7AM\R655E,? /1P2,9S#XY+R:*\S8C_!5.5>@<%@*X09V=5$7T6MC;@AFMDD(?!E\L' M2/T-XG@ZR&C;!C)[@$VNWW0!^>'YS,O$&\+'T!=U C=,( MQX8#JU,%GM2F3X,OYR50^(BQY*E*1>:Q5&+#*;'ME:N+JG"H6WU1N- #7*X$ M.S"H\1^#)\%E4U)@8'(VL 7>C>6Q%9[&-X,5S20L(X8ZAQX(/]5N_%^6$((! M @)???3L+J'1@G!,,],X8X^9##Q*(I9V$F4L4/P3HVH@1@!CBB1%8H@AKZ88 M$V7^+7Y[!M]&)@SS^FB$C\45BSU:\( MV#=A1 >-.Q,I(.<4[5_4=@]N"*=A@W]KH!#K79#W+EHETW@3>\S"C$4F=?A= M4S?I6H5Q4MUCE@3@$4',!L;!P2^PT_&!15 "4P" V M!ZMS@#?P3SA9W76)MX"!$UY'QC6+/XWP+7CE%7"H2R)SIQ9]>#.[I@$#]L9N MSQA.KP.W"R6-I;_HDU%$5YT-+.TO+J>EY=E],^OK+2(4&$CPCV5/Y#!J!#%M M7Z(PS\7>9DPQ(;3".OI-+.LTALGELP+B_GRYXW0\ABPH#E<;@R& M)OL!;\')!BEM%*X7J!SNI+F1X(,+=UA=$I@H4DZ3_L76%_PPI AI^0,Q3%E% M/J(.37D]?1(S$^1<@3U"H1^>?P0;[\<@N0]'9L^Q"?A&^?EIYB51D1)81H,_ MM-FS39"A">0O2:^=)B'2(#]UW4RZ2+%L0,/>@,Z_!7.?X;]NNC;-GZ:ICRUP M:F $#GHGH/HN7!'9?!CI#JY*1IA2KG=@ 1T$YBJF!*-U@'^T[$<"KHTW$W@Q MC8$1/@V5;1JUP)DT@82XB2:"PXN;,S2T.-WR:J-A;#3]8!6'<3ECID'H":&5 M1D$ZW(H3!9^)!#5%AX[=6K7IAH#C&"V65DZ3 MM5^,YNR[#'N0:B9F8^$$0]UE>Y-.5[>"/ <89-MN^<%@]!:- 5##ER::HB6C MFXSL&&XC* $S+T-"NF%H,J ER!;(*B9' '.CUN \/H:6TS3.1Q[9=N/SDC05 MHN#F"05!(FC<(B(6#)8":Q68!=/_//4R!G [?80NH$\T\ <"3;3!R3M=)E]3 M!4,VH/7*4$:"-1[6;X<2:P+VH4W+@.XY>WJ2< ]/:N*@T9T!@6I3G*,8$7D0 ME6*DN6'2^""&#,.? 44,=\')FJYHJ3F09>X)KS$U"" MS"673PRDX'HIC&(%2Y=#Z 8;O%J3ID2.G$Z(P.<"Y5XBTM_3[5BZ".@: M>4&P UP-PYDLJ'1?9>I%=X%H!"79L-NB$%FB\;J90!2&H%\,H= P.J$[O"9- M:VPO1!_8EC0>8*.[+X%#8SB+P4\W-*6>/>_-!W:*X#LY8<9M>VWWV7TC!"J,=@ Q$O+E_/J3EY)4 LF 6X!LZV6F#:)4E965 MM\K\DI)9B0/AQV>/8Y S\ 0H6$FB(]C*(U@I\-;BL^#O$PG[?_LK_K*4> M/_;+!ZFXQXO%W/]\?/SP\%"%-U3OW/OC$V\X!DGD'PO[SO*.P5BVCHUV4V_4 M:\=@4AF&7F\V.J:A=YJ&V3Q>3$W#:-1:3;O3%X^&?F2:U?%BFB9+M]SBM<:# MH5>-AF(P5(I-,,.HMSHUA6!F4U*LOD^*-16*,8I $8G6:+1K+1 SNE[K&(WC MH>V)(W1@#;-F/"+5;*.U3ZJU%*JQ2RT3ST]F,[QMRTAS^B.J2\ RJ"57/KK5 M0''R("9T9U?LW3!JG4:\&S6]6=/E;NQG,U)S-Z2\U'"?$LR]6%AX91K6"&0E MI6F8CQ9M5#*.\GLP$\H=$]D!'M>V2JJVK_+.O6B76)3^MW$\*ASQ($,/?9PX*Y9L% M7>_:6$#,MSC1D.%GL7N20?$P("[SIO.\RUZ]*XW7DK4(\J7IQ=%\KSQ,$[O& M*6#&MS6; 5F'81E4(I<,^"4^@Y]H*(4D@D(16+=)%]FTJ/#H=K]<7L?2PD_< MH3S_&LI*&F*A+N4+15ZD::-H6NI7.XE:;#D4;5U8OK1GAQ_?Q;.,=@ M^0U?$I\]?]SI&C=*_LJ0AS"3N?447[-14D9 !?PH]48B# >$'Z/AH_BW=)FJ M%!_2CH6I9$1>%&$#L7C 6D,TA!L_TU+T*+=,KC_W2_;EA$)B%1W MG/5,D4LJ));A00X)HFBV[_EZ%(.DKK=4R5+A6")I/#B!/H99M\AM2!$CE$D@ MO#M:/J4J^[C_^\XRJ'W(H'86AZR&M?,.-"?> M_(HBSED4RSW,O('AZTBW6498)!AU$2-449"U9AC-AAID;2)D'4N:!E'D@^==L=Q&(YBOBU!RJOH @JY7[4L!] M,4J+;)<;LV73Y[4&\D'[6L:CM+<@2;'[?+;7N-?/=SK,['H(A$,2_.-#X\-+ M-5F[JJ^T0-QK=_3M2?-L%.4";_B_N83%=Y91]1E24NT>_K(C=&"ZY=16/1%Y M^O1:NJIO3H"4)6_)QYIKK3D M?N5,8N8B8)5KY.%0B&2J3)',%E ]*[CK&<#S>1LN12;2GNPW#& 5C QY=&Z6 M$: #K"S_9LWU9L5LZGFV)T?E43#2/&O'Y\/IM3?+Z8<19?ESNMFI-'1CA=/? ME)>NJ#M*H<;$*LK'W*VJ*PPU]JC7#KGF_ 37NKN, \CFC0[SQWI%KV/;X7SU M5J$(L1,E]6;8=@]B9P=LVVA5.JW6*M^^(S_LH]1,GQ(>6=1;HO3(WIE'EKNX(K.G'>@V.6MQHLV)Z^S#NK&1736(U#O#'O[&PTHI[" M[H@J:V#^F%',95(,\NW.LCLYEFY;#LKO<,'\_6O" Z\U?RG1,4N/;VOM]UXX M_K W_[LR!,VZ\1[=Q2XK16>/ZK#(Y"G=PS?J'K[P+J->,^N^83=+SU6T@8 A9Q)]A0L'2U^P] 7?MR]8;U3,=NXZ\!THO/?"]07W M!U\8)ZU5VHW6>W0(L]4C=4 1)LML\SX,O M/7_!TNQ4ZD;NX=6"N1\'G'+UXE+/2J7APFS3 M%:&M\E.]6:U%2.Z>\(,)-8#UG"EW@R2@:!P2X?.F!#CVD]F)T=\KFJ7]9)A* M)W X.AKW8775'XX( !2X=^@P9"9A:4X16YE[O=)(K:JQR4#^PAW^><3XR0CG M*&9^/*CL#4M=S.-EQZ"L$X>;E($*6C!2F43 M30GG3?B;L'8!UJ+$;8/WUA4JSN+&FS);&I'IPSD"A%X]!"NL M2K]ZCE'YV!C*V"6*YD'P.H# \4E D&5<8<;B*@KW(*2]PP_P-IF)EB+S MP /&]GD3X5 #;\J6'.ATS_/NPW%H^151L]'>AIQ+1#0ZBB8.(?X4%')\Z-JR M+:\"A[%1;:U[MOMD38(IGZZ?S&IGVQTJRH';)MG[M1T_HZV<'(5ATE:7??[B M-A 2JYRA\(4W#3'V228W8OF]L!X%RE^'1!F,-A,$IL_P[F(ZG[A/0K *9(1\ M*P3;1PVL,!^RC.W@MLQL'_Z%N/R# #4R/JDHVK=TX%,-EK0]8\UI*)N<9;# M2.#K @FYR0Q,Q1>P+S8C@(Z$%XJ)1E-5Q',+[ D+(:_A(42]AHGLFQV:2]H^ MFQW:\4L3TN6U 7.W2F!NN2TE,'<)S%T"/X3JC4URB->(Y&3GROX^D>XF M[SCV[N$OMC2PZQAZU-&#:-?CF.GF?-S.53QB\Q[N%#L0VB@@.X?L#C1JCER0 MX]3)DR''\7/Y_K!QD'5O.1/VU)]D.QI\L7B4-JGL/3GB/JM@!U$#):6MC0\L MCWU+L6]C& *1C4.RZ"?M(FSY#F:%;!4JV]!MV&R$/TGI."(!Y.*V83L):V_& M_I>CT=&I-:$-OAD+,.E./&K\-V6%=)A3\&^@NDL-><3LSN*L:K XCP9RIC[- M5#&!E3E7N(WBB'HHPN]Z8$^'D'VUC]:GC_5/<=\[='+%72 [6MT<_9&[_[FA M%+KNW?:Z)^?:2;=[^?WB%K2M=G5YWNOVSFY(G]WT?KWH?85'0-7]_OW+KZCS M^)NSF]O>MY/;LYM#;=8E'R-XF&.72OM!N4-P6'SLMLF"@]N+8LO#N2? H^!M M6FYE^;UZ4U6D&#:SFN.0,IR'NRX]CXG@[IWTBU]/3JZJVA4-'#72/40H"?8@[4P.F^#>.)*4--D>3;W?@OUSZLP[4^D3KB1> M"+6_BY81=KGR'+HWU1[&@@5*&S:C9+CX241%,8F!V.'S8ZPJG M'\Z ^[^%PP?X#YOQX9 N+$S8;6HZ@>5 MOV" (>T-K).[B0V86:/%>!(KVFR?/%BXY ME;[%M:#8.(C%T!H+(:11*CW])&-D]B+3UK4A2QH%NXJ&;J:-K@7Z!\!Z)[;+ M0A>XH0=G$?YY$E/ARG.Y)?)!;85HL@Y/D.1&.&]56:B373W2?(;EGEN!33VB M=WR"#[2]9]B-%&GRJ^<^@*J5'80/:.RQ"QSV@!?A_.YX?D.>7T7VR5ZR[_ \ M_0Y: C8%:(S&R*EL$8LMOKU%,/>!:4DEF[IA)KK-_WYY>H-?QNWE3WS-#X9C MDJWDO8!+X&"8!H^N>!2A-B+_X-[R'/#GI?;'&4M5*'DL[O&)?,4M90-P,H9R M22A!2'!;Y*> M9NZ6?>_XKO>DW;L+:NJ=_AXT=N[@;*'I"BIP. ZP M-ZCB>^Q-Z<&QZ<7-D^F&/./4@%L-9P0-6^I[O+#NHJ:UCPM6011BYXL\SD@F M9N>]QP%I^[$),]EZ0*FD9*5.L; _Y':#W(M:YFK6A!J(/3,YV!!;3*PGYBZ4 MVN'5E.SSF_8>#3^82#LF_O2!#$0Z9@\P1SI^] ;P$^[1FHU.$QG-I/_%)(I- M4)0!I;\O)O="-G1.+$DT:;WY MUA2$A3.E'J,_)#%D# 1!.RI;VZ7805BN@P;T0B'&-"?')#$=55!D+W=9!_-U ML+J^)TT0X B>/)S?7D]43JF)K^UZJ5U>+Y772^7U4GF]] ZNERS-L?_QH=\Q M.YWZ:-3N#RR]W:\/!HV^I8\:_59MU!&676]WK-8'/BC\B][MV;?:O[Z?7-SV M;D]N>_][!DP ?Y[+OY [SB]OOE_+'^W(I0M%FZJ4DC8A3%,&$JJ:.EUB6F7" M6C1CC"^?7GZ_U;Z=7/]Q=JM=]V[^R)$ITJ:+[+\0RJT009\/ PT[O3S'6 MF7R)BVX()LD,R5 , V #Z7%6M6_QB] M#/OKDB>"G\$/*%^7K"::O0Q@)L)H M:*LYH4)^9$FJ M(3 9!DE],_N?L* GFO] )#> ;&MY>3-VT2#W.#*CS,N9^0LOB*\1_3EX6WQ( M\7'P1VASYH&'&QE=YQ$'L%DJ9G$(6%FZLLW,!8$G0CMS-3,N3]LRC<_7,?6S MXKRG-6^]3(:26N9K?P[XWSQ8 M<^T$KVNB G('JRD \^6@EJQWYO8WNAX9>]4'",+O<>1\R@#M+9 <4,.* P] M19)&'<>UL;#O\-1_IZM^?#6F.OA1("DY9]IVKAY0LA.XD,)ER60HFPC\L[PP MR9U1*)?##L$TX!P)=L/1/_7$&'C6(3U$%48.U2U,+-\'R1G2=9G%.8'3PEC! MDR,F&)W^;^ O^%Y,X3<83#CL\F-J)$E^6E6T#B*,+8\!]7.W' \H/ DB3;2\ MH4Y(BF .@YR+>S'13'CG/%@H89#P A%?!8.X#[,PJ8)$:7@WJ7XF:4>^O? H M,13+/O".SQ:X7\XLS')=.\NJ5LC3 BH/M-,465;S!87([AU*=+$F3[[CA]L2 M9\#&GN7 Y4N2M4HO>?>[+ :2K1D_T\*H[#>*\G#-\Q!&L.:^^!S^0UT'QD5D M3 1]K2&'%9(Q&/4$<@1F-<:U\,*W*DUZ/_Q *7>K3E&E[++LM]L7.-6Q/F1' M<[U=;D0!-@)DIU%N1 $VHE-MM,J-*,!&E**I(!O168-J66[$WG1$H[2:[?O"YL>19=WW\![RNW_M[/B^Y]K#J[BW>^';SU:J?SJCG@PL63 M;$V8/"?DII=\\ (^."P&[H^RP5>,]3)IKE/^&=/:)_HZ1Z:$?) )&17L6 E+5$LMA& M8(-@M55 .N6)S%FR?K8G]?H91J^V\P1R9;_FT!+AYQVHN[TNX)OUI,EZI-J. MM=I>U[61!;>;J&NA%<\K$QJ-G2B9M\*)ZX)LA=S26K6C-_+6 P<5^OEB*R^G M-ACS%Z4V_'CHJU"9&EOCX2T2X"#)! 4?+\XM)2$*\S3%XQQSTPJ=+_@U,W5U M5PF$RN''?"9G]/3#60Y8O:F"O\ .W0GW#H[T&,\] LDZG.]*^1XB!)@)TWVS M\W,0L6&TN?+<2(>7(E-@$'!UAY2!^ M0##P'1@&$6GQM!BM7S0)5:*4:P%5W*DSD[@[X1P)MH^RON!!3G(A( N>$)=N MC8+9D(-JTV5LL9Z]_+B]OKR_ 88X.KZLGOV!8L"^XVFWFDV M=UO/F.T(Q(6,]:H63I!8-)[B@:J$4XM@)P@X2'[(54HJ)&KV6A3HFJ'*"?.($[2/%H,+ M,3BZDT QN@XFZ#L2,E3-.C(:'X>?Z/=&P\:_A 2LC$E_ POW&#OP+/1R):B. MT:G5J<;$FK(Q^%'B':D/AIA'GYXI4YD'GA_(@M#$2W"ZZFS!]<.%;4 $";P% M=&6G6LSH<094G&&]30)6**Q6B4%8!T\J_9%V;&YC10UL]X3,:_#(I\Y"8=3$ M[!TLB) $]03B3@J[PI,$$QC^Z0=3#!3\'_Y;,KXL7 M->R9O5.92(S;L0T7A#B0^+"?<8QBM%)U2HT:M_C3J?!#-XH Q*RU,9S M@=\QR*.<7CR/LC2'2#O'BBR,9\'<,(P"D_*7L)7BS:MJIW'-&$? E-.?TTE& M#I$%=Q%XX0L.51;SJ&ZNIB(1PCI=EQU/8O!LK+=%R9/\:6']5\(R L[2P>1"HP MU]";=F=P%I^TB?.G8.2GE>Y^.Y ML5!2@1<8.?P'M+CM"I\1L A?G'F$,,Y39 :%<#QQ3R6W$WB?Y[F>A)B%/T>> M%=@8&PKYP7_R@0<1%0]9"'ES[#YPQ29*+2[*CCEL[ _"R/P10PI&%TO M3&TF!.# (Z3C2/"Y!!;F1+AC8FDJI#:G8A%"(5B$,SEF^-R)PB<.H:XM_3H! M><&@>):$':89Q+"OSBQ2#4=3ZT]"5X>%(6Z[%4PDR#O]AF(AMOLP8^JZH*H\ M>(Y+.V$-OH-(P4QI/*)3QT<4.J"R!*W#4UE);A'"C3D>Z#SNC1_ESJ:%\B#^<1Z^CP#GOEENTE.P#H/ MPV4;S)*6DRKCWR9R7%TO0ZQEB/4-1];4K32JC9"\%&L3QF@@A&'W:[66V:^W M3:L/VD_TC5:K;K1K9L/01XE8V]7)]6VO=WG[V]EU[^+KY?6WD]O>Y46_6:MU M:OJAXFPX*?8U>[VJ1I/3E-D1">-0H7%^]NO).47@SBBTW3?TAMDN0)30J&HT M-TV97'$=J&LQ"@'?0>=>(.9P*^I'@GK\(@0C[TI>CK!;UP_>5=%=8[_R)@6S M'"R#*[1^>A7JDJ(9$>AM%G:Y)AL/$%Z20T.Y'CQ +T/;PZ$FOYZ@S@Y#D7"@ MY,FQ#-VLVV+4;]8;PWZ]K@_['=,R^W9;& -=;S?:>FTE2FV<(##=UY/N[>7U M#3S?K.M& =CNI$J >9J<6'%9+J7G01J &MU>8ZK,""QM=)&R^B E^0;(D!$6 M?5DS!"VU.9+DG^&H-C(&0[/?MEJ-?MWHC/K6J-WHURPQM U1 P:R5OBG>?:? MWWJGO5L06;5:H]TY/.\TJUHXIQW"L9#66@)DH<^6(5DVR+/D7QA5_<4%BAJ] M6XO^E8L]U$D/5"1LB;/',5@+"YE>._"TXW]>N-4M.J5483^C MV:)HR\\AT9B-<#"*:Z]N\[]0GP]RZ+>IR0";/LGS!5M6S:@:?]]@!^-U,/_N M<1E90<1L.U\ZBF;-&)GZ$D%RJ:F*J2&9N7#DL,+7'/EB> 1/8W_"SX(E6"*" M\;>_ G?QR]H9\&-+Q/P@O<2A[8DCC++KX(8\BL>:81O5\6*:YG]MN>2U?F87 MMP;31<.+U:LHXKMZE:3>12[?EM8_6I_B9#BZ,L6/^)).]@)2?Y_H45+3S?4] M2JK++O#;$2)F*41*(9*[$#$+($16[YR7A4@I0_*0(288(J40*85(SD+$? 66 MB-&F>H!N-2D/C%I#WTAP=/3FNQ8<9BDX2L&1O^ HOO51"HX?$!R&;E1[%S=O M37*\,5FQR4[V9IADH?WG]/I6LL>]/]K639-\6RM]:C M.W.G3V E+K G ^B F^%83*TWR\/=D_.2A]\Z#W>M"3?DPIXQSNQ/3)9\LQS] MY>QKR=%OG:._8*F5\SX8^OSDM&3HM\[0Y]9 3-X^+U]=GY6\_-9Y^8K;I&;8 M&]K;XNEZR<^OGI^[5#!X9=W)"T0JZK2BO@>6]A7KD#]B+J.->8U*<;!Z%&S) MX9\R4 .5M/67;V<5IYRL'J%/E-SVJM$1TY3\]V2.X":5'4J?D-7AL$A"KS9% MF$UF-JIZ5-%!Y3DAD34K6+B:KNEQ)0?_=[,DR:A(9%UF(^TS,5LFAF0[R7)Y M5W DMB2N)>$WI5Z-'&HRR-* FZM_$UO.BG2D"\N)-EC<.A!&)87S<@L1\$]B = M1=,(*PM'Q%\1@(@";X%/1/@-77>*E8LAX$C8O9Q1(A+E"&H= G?FQ6G":ZC^ M.)&NKJ7":M!%RBI\!)8_"$)LG%HVIM,CUB(^2%5K#!R": P;UE(X7@Q($M:M MWHD9Z).)LAY<[P1F$(#.H5).*T0.(4017E4UXU3NND9SKZBQ/SR-UU9E:915 MEF65Y1NNLHQK*@=V]0W6^U!OVZ8>K]3MXV^U1[5V\UZJZ6/&HG*GIO> MKQI%GS@#T85QLO MAL9C=&VOH[GD)K&2JG'(5L.[Y"5P.)J98: BKVV; MB.5:8;!'3C7S#^6ME0?%7M[ZGH[Q4NO8T6K?2]T"D5A&+2^Z56W;QHR'95=L M*OM9NX!SC&7BO(PVH\2]+E[,.TR^1O3O8#FG3Y^WN\E@$7[ EJ8I6^*D^&S. M J8^A&^/_6/MWQ9VL=!.J]H?%EFK_W/LO*+SLDN>*\_0#R_G ORJ'SE%:(0< M^ BE')#R<)2'(X?EW#J+R6H.MYZBGZ/2HR_,F7D?'OWI!%,GM%//?2C=^?( E>Y\4@8LG8[R9)0G MX[WY\BO #>4Q*(]!X9=S8%]^%>V$NQ*%WY\,A]B>$W-O2V>_/%:O9CFOS]E_ MDUG?+ZQ(,Z(51/[I%JD?!YCZH2?[&K?[Y31[;:4 9JZE &HN+.?A)Y)A$Q^A M:UICZ;=&5X,S%D,2YH=&WM6O%3VS@6 M_E=T=*Z%F21.".QQ"66FI.EL9EO*,NGMW8^R+6,=MN65Y(3<7W_?DYS$";"% M'N7873I3P-+3T]-[G[[W9/GX+^WVN$AY$8F8_3C]])'%*JIR45@6:<$M6N?2 MIFRJRI(7[)/06F89.]4ROA2,];J=@TZO>]CIMMLGQ] UJ@>I8L!ZO> HV._N M]UFW/^CN#P[^QLX_L=TOT]&>DW[_>33]U_G83WO^Y?3C9,1VVD'P2W\4!.^G M[WW'0:?;8U/-"R.M5 7/@F!\ML-V4FO+01#,Y_/.O-]1^C*87@2IS;.#(%/* MB$YLXYV38VK!3\'CD^-<6,ZBE&LC[-N=+],/[2-(6&DS<7(<+'][V5#%BY/C M6,Z8L8M,O-W)N;Z41=NJX;62Y')>HPK83 MGLML,7@SE;DP[$S,V87*>?&FY5OPVP@MDS=#)VWD?P148WE67-LVS^0EE).M M0[_^0;WT<&.2N7#+"546HW-\G1L-#E_]Y&-_SD>?9E._C%&,R3&%X_LX+O=^:3>VS!CTF*_<*U%P4X[["=> MQ$*;%HN$MC)9,)MR._CC>:"!GW]7AE:Z:5FOPR8LY3/!M)A),0?GVE0:]G/% M-="6+=B%*)6V8&+V0>D<5-W^F:F$C7BL!?L12 ,/P8^3(NH,G]#PY^O2_0X[ MY<8E+Y8OV%6AYIE FFMYSVKOSUAATD(A/T([EP7CQ8)5A=65@)5(?BYYPM&< MY7C2DF/Q>(O%=""\BE068A&/@0,)+TE M3%,QECG#L)B%BZ8;7A!#EO5_ S&");) 3"B\ZQBT !>(HULW^F618(MR2N7X M.\JJ&#H1YX;#6\"(I&U=(DR$,$(>*K$5A.KHF:VI@=+8U0@MDJ@R" W"L%U MTQEG3\1-RI),S8VFB3)D*XXB7M,I\9$NM4-FCV;!=!#(60(:/UO@:E7"!(OX=MOQ%E4&B MU^?MWN&N\%;T#F/_Y!\E%3&%1Q3I9\0+#:#YP),M]YXHV9@HP42TSFWX08+R MW&/F^-\II-CR_^&!,W.7[\'1!L+PM"/[K\.@17DHXI6Y_Q!*"*%8S^13C*HT M%( (R#]$+Y 2A=-#)=F:F)KDYL\IP$B=8]9Q;M7$1YT2) 5;C,ID[$Z3I@J- MC"77DA8@?29T=%N0ILI0=G*[RKA4YL@(9T 8A%.=&U2B+))1E7'B4"S+&;'. M.O4) @: [C1?QDM+8=Z0U UB=1=ZHD3<\8H.$V0._-(C=P>G_^ MN3=< ?&9C F%W*B"$]%R P13)470Y#I>P@3 E=P[F5+D;=/2IG&(-\0 M;51BCL^OZP65E<9!'E&@E!Y%2L?. %>378H"F3H#9M$C2MH,)()ZT^,2FT:6 MH-079#X0F=$>$S.>58Y?*&PB25 ^R1D<;FXI@^K4?0^V](^WUT4.AA@(IC.^ M^@I59>^>_SY\SE?2@DK+Y.O%.PN71:O;6;4?8,^0E+\@Z6%(BO>68;H9;CH; MUM6/Z[D%40_@-4JK*HHJ32%MY+ ;.G-E+%KIQ1,TF0AJ?O7O!=CNK0,2X!)L MLR5;FXS3@7 '6CKK%M7*ICUO4F,)VYR*7< .[&>(7?&;:L_E/A&_5A*FNUU1 M%9$[_^Z]G"MN/5?0NP4JH"1 0L JB[7, #80%75\FG3(&>:*L?RX1VW ME)JL;WT?\Y(2OZWLI\R7:.SC%J(I'/< #^ZU8PV6;5L\/>/KF7CEI+,WKRCI);&E>,.C^5"_MK.?O^:7;>+5P2CHH+&H 6576&@^AL.&O>N*E[QI7H W-%$-Z M5;GTX?*Y/=>\'(0@C*OV' [[ZK7JJI^'1F65%4.ZV]U>[O*6M_YIX_LM[ ^Z MKH/?Y<("JPFFCP#)[T 1[T&'@]>O>C]TAV=P31Z"HHY:C+Z;<'3P*)#[#G:? M+@8/LH^@4Q-9J*Q5.,9S\'1>U(;1ZD4"1M?BZ@B.F>?_8GSSQ0F3^S/.TR[Y_XU M,BKB&[':VPI6X K3979])A5S,^&GJVHTY-'5I595$5/EK/1@25*-[^DV.^JB M91^&9+(0[?JYNU%%^V_V-LKHC:;5!X(E3C-M7][P!*7R@,^4C.L@'QUU]@]6 M9.K;N@[(_L-#]R7CR7\!4$L#!!0 ( +&":%>@RJ^^5@@ +@I 8 M8V1R92TR,#(S,#DS,'AE>#,Q9#(N:'1M[5KQ3^.X$OY7_%C=+DAMTU)8<2V+ MM+"@J[0+'.KJ]'YT$J?Q(XESMM/2]]>_;^RT30O^?S- MV,[AO]KMTR+E121B]LOXRV<6JZC*16%9I 6W*)U)F[*Q*DM>L"]":YEE[%C+ M>"(8ZW4[>YU>=[_3;;>/#M'72=U(%0/6ZP4'P6YWM\^Z_4%W=[#WGEU^8=M? MQR<[3OK3QG?MC+K\>?1R=LJQT$O_5/@N#3^).OV.MT>VRL>6&DE:K@ M61"4L2KDVPG[8^CH^:Q] PDJ;B:/#8/'M94,5SX\.8SEEQLXS\6$KYWHBB[95 MY:#?+>T0+0-4;\CXJV6Y:)>HPK83GLML/G@WEKDP[%S,V)7* M>?&NY4OP;826R;NADS;ROP)=8WI6W-@VS^0$G9.N0S__03WU<&V0F7#3"546 MH_+T)I6AM*S?Z^P>!B'L5/X K2)@5.@-M4C\7LVFTD"O3-KY()5Q+ JT>/OF M8+?;'QX&)/VCRXV=V-CK_B)_X M=7$&B=.K)S;P_>9\5NNMJ3%JL>.,RT* =M1,:--BD=!6)G-F4VX'?[_I-\#S MG\K03-$S*OYR3;K;8T9 M*PQ:* 1'] Y(,E[,655870EHBH4@SE8,3K?)RMP0* M$0ECN)Z32,ZO!<9M]&E0%D,9#)D15= 8)!!)C7 -,01P TUBH=DLE5'*3$4? MJ_98.*+NA":02X.P0C#P 5X+4XK(*4C]EE!-Q9CF%,UB%LZ;9GA%#&G6_P/$ M");( CXA]ZY\T )<((YJW:B718(ERBF.XW>453'ZA)\;!F\!(Y*6=0DW$<(( M>4C#EA"JO69 M><2X%LZA<) ,,T&&9P(H"C-I4FI!8CG8AQB(GF-IHDR9"NV(E[3*O&=+K9#6 MH]BP;3@R%D"&]];I#=+@ AG\1RSYJRJ#1*_/V[W];>&UZ.W'_LD_2LI@"H\H MZI\1+S2 YAU/NCQXH&1MH 0#T3PWX0<)BG-/&>/_HI!BB__]/:?F-M^!H0V$ M86E']M^&08OB4,0K\_ F%!!"L1K)AQA5:70 (B#[$+U 2A2N'TK)5L34)#>_ M20%&ZABS\G.K)CZJE" IZ&)4)F.WE315:&0LN98T >DCH:/;@GJJ#$4GMZJ, M"V6.C+ !A$+8TKE&)=(B&549)P[%M)P2JRB'%CYF-D,]?H6"!$%S:"_B9Z.U M34^O ;+>AKHM)?7T@@$:;@+TP2QR"Z4%EI[.+A!0KI4:1T M[!1P.=E$%(C4&3"+&E'28B 1Y)L>EU@TL@2EOB+SDAZ1X9^&FV^ZFO6&=_;B:.Q#U"%ZCL*JBJ-+DTD8, MN]5GKHQ%*9TZH2<3H9O?_;D V[ZS00)<@FTV9&N5L3L0;D-+>]VB6NJTXS5* MN5D&>^(IAV,1.P)WEJC)=8YMZ[7(ZMWMAGSK3QKG69'[)'<^CW&"_U5TAT0T@SAB6'3=#P MRJI%@;]\="5K5Y2D]OH%)94T[ANWF$/!ARU_I467IWJA9SU^ST_=QLN)4]!! M8E$#R*JR[G&_V^GM_=0T63WVPGR-*]!&Y^1&.JUP:; M??-:=5G/0Z.RRHHAW>UNSGAQRUM_VOAA<_N;SFMOKW/PE_198#6!]6F ^0.X MXA-X]]=W@.Z^0AN.J@Q>CM"<<+3P*\'Z#W\7SP*/UJ -6D%BIK53[H M=2A^N!,_]J;K_IYW%H$)-JZ85Y-Z4N2\5#>>\US\&4?2*OR_>_$?[<$QO;WT M72Y\5C5/4BD2=K;,PB[\/I3]P[SEF?[%>VO[TI\QPU&W7+:SX;+ 9:V+H/M" MTNEF'I N4]601]<3K:HBIK1:Z<&"KAIOVJU7U+G,+A3)P#'M^KF[EF+[M_G6 M?2 3Y6,:S\?''1V5\3JR[H.R_Z51/>.X]'_ %!+ M P04 " "Q@FA7#]2LFCT& !T'@ & &-DT9_5/;-O1?>4NO*]S%7TE@J1.X"R%LX2)#T]/2^/Z3A3X8QR6*2!32$-]Z[MQ#R8)'23$(@ M*)$XNV0R!H_G.RELNEN>R:7,PM[\**99KTK(3S@IJA M#%N'0S6#GY2$A\.42@)!3$1!Y4'KTCLQ^@@AF4SHX="JOTM8GX>KPV'(KJ"0 MJX0>M%(BYBPS),_=KIW+ >ZT<'D+YMI8LE#&KF/;+PLN8(F1+(KJG WL 8))<+UN8P'VP? M2VD!9W0)%SPEV:MV.8/?!14L>C70T 7[DR)J9$_2:VF0A,T1N:)U4/+O5JS[ M&X](FE M^24:G3Y8E); MZ9$SV,6D!2=>'K*BD*Q@;\*,L34"3$5%(EO MTEFR5).)C+3A Q&"9G!DPJ^(E ID;QPS&B%Z/$ZE IA&$0NH: -^*#F"Y)"N MX%/&ETC?G+8A7XAB05#1N-+PYTJVVI\!^2$ASU5.;X+70,IVD5K-)Q$^R6AA M3*\3NH)1H)6@;+>-ZT2Z3V@E][%?2?R$@L\%BO.@9;=0;DE2Y>OUN,A)4(UQ MA\"_L#ZFRLM])*#:51-CR; )>*7T$9"D8D#S@F7%8!DS20UU G5128+@U)TX M'T:.55&#M87DJ=N8467.'8)N'>XXNUIB6WP](PJ5/5:!(%HD&!4"=/5$N>#: M+07]8\$$5:5NH0SUQNQW"(8" <[>3KB[-NX;)UX[<&7ASNMN;Z!<^T8FEK(, M2QO40\EAHY;4!G$+XWJ*83S(I&MHH!NO@/I/SV^Y2"53C5R=]K_+/+3+=+X' MEV$99KV4:#_ +"L)RS#NLS([U?Y$F$JSN:"%,K4UP!5G S!7VUD_1@K Y\B:"[X%5I M+2_598&O@FUE2XAD&R9:B(P5\0V"?U(P"6!H/$AE%,$BQQE%)BVD^8!2_.J* M0O7P6@L'+64'K3I@5EC*N&D$/$E(7E"W_J=)QSX>'I==@^K]E5.B4C9MMVG, MY;V"FFE<$^BX6Y]:87-*KNX.L;P.I;V^:7=>-J6Q%;4:5Q4-Y!P11@E?UA*J MQX:*TJXO*/ED+%$"?WO]L5XG?L&3A:2#.HYMLOC82F\ EL+K-'5=W@55GU]. M7C>2-5_WO@/!WHNU7[X/H_F,-YUH-JN4^WO&(YCD,<9EMVPUSU ZJ@V%?MF MWE9@W-OV'H'THY7[[T@L;:@*DU4YX^37@!IE(;RP]<_3\F 5UN>]]U:9\E#6 M\XQ5>492^C7*5,[XC36Y$=N;?016MCK<(,QMJFZ$_!])XYYZ';F7RI^?5N^X M*0/X8;5;)I3_AG9WS@7#CC/'KN8S%>_>KN&ZL2SK@&?2/31+DWA=OOLD^#07 M?)&%JG'@PJV#9^.5<'.A*J\Z2$B"/9A1C>MPVWR=K&::CY/;SYXYF5.C+,1( MA!V_2ZXX"RN;Z/?-3F\=Y,LY6YM^^9RJWV&5X,S)D,BYH=&WM67M3VS@0 M_RI[Z;2%F?B1!VWJ!&9""%-F6D*)F;O^*5MRK*MBN;)"R'WZ6_F1.&GIW5%* M:7L,)$A:2?O^[=J#WRQKG,0D"1F%U_[;-T!EN)BS1$.H&-$XN^0Z!E^F*4G@ M+5.*"P''BM,9 VBY=M=NN0>V:UE' SQK5&Z2B0>MEM-SVFZ[ V['<]M>]R5< MO(6]*W^TGU.?3$;^^XMQ<>W%U?&;LQ$T+,?YO3-RG!/_I%CHVFX+?$62C&LN M$R(<9WS>@$:L=>HYSG*YM)<=6ZJ9XU\ZL9Z+KB.DS)A--6T<#-*__4ZB&%YEJPHX%3?1>T@:2KHP'EUY#IE6"'C3E1,YY86J9> MQTUU'W!S.]-J7R03;45DSL7*>^[S.C8;^V>0<(^-R>C4\]\&?/+ VO\1CJP=7]M0>V3 = MCW(^6YT#M_F(.!Q.87@RN?#')X]4A97B7KDO8'(*_NLQ3(>7Q\/S\=2:_/%F M_!Z&(]^LM%WW>P;2]XJ;/Q>9YM%JF[.S!$*9)"PT>:_ )ATS>+<@"J40*[AD MJ50:9 0C0A6#UZALS+A9$\Z2T(8]0VVX;[O]D9PCJ*WR4:N_CZ %IU+-$=6L M=Q!)E9^<(IN2 DLHH\^>M%ZX_2E+-9L'3!7#CML$@W+%B&00<5'!ICE@RL*% MPC2-:B )A?$-(E""X(FWSWF6&3'PUU!2A$Z(F6+(?)W/0J2*312D"<>"\(0A M#LLE4RC;*.8L@E.>())S(F 213QDJ@GX890(6L)\!1\2N43F9JP)Z4)E"X)6 MQI5:,)>*S8,94!A"96H O4Y>$1G'159S(8D*2,(R:W(CV J&86X!X[A-7"?: M>T 7N8OS:A((!H%4E*G#AMM O0E1@O5ZG*4D+,>X0^$?K:XI0;F'#)2[*F8< M3>N$U\8>(1&E +DL6%/TES'7S#(W, ^-I A.W7KF_>BQK&BPL-!R[M5F3(US MBZ(;1WNM_5QC.W(](@Z-/Y99(%H(3 DAQKDP\;>.2<4^+KABIL[-C*-NW'Z/ M8!Y0T#K8H_MKY]Y$\#IZ2P]OO>IT^R:N-SIQC& M/$%XFI/<9Q$.M0$#BK-0]WW"#1ZFBF7&S9MFF6#OAMN0&\0(7$C1[[-FOBM: M8P<>2/.V(L!G2%DN&9Z7VR84)FB4!+' MM(/)0[,$N4#5Y[UUF7\H!*LM-(T1<0.&I*F2UQPK#@.W-47G%EF:#CPP2:RT M.QZR2Q,M5,*S>'/ OZE"%' T-'(91;!(<<:PR3)MWZ,6O]J8IC'.K7#8,'UU MHTINY2E%CK-"*01),^95_]3Y>(&7QT4I;AIJ$T!HE.UVW=VDI;)9-S.UWCO/ MD=6MY6FM0JK;TZ<EZW9[OMIW5M[&286O]?.USB@9&0RTI#U=@R&=4+%",? MK"5JX!^?*:S729!)L="L7^6<;1&+1QSEYY=3_48V^U7W9Q7MY0]JMCPM;V/Z MW7WS&V2"$\R,7M%!G:-V3'<%O:*O^APR]^,SZ2U/?^"7-6Z!)#^'SIFC73RR\_WD+ M5_U740 \DL*]7I/$Z\HY(.&'F9*+A)J:72JO2IRUMU[;"V5=U49&!"8RJQQ7 MJ;;^MJV[ZP1?S+FYZQ>O!_/W MC4=_ U!+ 0(4 Q0 ( +&":%<"G5+?GQ0 &7; 1 " M 0 !C9')E+3(P,C,P.3,P+GAS9%!+ 0(4 Q0 ( +&":%>^ RD 3!0 M -0S 0 5 " &UL4$L! A0#% @ L8)H5SA_,J^.=@ M2(@' !4 ( !&ET &-D8UXE )@;!@ 5 " =O3 !C M9')E+3(P,C,P.3,P7W!R92YX;6Q02P$"% ,4 " "Q@FA7)UN_:%5\ @"M M-" %0 @ 'P) $ 8V1R92TR,#(S,#DS,'@Q,'$N:'1M4$L! M A0#% @ L8)H5WR* VQ9" GBD !@ ( !>*$# &-D M@RJ^^5@@ M +@I 8 " 0>J P!C9')E+3(P,C,P.3,P>&5X,S%D,BYH M=&U02P$"% ,4 " "Q@FA7#]2LFCT& !T'@ & @ &3 ML@, 8V1R92TR,#(S,#DS,'AE>#,R9#$N:'1M4$L! A0#% @ L8)H5UMK M.9P%!@ 1!T !@ ( !!KD# &-D