0001558370-22-013321.txt : 20220811 0001558370-22-013321.hdr.sgml : 20220811 20220811163352 ACCESSION NUMBER: 0001558370-22-013321 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 85 CONFORMED PERIOD OF REPORT: 20220630 FILED AS OF DATE: 20220811 DATE AS OF CHANGE: 20220811 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: 221156426 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-20220630x10q.htm 10-Q
0001860543--12-312022Q2false003703227150P3Y343833503438335012300000132000000001860543us-gaap:CommonStockMember2022-01-012022-03-310001860543us-gaap:CommonStockMember2022-04-012022-06-3000018605432021-07-012021-07-310001860543us-gaap:RetainedEarningsMember2022-06-300001860543us-gaap:AdditionalPaidInCapitalMember2022-06-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-06-300001860543us-gaap:RetainedEarningsMember2022-03-310001860543us-gaap:AdditionalPaidInCapitalMember2022-03-310001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-03-310001860543us-gaap:RetainedEarningsMember2021-12-310001860543us-gaap:AdditionalPaidInCapitalMember2021-12-310001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-12-310001860543us-gaap:RetainedEarningsMember2021-06-300001860543us-gaap:AdditionalPaidInCapitalMember2021-06-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-06-300001860543us-gaap:RetainedEarningsMember2021-03-310001860543us-gaap:AdditionalPaidInCapitalMember2021-03-310001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-03-310001860543us-gaap:RetainedEarningsMember2020-12-310001860543us-gaap:AdditionalPaidInCapitalMember2020-12-310001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2020-12-310001860543cdre:InsurancePremiumFinancingMember2022-06-300001860543cdre:CurrentPortionOfTermLoanMember2022-06-300001860543cdre:InsurancePremiumFinancingMember2021-12-310001860543cdre:CurrentPortionOfTermLoanMember2021-12-310001860543us-gaap:OverAllotmentOptionMember2022-06-140001860543cdre:SecondaryOfferingMember2022-06-090001860543us-gaap:RestrictedStockMembercdre:StockIncentivePlan2021Member2022-03-092022-03-090001860543us-gaap:EmployeeStockOptionMembercdre:StockIncentivePlan2021Member2022-03-092022-03-0900018605432023-07-012022-06-3000018605432022-07-012022-06-300001860543us-gaap:NonUsMember2022-04-012022-06-300001860543country:US2022-04-012022-06-300001860543cdre:U.s.stateAndLocalAgenciesMember2022-04-012022-06-300001860543cdre:U.s.FederalAgenciesMember2022-04-012022-06-300001860543cdre:OtherMember2022-04-012022-06-300001860543cdre:InternationalMember2022-04-012022-06-300001860543cdre:CommercialMember2022-04-012022-06-300001860543us-gaap:NonUsMember2022-01-012022-06-300001860543country:US2022-01-012022-06-300001860543cdre:U.s.stateAndLocalAgenciesMember2022-01-012022-06-300001860543cdre:U.s.FederalAgenciesMember2022-01-012022-06-300001860543cdre:OtherMember2022-01-012022-06-300001860543cdre:InternationalMember2022-01-012022-06-300001860543cdre:CommercialMember2022-01-012022-06-300001860543us-gaap:NonUsMember2021-04-012021-06-300001860543country:US2021-04-012021-06-300001860543cdre:U.s.stateAndLocalAgenciesMember2021-04-012021-06-300001860543cdre:U.s.FederalAgenciesMember2021-04-012021-06-300001860543cdre:OtherMember2021-04-012021-06-300001860543cdre:InternationalMember2021-04-012021-06-300001860543cdre:CommercialMember2021-04-012021-06-300001860543us-gaap:NonUsMember2021-01-012021-06-300001860543country:US2021-01-012021-06-300001860543cdre:U.s.stateAndLocalAgenciesMember2021-01-012021-06-300001860543cdre:U.s.FederalAgenciesMember2021-01-012021-06-300001860543cdre:OtherMember2021-01-012021-06-300001860543cdre:InternationalMember2021-01-012021-06-300001860543cdre:CommercialMember2021-01-012021-06-3000018605432021-03-310001860543cdre:KandersCompanyIncMember2022-06-092022-06-090001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-04-012022-06-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-03-310001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-04-012021-06-300001860543us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-01-012021-03-310001860543us-gaap:RetainedEarningsMember2021-04-012021-06-300001860543us-gaap:RetainedEarningsMember2021-01-012021-03-3100018605432021-01-012021-03-3100018605432021-09-012021-09-300001860543srt:MinimumMembercdre:CanadianCreditFacilityMember2022-01-012022-06-300001860543srt:MaximumMembercdre:CanadianCreditFacilityMember2022-01-012022-06-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:CanadianCreditFacilityMember2021-12-310001860543us-gaap:LetterOfCreditMembercdre:NewCreditAgreementAugust2021Member2022-06-300001860543us-gaap:TradeNamesMember2022-06-300001860543us-gaap:TradeNamesMember2021-12-310001860543cdre:RadarLeatherDivisionS.r.lMembercdre:ProductsMember2022-04-012022-06-300001860543cdre:RadarLeatherDivisionS.r.lMember2022-04-012022-06-300001860543cdre:ProductsMember2022-04-012022-06-300001860543cdre:ProductsMember2022-01-012022-03-310001860543cdre:CyalumeAcquisitionMembercdre:ProductsMember2022-04-012022-06-300001860543cdre:RadarLeatherDivisionS.r.lMembercdre:ProductsMember2022-01-012022-03-310001860543cdre:RadarLeatherDivisionS.r.lMember2022-01-012022-03-310001860543cdre:ProductsMember2022-06-300001860543cdre:DistributionServicesMember2022-06-300001860543cdre:ProductsMember2022-03-310001860543cdre:DistributionServicesMember2022-03-3100018605432022-03-310001860543cdre:ProductsMember2021-12-310001860543cdre:DistributionServicesMember2021-12-310001860543us-gaap:TradeNamesMember2022-01-012022-06-300001860543us-gaap:TechnologyBasedIntangibleAssetsMember2022-01-012022-06-300001860543us-gaap:NoncompeteAgreementsMember2022-01-012022-06-300001860543us-gaap:CustomerRelationshipsMember2022-01-012022-06-300001860543us-gaap:TradeNamesMember2021-01-012021-12-310001860543us-gaap:TechnologyBasedIntangibleAssetsMember2021-01-012021-12-310001860543us-gaap:NoncompeteAgreementsMember2021-01-012021-12-310001860543us-gaap:CustomerRelationshipsMember2021-01-012021-12-310001860543cdre:CyalumeAcquisitionMemberus-gaap:TrademarksMember2022-05-042022-05-040001860543us-gaap:TradeNamesMember2022-06-300001860543us-gaap:TechnologyBasedIntangibleAssetsMember2022-06-300001860543us-gaap:NoncompeteAgreementsMember2022-06-300001860543us-gaap:CustomerRelationshipsMember2022-06-300001860543us-gaap:TradeNamesMember2021-12-310001860543us-gaap:TechnologyBasedIntangibleAssetsMember2021-12-310001860543us-gaap:NoncompeteAgreementsMember2021-12-310001860543us-gaap:CustomerRelationshipsMember2021-12-310001860543us-gaap:RetainedEarningsMember2022-04-012022-06-300001860543us-gaap:RetainedEarningsMember2022-01-012022-03-310001860543us-gaap:AccruedLiabilitiesMember2021-12-310001860543us-gaap:InterestRateSwapMember2022-06-300001860543us-gaap:OtherCurrentAssetsMember2022-06-300001860543us-gaap:OtherAssetsMember2022-06-300001860543us-gaap:OtherAssetsMember2021-12-310001860543cdre:TermLoanMembercdre:NewCreditAgreementAugust2021Member2022-01-012022-06-300001860543us-gaap:RevolvingCreditFacilityMembercdre:NewCreditAgreementAugust2021Member2022-06-300001860543cdre:TermLoanMember2022-06-300001860543cdre:OtherLongTermDebtMember2022-06-300001860543us-gaap:RevolvingCreditFacilityMembercdre:NewCreditAgreementAugust2021Member2021-12-310001860543cdre:TermLoanMember2021-12-310001860543cdre:TermLoanMembercdre:NewCreditAgreementAugust2021Member2021-08-200001860543srt:MinimumMembercdre:NewCreditAgreementAugust2021Memberus-gaap:LondonInterbankOfferedRateLIBORMember2022-01-012022-06-300001860543srt:MinimumMembercdre:NewCreditAgreementAugust2021Memberus-gaap:BaseRateMember2022-01-012022-06-300001860543srt:MinimumMembercdre:CanadianCreditFacilityMemberus-gaap:LondonInterbankOfferedRateLIBORMember2022-01-012022-06-300001860543srt:MinimumMembercdre:CanadianCreditFacilityMemberus-gaap:BaseRateMember2022-01-012022-06-300001860543srt:MaximumMembercdre:NewCreditAgreementAugust2021Memberus-gaap:LondonInterbankOfferedRateLIBORMember2022-01-012022-06-300001860543srt:MaximumMembercdre:NewCreditAgreementAugust2021Memberus-gaap:BaseRateMember2022-01-012022-06-300001860543srt:MaximumMembercdre:CanadianCreditFacilityMemberus-gaap:LondonInterbankOfferedRateLIBORMember2022-01-012022-06-300001860543srt:MaximumMembercdre:CanadianCreditFacilityMemberus-gaap:BaseRateMember2022-01-012022-06-300001860543cdre:KandersCompanyIncMember2020-01-012020-06-300001860543us-gaap:OperatingSegmentsMembercdre:ProductsMember2022-01-012022-06-300001860543us-gaap:OperatingSegmentsMembercdre:DistributionServicesMember2022-01-012022-06-300001860543us-gaap:MaterialReconcilingItemsMember2022-01-012022-06-300001860543us-gaap:OperatingSegmentsMembercdre:ProductsMember2021-01-012021-06-300001860543us-gaap:OperatingSegmentsMembercdre:DistributionServicesMember2021-01-012021-06-300001860543us-gaap:MaterialReconcilingItemsMember2021-01-012021-06-300001860543us-gaap:CommonStockMember2022-06-300001860543us-gaap:CommonStockMember2022-03-310001860543us-gaap:CommonStockMember2021-12-310001860543us-gaap:CommonStockMember2021-06-300001860543us-gaap:CommonStockMember2021-03-310001860543us-gaap:CommonStockMember2020-12-3100018605432021-06-3000018605432020-12-310001860543cdre:CyalumeAcquisitionMember2022-05-042022-05-040001860543cdre:RadarLeatherDivisionS.r.lMember2022-01-112022-01-110001860543cdre:CyalumeAcquisitionMember2022-04-012022-06-300001860543cdre:CyalumeAcquisitionMember2022-01-012022-06-300001860543us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMembercdre:DaventryUkFacilityMember2022-06-300001860543us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel2Memberus-gaap:EstimateOfFairValueFairValueDisclosureMemberus-gaap:FairValueMeasurementsRecurringMember2022-06-300001860543us-gaap:InterestRateSwapMemberus-gaap:CarryingReportedAmountFairValueDisclosureMemberus-gaap:FairValueMeasurementsRecurringMember2022-06-300001860543us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel2Memberus-gaap:EstimateOfFairValueFairValueDisclosureMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001860543us-gaap:InterestRateSwapMemberus-gaap:CarryingReportedAmountFairValueDisclosureMemberus-gaap:FairValueMeasurementsRecurringMember2021-12-310001860543us-gaap:RestrictedStockMember2022-04-012022-06-300001860543us-gaap:AdditionalPaidInCapitalMember2022-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-1100018605432022-08-0800018605432022-04-012022-06-3000018605432021-04-012021-06-300001860543us-gaap:OverAllotmentOptionMember2022-06-142022-06-140001860543cdre:SecondaryOfferingMember2022-06-092022-06-090001860543srt:MinimumMembercdre:NewCreditAgreementAugust2021Member2022-06-300001860543srt:MaximumMembercdre:NewCreditAgreementAugust2021Member2022-06-3000018605432022-04-182022-04-1800018605432021-01-012021-06-300001860543srt:MinimumMemberus-gaap:AccountingStandardsUpdate201602Member2022-01-010001860543srt:MaximumMemberus-gaap:AccountingStandardsUpdate201602Member2022-01-0100018605432022-06-3000018605432021-12-310001860543srt:MaximumMembercdre:NewCreditAgreementAugust2021Member2022-10-012022-10-010001860543us-gaap:RevolvingCreditFacilityMembercdre:CanadianCreditFacilityMember2022-06-300001860543cdre:NewCreditAgreementAugust2021Member2021-10-012021-12-310001860543cdre:LongTermIncentivePlanMember2021-03-312021-03-310001860543cdre:LongTermIncentivePlanMember2022-04-012022-06-300001860543cdre:LongTermIncentivePlanMember2022-01-012022-06-300001860543cdre:LongTermIncentivePlanMember2021-04-012021-06-300001860543cdre:LongTermIncentivePlanMember2021-01-012021-06-300001860543cdre:ExecutiveCompensationPlanMember2022-01-012022-06-300001860543cdre:ExecutiveCompensationPlanMember2022-03-180001860543cdre:ExecutiveCompensationPlanMember2022-03-090001860543cdre:CyalumeAcquisitionMember2022-05-040001860543cdre:RadarLeatherDivisionS.r.lMember2022-01-110001860543cdre:RadarLeatherDivisionS.r.lMember2022-01-012022-06-3000018605432022-01-012022-06-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: June 30, 2022

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 August 8, 2022, there were 37,332,271 shares of common stock, par value $0.0001, outstanding.

INDEX

CADRE HOLDINGS, INC.

PART I

FINANCIAL INFORMATION

Page

Item 1.

Financial Statements (Unaudited)

Consolidated Balance Sheets – June 30, 2022 and December 31, 2021

5

Consolidated Statements of Operations and Comprehensive Income (Loss) – Three and six months ended June 30, 2022 and 2021

6

Consolidated Statements of Cash Flows – Six months ended June 30, 2022 and 2021

7

Consolidated Statements of Shareholders’ Equity – Three and six months ended June 30, 2022 and 2021

8

Notes to Consolidated Financial Statements

9

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

39

PART II

OTHER INFORMATION

Item 1.

Legal Proceedings

40

Item 1A.

Risk Factors

40

Item 6.

Exhibits

40

Signature Page

41

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 markets 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 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 political, 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; and
the increased expenses associated with being a public company.

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”). The following information should be read in conjunction with the 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.

CONSOLIDATED BALANCE SHEETS

(Unaudited)

(In thousands, except share and per share amounts)

June 30, 2022

    

December 31, 2021

Assets

 

  

 

  

Current assets

 

  

 

  

Cash and cash equivalents

$

28,862

$

33,857

Accounts receivable, net of allowance for doubtful accounts of $817 and $645, respectively

 

56,521

 

48,344

Inventories

 

76,630

 

63,978

Prepaid expenses

 

6,932

 

10,353

Other current assets

 

5,956

 

3,171

Assets held for sale

 

251

 

278

Total current assets

 

175,152

 

159,981

Property and equipment, net of accumulated depreciation and amortization of $40,111 and $37,171, respectively

 

46,997

 

33,053

Deferred tax assets, net

 

8,133

 

7,059

Intangible assets, net

 

55,177

 

42,415

Goodwill

 

78,027

 

66,262

Other assets

 

5,990

 

3,026

Total assets

$

369,476

$

311,796

Liabilities, Mezzanine Equity and Shareholders' Equity

 

  

 

  

Current liabilities

 

  

 

  

Accounts payable

$

29,145

$

19,328

Accrued liabilities

 

35,896

 

40,736

Income tax payable

 

918

 

1,255

Liabilities held for sale

106

128

Current portion of long-term debt

 

10,321

 

13,174

Total current liabilities

 

76,386

 

74,621

Long-term debt

 

142,244

 

146,516

Deferred tax liabilities

 

3,589

 

1,297

Other liabilities

 

959

 

722

Total liabilities

 

223,178

 

223,156

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 June 30, 2022 and December 31, 2021)

 

 

Shareholders' equity

 

 

  

Common stock ($0.0001 par value, 190,000,000 shares authorized, 37,032,271 and 34,383,350 shares issued and outstanding as of June 30, 2022 and December 31, 2021, respectively)

 

4

 

3

Additional paid-in capital

 

194,704

 

127,606

Accumulated other comprehensive loss

 

(105)

 

(1,917)

Accumulated deficit

 

(48,305)

 

(37,052)

Total shareholders’ equity

 

146,298

 

88,640

Total liabilities, mezzanine equity and shareholders' equity

$

369,476

$

311,796

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

5

CADRE HOLDINGS, INC.

CONSOLIDATED STATEMENTS OF OPERATIONS AND

COMPREHENSIVE INCOME (LOSS)

(Unaudited)

(In thousands, except share and per share amounts)

Three Months Ended

Six Months Ended

June 30, 

June 30, 

    

2022

    

2021

    

2022

    

2021

Net sales

$

118,232

$

114,561

$

222,638

$

225,097

Cost of goods sold

 

75,011

 

66,333

 

139,228

 

132,910

Gross profit

 

43,221

 

48,228

 

83,410

 

92,187

Operating expenses

 

 

  

 

  

 

  

Selling, general and administrative

 

32,749

 

31,444

 

86,699

 

59,495

Restructuring and transaction costs

 

1,203

 

1,219

 

1,802

 

1,540

Related party expense

 

1,112

 

142

 

1,234

 

295

Total operating expenses

 

35,064

 

32,805

 

89,735

 

61,330

Operating income (loss)

 

8,157

 

15,423

 

(6,325)

 

30,857

Other expense

 

  

 

  

 

  

 

  

Interest expense

 

(1,439)

 

(5,621)

 

(2,929)

 

(10,665)

Other expense, net

 

(756)

 

(485)

 

(961)

 

(529)

Total other expense, net

 

(2,195)

 

(6,106)

 

(3,890)

 

(11,194)

Income (loss) before provision for income taxes

 

5,962

 

9,317

 

(10,215)

 

19,663

(Provision) benefit for income taxes

 

(1,517)

 

(2,502)

 

4,495

 

(5,984)

Net income (loss)

$

4,445

$

6,815

$

(5,720)

$

13,679

Net income (loss) per share:

 

  

 

  

 

  

 

  

Basic

$

0.13

$

0.25

$

(0.16)

$

0.50

Diluted

$

0.12

$

0.25

$

(0.16)

$

0.50

Weighted average shares outstanding:

 

  

 

  

 

  

 

  

Basic

 

35,320,314

 

27,483,350

 

34,888,703

 

27,483,350

Diluted

 

35,688,620

 

27,483,350

 

34,888,703

 

27,483,350

Net income (loss)

$

4,445

$

6,815

$

(5,720)

$

13,679

Other comprehensive (loss) income:

 

  

 

  

 

  

 

  

Unrealized holding gains, net of tax(1)

987

4,064

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

15

146

Total unrealized gains on interest rate swaps, net of tax

1,002

4,210

Foreign currency translation adjustments, net of tax(3)

 

(2,038)

 

254

 

(2,398)

 

538

Other comprehensive (loss) income

(1,036)

254

1,812

538

Comprehensive income (loss), net of tax

$

3,409

$

7,069

$

(3,908)

$

14,217

(1) Net of income tax expense of $329 and $1,355 for the three and six months ended June 30, 2022, respectively.

(2) Amounts reclassified to net income (loss) relate to gains on interest rate swaps and are included in Interest expense above. Amounts are net of income tax expense of $5 and $49 for the three and six months ended June 30, 2022, respectively.

(3) Net of income tax benefit of $376 and $94 for the three months ended June 30, 2022 and 2021, respectively, and $394 and income tax expense of $187 for the six months ended June 30, 2022 and 2021, respectively.

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

6

CADRE HOLDINGS, INC.

CONSOLIDATED STATEMENTS OF CASH FLOWS

(Unaudited)

(In thousands)

Six Months Ended June 30, 

    

2022

    

2021

Cash Flows From Operating Activities:

 

  

 

  

Net (loss) income

$

(5,720)

$

13,679

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

 

  

 

  

Depreciation and amortization

 

7,380

 

7,020

Amortization of original issue discount and debt issue costs

 

367

 

2,029

Amortization of inventory step-up

1,344

Deferred income taxes

 

(4,594)

 

4,607

Stock-based compensation

26,327

Provision for (recoveries from) losses on accounts receivable

 

240

 

(308)

Foreign exchange loss

 

1,107

 

(267)

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

 

 

  

Accounts receivable

 

(3,243)

 

(2,429)

Inventories

 

(1,461)

 

(7,124)

Prepaid expenses and other assets

 

3,616

 

2,292

Accounts payable and other liabilities

 

(345)

 

9,208

Net cash provided by operating activities

 

25,018

 

28,707

Cash Flows From Investing Activities:

 

  

 

  

Purchase of property and equipment

 

(2,473)

 

(1,506)

Business acquisitions, net of cash acquired

 

(55,039)

 

Net cash used in investing activities

 

(57,512)

 

(1,506)

Cash Flows From Financing Activities:

 

  

 

  

Proceeds from revolving credit facilities

 

48,000

 

176,548

Principal payments on revolving credit facilities

 

(48,000)

 

(176,548)

Principal payments on term loans

 

(5,009)

 

(13,687)

Principal payments on insurance premium financing

 

(2,853)

 

(1,225)

Payment of capital leases

 

(22)

 

(21)

Taxes paid in connection with employee stock transactions

(6,216)

Proceeds from secondary offering, net of underwriter discounts

49,703

Deferred offering costs

(2,715)

Dividends distributed

 

(5,533)

 

Net cash provided by (used in) financing activities

 

27,355

 

(14,933)

Effect of foreign exchange rates on cash and cash equivalents

 

144

 

42

Change in cash and cash equivalents

 

(4,995)

 

12,310

Cash and cash equivalents, beginning of period

 

33,857

 

2,873

Cash and cash equivalents, end of period

$

28,862

$

15,183

Supplemental Disclosure of Cash Flows Information:

Cash paid for income taxes, net

$

241

$

473

Cash paid for interest

$

2,330

$

8,524

Supplemental Disclosure of Non-Cash Investing and Financing Activities:

Accruals and accounts payable for capital expenditures

$

17

$

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

7

CADRE HOLDINGS, INC.

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 (Loss)

    

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

(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

 

 

 

(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

Additional 

Common Stock

Paid-In 

Accumulated Other 

Accumulated 

Shareholders' 

    

Shares

    

Amount

    

Capital

    

Comprehensive Loss

    

Deficit

    

Equity

Balance, December 31, 2020

 

27,483,350

$

3

$

48,670

$

(2,860)

$

(36,962)

$

8,851

Net income

 

 

 

 

 

6,864

 

6,864

Foreign currency translation adjustments

 

 

 

 

284

 

 

284

Balance, March 31, 2021

 

27,483,350

$

3

$

48,670

$

(2,576)

$

(30,098)

$

15,999

Net income

 

 

 

 

 

6,815

 

6,815

Foreign currency translation adjustments

 

 

 

 

254

 

 

254

Balance, June 30, 2021

 

27,483,350

$

3

$

48,670

$

(2,322)

$

(23,283)

$

23,068

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

8

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS

(Unaudited)

(in thousands, except share and per share amounts)

1.    SIGNIFICANT ACCOUNTING POLICIES

Nature of Operations

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 and Basis of Presentation

The accompanying consolidated financial statements of the Company have been prepared in accordance with accounting principles generally accepted in the United States ("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 interim consolidated 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 interim consolidated 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 transactions have been eliminated in consolidation.

Stock Split

In July 2021, the Company effected a 50-for-1 stock split of its common stock and preferred stock. All share and per share information has been retroactively adjusted to reflect the stock split for all periods presented.

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 may 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 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.

9

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

Use of Estimates

The preparation of these 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.

The presentation of revenue by channel previously reported in the notes to the consolidated financial statements has been reclassified to conform to the current financial statement presentation.

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:

June 30, 2022

December 31, 2021

Carrying 

Fair Value

Carrying 

Fair Value

    

amount

    

Level 1

    

Level 2

    

Level 3

    

amount

    

Level 1

    

Level 2

    

Level 3

Assets:

 

  

 

  

 

  

 

  

 

  

 

  

 

  

 

  

Interest rate swap (Note 6)

$

6,830

$

$

6,830

$

$

1,607

$

$

1,607

$

Liabilities:

Interest rate swap (Note 6)

$

$

$

$

$

389

$

$

389

$

There were no transfers of assets or liabilities between levels during the six months ended June 30, 2022 and 2021.

The carrying value of our long-term debt obligations approximates the fair value, as the long-term debt was entered into recently and contains a floating interest rate component.

10

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

Goodwill and Other Intangible Assets

The Company tests goodwill and intangible assets determined to have indefinite useful lives for impairment annually, or more frequently if events or circumstances indicate that assets might be impaired. The Company performs these annual impairment tests as of October 31st each year.

In evaluating goodwill for impairment, qualitative factors are considered to determine whether it is more likely than not that the fair value of a reporting unit is less than its carrying amount. Some of these qualitative factors may include macroeconomic conditions, industry and market considerations, a change in financial performance, or entity-specific events. If, through this qualitative assessment, the conclusion is made that it is more likely than not that a reporting unit’s fair value is less than its carrying amount, the Company performs a two-step goodwill impairment test. The first step involves a comparison of the fair value of a reporting unit to its carrying value. If the carrying amount of the reporting unit exceeds its fair value, the second step of the process is performed, which compares the implied value of the reporting unit goodwill with the carrying value of the goodwill of that reporting unit. If the carrying value of the goodwill of a reporting unit exceeds the implied fair value of that goodwill, an impairment loss is recognized in an amount equal to that excess.

The Company determines the fair value of its reporting units based on a combination of the income approach and market approach, weighted based on the circumstances. Both values are discounted using a rate that reflects the Company’s best estimate of the weighted average cost of capital of a market participant and is adjusted for appropriate risk factors.

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.

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.

11

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

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 consolidated statements of operations and comprehensive income (loss). 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 are capitalized and amortized over the life of the contract. These costs are recorded in selling, general and administrative expenses in the Company’s consolidated statements of operations and comprehensive income (loss).

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 consolidated statements of operations and comprehensive income (loss).

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

Three Months Ended June 30, 

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

Beginning accrued warranty expense

$

1,233

$

1,140

$

1,256

$

1,133

Current period claims

 

29

 

(85)

 

(87)

 

(141)

Provision for current period sales

 

165

 

89

 

258

 

152

Ending accrued warranty expense

$

1,427

$

1,144

$

1,427

$

1,144

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 June 30, 

    

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

Net income (loss)

$

4,445

$

6,815

$

(5,720)

$

13,679

 

  

 

  

 

  

 

  

Weighted average shares outstanding - basic

 

35,320,314

 

27,483,350

 

34,888,703

 

27,483,350

Effect of dilutive securities:

Stock-based awards

368,306

Weighted average shares outstanding - diluted

 

35,688,620

 

27,483,350

 

34,888,703

 

27,483,350

Net income (loss) per share:

 

  

 

  

 

  

 

  

Basic

$

0.13

$

0.25

$

(0.16)

$

0.50

Diluted

$

0.12

$

0.25

$

(0.16)

$

0.50

For the six months ended June 30, 2022, 3,121 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. There were no dilutive instruments outstanding for the three and six months ended June 30, 2021.

12

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

Recent Accounting Pronouncements

Adopted Accounting Pronouncements

In February 2016, the FASB issued ASU 2016-02, Leases (Topic 842), which is intended to increase transparency and comparability among organizations by requiring the recognition of right-of-use (“ROU”) assets and lease liabilities on the balance sheet. In July 2018, the FASB issued additional guidance which provided an additional transition method for adopting the updated guidance. Under the additional transition method, entities may elect to recognize a cumulative-effect adjustment to the opening balance of retained earnings in the year of adoption. In June 2020, the FASB issued additional guidance which extends the effective date of ASU 2016-02 for emerging growth companies to begin in fiscal years beginning after December 15, 2021, and interim periods beginning after December 15, 2022. Early adoption is permitted. The Company adopted this standard for its annual period as of January 1, 2022 by utilizing the effective date option of the modified retrospective transition approach, which does not require application of the guidance to comparative periods in the year of adoption. The primary effect of adoption will be recording ROU assets and corresponding lease liabilities for current operating leases. We believe the adoption of this standard will have a significant effect on our consolidated balance sheets and currently estimate a ROU asset and lease liability of $12,300 to $13,200 to be recorded on January 1, 2022. We do not anticipate that the adoption of this standard will have a significant impact on our consolidated statements of operations and comprehensive income (loss) or our consolidated statements of cash flows.  

Accounting Pronouncements Not Yet Adopted

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. Early adoption is permitted. The Company plans to adopt this standard on January 1, 2023 and is currently in the process of evaluating the impact of the adoption of this standard on its consolidated financial statements.

In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes. ASU 2019-12 simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740 and improves consistent application of and simplifies GAAP for other areas of Topic 740 by clarifying existing guidance. For emerging growth companies, this ASU is effective for fiscal years beginning after December 15, 2021, and interim periods within those fiscal years beginning after December 15, 2022. Early adoption is permitted. The Company is currently evaluating the impact the adoption of this ASU will have on its consolidated financial statements and related disclosures.

There were no other new accounting standards that the Company expects to have a potential material impact to the financial position or results of operations upon adoption.

2.    ACQUISITIONS

Radar Acquisition

On January 11, 2022, Safariland, LLC, a wholly-owned subsidiary of the Company, completed the accretive acquisition of Radar Leather Division S.r.l. (“Radar”), a premiere 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 the six months ended June 30, 2022.

13

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

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 preliminary fair value amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. The fair value estimates for the purchase price allocation are based on the Company’s best estimates and assumptions as of the reporting date and are considered preliminary. Since our initial purchase price allocation, we have decreased goodwill by $422 for revisions made to cash paid. The fair value measurements of all identifiable assets and liabilities, and the resulting goodwill related to the Radar acquisition are subject to change and the final purchase price allocation could be different from the amounts presented below. We expect to finalize the valuations as soon as practicable, but no later than one year from the date of the acquisition. 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 Products 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

2,500

Prepaid expenses

682

Other current assets

612

Property and equipment

3,053

Intangible assets

10,200

Goodwill

6,289

Total assets acquired

25,683

Accounts payable

1,120

Deferred tax liabilities

2,548

Accrued liabilities

2,106

Long-term debt

544

Total liabilities assumed

6,318

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

14

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

The full amount of goodwill of $6,289 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 Products segment from the date of acquisition. The acquisition was not material to our consolidated financial statements.

Cyalume Acquisition

On May 4, 2022, Safariland, LLC, a wholly-owned subsidiary of the Company, completed the accretive 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 $2,036 and $2,307 for the three and six months ended June 30, 2022, respectively.

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

Cash paid

    

$

37,508

Less: cash acquired

 

(1,834)

Total consideration, net

$

35,674

The following table summarizes the total purchase price consideration and the preliminary fair value amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. The fair value estimates for the purchase price allocation are based on the Company’s best estimates and assumptions as of the reporting date and are considered preliminary. The fair value measurements of identifiable assets and liabilities, and the resulting goodwill related to the Cyalume acquisition are subject to change and the final purchase price allocation could be different from the amounts presented below. We expect to finalize the valuations as soon as practicable, but no later than one year from the date of the acquisition. 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 Products segment and reflects synergies and additional legacy growth and profitability expected from this acquisition through expansion into new markets and customers.

Total consideration, net

    

$

35,674

Accounts receivable

$

3,302

Inventories

10,908

Prepaid expenses

255

Other current assets

10

Property and equipment

11,701

Intangible assets

8,300

Goodwill

6,641

Total assets acquired

41,117

Accounts payable

1,080

Deferred tax liabilities

2,497

Accrued liabilities

1,578

Other long-term liabilities

288

Total liabilities assumed

5,443

Net assets acquired

$

35,674

15

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

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

15

Technology

3,600

 

10

Trademarks

800

Indefinite

Total

$

8,300

The full amount of goodwill of $6,641 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 Products segment from the date of acquisition. The acquisition was not material to our consolidated financial statements.

3.    REVENUE RECOGNITION

The following tables disaggregate net sales by channel and geography:

Three months ended June 30, 

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

U.S. state and local agencies (a)

$

66,442

$

64,449

$

124,365

$

123,826

Commercial

 

11,327

 

7,591

 

22,361

 

19,433

U.S. federal agencies

 

9,448

 

10,486

 

17,362

 

26,079

International

 

29,506

 

30,040

 

56,525

 

52,034

Other

 

1,509

 

1,995

 

2,025

 

3,725

Net sales

$

118,232

$

114,561

$

222,638

$

225,097

(a) Includes all Distribution sales

Three months ended June 30, 

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

    

United States

$

88,726

$

84,521

$

166,113

$

173,063

International

 

29,506

 

30,040

 

56,525

 

52,034

$

118,232

$

114,561

$

222,638

$

225,097

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 which are satisfied at a future point of time. Contract liabilities are reduced when the performance obligation is satisfied. Contract liabilities are included in accrued liabilities in the Company’s consolidated balance sheets and totaled $6,272 and $10,949 as of June 30, 2022 and December 31, 2021, respectively. Revenue recognized during the three and six months ended June 30, 2022 from amounts included in contract liabilities as of December 31, 2021 was $2,225 and $7,216, respectively.

Remaining Performance Obligations

As of June 30, 2022, we had $18,395 of remaining 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 June 30, 2022. We expect to recognize approximately 63% of this balance over the next twelve months and expect the remainder to be recognized in the following two years.

16

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

4.    INVENTORIES

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

    

    

June 30, 2022

    

December 31, 2021

Finished goods

$

30,492

$

28,707

Work-in-process

 

8,881

 

4,053

Raw materials and supplies

 

37,257

 

31,218

$

76,630

$

63,978

5.    GOODWILL AND OTHER INTANGIBLE ASSETS

Goodwill

The following table summarizes the changes in goodwill for the three and six months ended June 30, 2022:

    

Products

    

Distribution

    

Total

Balance, December 31, 2021

$

63,646

$

2,616

$

66,262

Radar acquisition

6,711

6,711

Foreign currency translation adjustments

 

(463)

 

 

(463)

Balance, March 31, 2022

$

69,894

$

2,616

$

72,510

Radar acquisition measurement period adjustment

(422)

(422)

Cyalume acquisition

6,641

6,641

Foreign currency translation adjustments

(702)

(702)

Balance, June 30, 2022

$

75,411

$

2,616

$

78,027

Gross goodwill and accumulated impairment losses was $85,612 and $7,585, respectively, as of June 30, 2022 and $73,899 and $7,585, respectively, as of December 31, 2021.

17

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

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 June 30, 2022 and December 31, 2021:

June 30, 2022

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

85,908

 

$

(55,789)

 

$

30,119

 

11

Technology

 

15,956

 

 

(11,124)

 

 

4,832

 

8

Tradenames

 

6,492

 

 

(3,733)

 

 

2,759

 

4

Non-compete agreements

 

977

 

 

(977)

 

 

 

4

$

109,333

 

$

(71,623)

 

$

37,710

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

17,467

 

 

 

 

17,467

 

Indefinite

Total

$

126,800

 

$

(71,623)

 

$

55,177

 

  

December 31, 2021

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

74,078

$

(52,536)

 

$

21,542

 

11

Technology

 

11,978

 

 

(10,988)

 

 

990

 

7

Tradenames

 

6,473

 

 

(3,264)

 

 

3,209

 

4

Non-compete agreements

 

1,037

 

 

(1,037)

 

 

 

4

$

93,566

 

$

(67,825)

 

$

25,741

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

16,674

 

 

 

 

16,674

 

Indefinite

Total

$

110,240

 

$

(67,825)

 

$

42,415

 

  

The Company recorded amortization expense of $2,240 and $2,179 for the three months ended June 30, 2022 and 2021, respectively, of which $130 and $200 was included in cost of goods sold in the consolidated statements of operations and comprehensive income (loss) for the respective periods. Amortization expense for the six months ended June 30, 2022 and 2021 was $4,397 and $4,365, respectively, of which $180 and $398 was included in cost of goods sold in the consolidated statements of operations and comprehensive income (loss) for the respective periods.

18

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

The estimated amortization expense for finite-lived intangible assets for the remaining six months of 2022, the next four years and thereafter is as follows:

Remainder of 2022

    

$

4,277

2023

 

7,923

2024

 

5,029

2025

 

3,071

2026

 

2,661

Thereafter

 

14,749

$

37,710

6.    DEBT

The Company’s debt is as follows:

    

June 30, 2022

    

December 31, 2021

Short-term debt:

 

  

 

  

Insurance premium financing

$

321

$

3,174

Current portion of term loan

 

10,000

 

10,000

$

10,321

$

13,174

Long-term debt:

 

  

 

  

Revolver

 

 

Term loan

 

143,564

 

148,564

Other

 

506

 

$

144,070

$

148,564

Unamortized debt discount and debt issuance costs

 

(1,826)

 

(2,048)

Total long-term debt, net

$

142,244

$

146,516

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

Remainder of 2022

    

$

5,000

2023

 

10,000

2024

 

10,127

2025

 

10,127

2026

 

118,690

Thereafter

 

126

Total principal payments

$

154,070

19

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

New 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 “New 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 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 New 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 June 30, 2022 and December 31, 2021. As of June 30, 2022, there were $2,292 in outstanding letters of credit and $97,708 of availability.

The Borrower may elect to have the Revolving Loan and Term Loan under the New Credit Agreement bear interest at a base rate or a LIBOR rate, in each case, plus an applicable margin. The applicable margin for these borrowings will range from 0.50% to 1.50% per annum, in the case of base rate borrowings, and 1.50% to 2.50% per annum, in the case of LIBOR borrowings, in each case based upon the level of the Company’s consolidated total net leverage ratio. The New Credit Agreement also requires the Borrower to pay a commitment fee on the unused portion of the loan commitments. Such commitment fee will range 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 New 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 New 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 New 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 New 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.

20

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

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 a LIBOR rate, 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 June 30, 2022 and December 31, 2021.

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

In September 2021, we entered into an interest rate swap agreement to hedge forecasted monthly interest rate payments on our floating rate debt. As of June 30, 2022, we had the following interest rate swap agreement (the “Swap Agreement”):

Effective date

    

Notional amount

    

Fixed rate

 

September 30, 2021 through July 23, 2026

    

$

100,000

    

0.875

%

Under the terms of the Swap Agreement, we receive payments based on the 1-month LIBOR (approximately 3.67% as of June 30, 2022).

During the six months ended June 30, 2022, there were no interest rate swap agreements that expired.

We entered into the Swap Agreement to convert a portion of the interest rate exposure on our floating rate debt from variable to fixed. We designated this Swap Agreement as a cash flow hedge. A portion of the amount included in accumulated other comprehensive loss 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 Agreement 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 Agreement.

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 agreement, and we believe we will have debt outstanding through the expiration date of the swap such that the occurrence of future cash flow hedges remains probable.

21

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

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

    

Balance sheet accounts

    

June 30, 2022

    

December 31, 2021

Other current assets

$

2,115

$

Other assets

$

4,715

$

1,607

Accrued liabilities

$

$

389

A cumulative gain, net of tax, of $5,123 and $913 as of June 30, 2022 and December 31, 2021, respectively, is recorded in accumulated other comprehensive loss.

The amount of gain, net of tax recognized in other comprehensive income for the three and six months ended June 30, 2022 was $987 and $4,064, respectively. There was $15 and $146 reclassified from accumulated other comprehensive loss into earnings for the three and six months ended June 30, 2022, respectively.

As of June 30, 2022, approximately $2,121 is expected to be reclassified from accumulated other comprehensive loss into interest expense over the next 12 months.

7.    COMMITMENTS AND CONTINGENCIES

Legal Proceedings

In March 2020, the Company settled an administrative enforcement action filed by the U.S. Federal Trade Commission (“FTC”) relating to Company’s sale of VieVu, LLC to Axon Enterprise Inc. (“Axon”) wherein the FTC alleged that the operative agreements contained non-compete and non-solicitation provisions in violation of Section 5 of the Federal Trade Commission Act, as amended, 15 U.S.C. § 45, and Section 7 of the Clayton Act, as amended, 15 U.S.C. § 18. The FTC’s administrative complaint sought only injunctive relief against the Company to enjoin the enforcement of these provisions, now and in the future, and did not seek monetary damages against the Company. In January 2020, the Company and Axon had rescinded these provisions. Pursuant to a consent agreement and proposed consent order entered into by the FTC and the Company, on June 11, 2020, the FTC issued a Decision and Order accepting the Consent Agreement (the “Order”). Under the Order, the Company agreed to not modify and reinstate the rescinded provisions and to not enter into any new similar provisions with Axon, absent prior approval from the FTC. In addition, as part of the Company’s compliance program, the Order imposes an obligation to distribute to, and train the directors and officers on, the requirements of the consent order and to report annually for five years to the FTC ensuring compliance with the consent order. On July 10, 2020, the Company filed its Interim Verified Compliance Report and, thereafter, on June 11, 2021 and June 10, 2022, filed its Annual Compliance Reports, each as required by the Order.

In June 2020, the Company received a Civil Investigative Demand (“CID”) from the United States Department of Justice (“DOJ”), Western District of Washington (Seattle, WA), pertaining to a False Claims Act investigation, 31 U.S.C, sections 3729-3733 (“FCA”), concerning allegations that soft body armor vest accessory panels sold by the Company are falsely labeled as compliant with the National Institute of Justice performance standards. In September 2020, the Company made its First Production of Documents which contained only documents and data that had been deemed to be of a “priority” nature pursuant to an agreement reached between the Company’s counsel and the Assistant U.S. Attorney handling the matter. In July 2021, the Company received a request for additional information relating to the subject matter of the investigation, with which the Company complied. In October 2021, November 2021 and December 2021, the Company produced additional documents responsive to the correspondence containing requests for specific documents and supplemental information. At this preliminary stage of the investigation, the Company does not have enough information to make an evaluation of the merits, exposure or potential risks regarding this matter.

22

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

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 on May 16, 2022 and, on July 7, 2022, Safariland timely filed its opening brief.  Plaintiff has 30 days to file a response brief, and Safariland will have 21 days to file a reply, provided that it is no later than seven days before oral argument is scheduled. While any litigation contains an element of uncertainty, the Company believes it is reasonably possible, not probable, that the Company could incur losses related to this case, however, any losses would be indemnified by our insurance carrier under applicable policies.

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.

Leases

The Company leases office, warehouse, and distribution space under non-cancelable operating leases. As leases expire, it can be expected that, in the normal course of business, certain leases will be renewed or replaced. Our leases generally contain multi-year renewal options and escalation clauses. Total rent expense of the Company for the three months ended June 30, 2022 and 2021 was $1,202 and $1,175, respectively, and for the six months ended June 30, 2022 and 2021 was $2,402 and $2,325, respectively.

23

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

Future minimum lease payments required under non-cancelable operating leases that have initial or remaining non-cancelable lease terms in excess of one year for the remaining six months of 2022, the next four years and thereafter is as follows:

Remainder of 2022

$

2,358

2023

 

4,276

2024

 

3,077

2025

 

1,618

2026

 

639

Thereafter

 

104

Total minimum lease payments

$

12,072

There were no material future minimum sublease payments to be received under non-cancelable subleases as of June 30, 2022. There was no material sublease income for the three and six months ended June 30, 2022 and 2021.

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 June 30, 2022, the Company’s tax years subsequent to 2016 are subject to examination by tax authorities with few exceptions. During the six months ended June 30, 2022, one of the Company’s Canadian subsidiaries concluded an examination of its tax filings for the period June 1, 2016 through December 31, 2017 that resulted in no changes to the filings or the amount of tax due. The 2018 and 2019 tax returns of a separate Canadian subsidiary are currently under examination by the Canadian Revenue Agency.

In assessing the realizability of deferred tax assets, the Company performs a quarterly evaluation of whether it is more likely than not that some portion or all of the deferred income tax assets will not be realized. During the course of this evaluation, the Company considers all available positive and negative evidence and if, based upon the weight of available evidence, it is more likely than not the deferred tax assets will not be realized, a valuation allowance is recorded. Based on the Company’s evaluation, a valuation allowance of $1,890 has been recorded as of June 30, 2022.

The Company’s effective tax rate for the three months ended June 30, 2022 and 2021 was 25.4% and 26.9%, respectively, and 44.0% and 30.4% for the six months ended June 30, 2022 and 2021, respectively. Our effective tax rate for the three and six months ended June 30, 2022 and 2021 differs from our statutory rate primarily due to nondeductible executive compensation.

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 $174 and $328 for the three months ended June 30, 2022 and 2021, respectively, and $558 and $1,280 for the six months ended June 30, 2022 and 2021, respectively, and is included in selling, general and administrative in the Company’s consolidated statements of operations and comprehensive income (loss).

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.

24

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

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 (split-adjusted) 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 will 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 will 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 consolidated statements of operations and comprehensive income (loss) on the modification date. Unrecognized compensation expense related to the unvested units was $11,516 as of the modification date.

Stock Incentive Plan

On March 9, 2022, the Company’s board of directors granted 85,108 restricted stock awards (“RSAs”) and issued 309,479 stock options under the Cadre Stock Incentive Plan. The RSAs will vest in three equal installments over a three-year period from the date of grant and have a grant date fair value of $23.45, the closing stock price of the Company on the date of grant. The options issued will vest and become exercisable in equal installments over a three-year period from the date of grant and expire ten years from the date of the grant. The fair value of the options has been estimated as of the grant date using the Black-Scholes option-pricing model and resulted in a grant date fair value of approximately $6.72 per option. 

10.     ASSETS AND LIABILITIES HELD FOR SALE

In October 2021, the Company designated our Daventry, UK facility as held for sale. Accordingly, during 2021, the Company determined that the assets and liabilities associated with the Daventry facility met the criteria for classification as held for sale but did not meet the criteria for classification as discontinued operations as the deconsolidation did not represent a strategic shift in the business. Total assets and liabilities associated with the Daventry facility were $251 and $106, respectively, and are presented in our consolidated balance sheet as of June 30, 2022 as current assets held for sale and current liabilities held for sale, respectively. The Company is actively marketing this facility and expects to complete the sale of this facility in 2022.

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 $112 and $142 for the three months ended June 30, 2022 and 2021, respectively, and $234 and $295 for the six months ended June 30, 2022 and 2021, respectively. Rent expense related to these leases is included in related party expense in the Company’s consolidated statements of operations and comprehensive income (loss).

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

25

Table of Contents

CADRE HOLDINGS, INC.

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS - CONTINUED

(Unaudited)

(in thousands, except share and per share amounts)

$1,000 for services related to the acquisition of Cyalume, which is included in related party expense in the Company’s consolidated statements of operations and comprehensive income (loss).
$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 consolidated balance sheets.

12.     SEGMENT DATA

Our operations are comprised of two reportable segments: Products 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.

    

Six months ended June 30, 2022

Reconciling

    

    Products    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

185,223

    

$

47,824

    

$

(10,409)

    

$

222,638

Cost of goods sold

112,067

37,578

(10,417)

139,228

Gross profit

$

73,156

$

10,246

$

8

$

83,410

    

Six months ended June 30, 2021

Reconciling

    

    Products    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

190,121

    

$

47,579

    

$

(12,603)

    

$

225,097

Cost of goods sold

110,028

35,476

(12,594)

132,910

Gross profit

$

80,093

$

12,103

$

(9)

$

92,187

(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 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, 2021. 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 the sections entitled “Risk Factors” and “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, Company acquired Radar Leather Division S.r.l. (“Radar”) for $19.4 million, net of cash acquired. We recorded a preliminary allocation of the purchase price to tangible and identifiable intangible assets acquired and liabilities assumed based on their estimated fair values. These estimates are preliminary and subject to adjustments as we complete our valuation process.

In May 2022, the Company acquired Cyalume Technologies, Inc, CT SAS Holdings, Inc. and Cyalume Technologies SAS (collectively “Cyalume”) for $35.7 million, net of cash acquired. We recorded a preliminary allocation of the purchase price to tangible and identifiable intangible assets acquired and liabilities assumed based on their estimated fair values. These estimates are preliminary and subject to adjustments as we complete our valuation process.

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 June 30, 

Six months ended June 30, 

(in thousands)

2022

2021

2022

2021

Net sales

    

$

118,232

    

$

114,561

  

$

222,638

    

$

225,097

    

Net income (loss)

$

4,445

$

6,815

  

$

(5,720)

$

13,679

Adjusted EBITDA(1)

$

18,386

$

20,451

  

$

32,605

$

40,697

(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 (loss) income, the most directly comparable U.S. GAAP financial measure.

Net sales increased by $3.7 million for the three months ended June 30, 2022 as compared to the three months ended June 30, 2021, primarily as a result of recent acquisitions and increased armor demand, offset by decreases in large structural armor and crowd control.  Net sales decreased by $2.5 million for the six months ended June 30, 2022 as compared to the six months ended June 30, 2021, primarily as a result of a large prior year US Federal shipment of duty gear and prior year demand for crowd control products, partially offset by recent acquisitions.

Net income decreased by $2.4 million for the three months ended June 30, 2022 as compared to the three months ended June 30, 2021, primarily as a result of increased stock-based compensation expense, losses on foreign currency transactions and discrete acquisition-related expenses, partially offset by increased revenue. Net income (loss) decreased by $19.4 million for the six months ended June 30, 2022 as compared to the six months ended June 30, 2021, primarily as a result of stock-based 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.

COVID-19

The global outbreak of COVID-19 was declared a pandemic by the World Health Organization and a national emergency by the U.S. and European governments in March 2020, with governments world-wide implementing safety measures restricting travel and requiring citizen lockdowns and self-confinements for quarantining purposes. This has negatively affected the U.S. and global economies, disrupted global supply chains, and resulted in significant transport restrictions and disruption of global financial markets.

The COVID-19 pandemic has significantly impacted the global supply chain, with restrictions and limitations on related activities causing disruption and delay, along with increased raw material, storage, and shipping costs. These disruptions and delays have strained domestic and international supply chains, which have affected and could continue to negatively affect the flow or availability of certain critical raw materials and finished good products that the Company relies upon. Furthermore, any negative impacts on our logistical operations, including our fulfillment and shipping functions, could result in periodic delays in the delivery of our products.

28

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

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 identify trends over time.

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

(in thousands)

June 30, 2022

December 31, 2021

Orders backlog

$

126,364

$

113,840

    

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 $12.5 million as of June 30, 2022 compared to December 31, 2021, primarily due to $13.6 million from recent acquisitions, $8.6 million from higher demand for soft armor products, $2.0 million from crowd control orders in the international and government channels, and $1.7 million from duty gear holster projects in the international channel. This was partially offset by a $10.8 million reduction from 2022 year to date shipments of large international contracts of bomb suit ensembles and a $2.6 million reduction from a large contractual armor order due to year to date shipments.

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 six months ended June 30, 2022 and 2021 (in thousands unless otherwise noted):

Three months ended June 30, 

Six months ended June 30, 

2022

2021

2022

2021

    

(Unaudited)

    

(Unaudited)

    

% Chg

    

    

(Unaudited)

    

(Unaudited)

    

% Chg

    

Net sales

$

118,232

$

114,561

3.2

%

$

222,638

$

225,097

(1.1)

%

Cost of goods sold

 

75,011

 

66,333

13.1

%

 

139,228

 

132,910

4.8

%

Gross profit

 

43,221

 

48,228

(10.4)

%

 

83,410

 

92,187

(9.5)

%

Operating expenses

Selling, general and administrative

 

32,749

 

31,444

4.2

%

 

86,699

 

59,495

45.7

%

Restructuring and transaction costs

 

1,203

 

1,219

(1.3)

%

 

1,802

 

1,540

17.0

%

Related party expense

 

1,112

 

142

683.1

%

 

1,234

 

295

318.3

%

Total operating expenses

 

35,064

 

32,805

6.9

%

 

89,735

 

61,330

46.3

%

Operating income (loss)

 

8,157

 

15,423

(47.1)

%

 

(6,325)

 

30,857

(120.5)

%

Other expense

Interest expense

 

(1,439)

 

(5,621)

(74.4)

%

 

(2,929)

 

(10,665)

(72.5)

%

Other expense, net

 

(756)

 

(485)

55.9

%

 

(961)

 

(529)

81.7

%

Total other expense, net

 

(2,195)

 

(6,106)

(64.1)

%

 

(3,890)

 

(11,194)

(65.2)

%

Income (loss) before provision for income taxes

 

5,962

 

9,317

(36.0)

%

 

(10,215)

 

19,663

(152.0)

%

(Provision) benefit for income taxes

 

(1,517)

 

(2,502)

(39.4)

%

 

4,495

 

(5,984)

(175.1)

%

Net income (loss)

$

4,445

$

6,815

(34.8)

%

$

(5,720)

$

13,679

(141.8)

%

The following table presents segment data for the three and six months ended June 30, 2022 and 2021 (in thousands):

    

Three months ended June 30, 2022

Reconciling

    

Products

Distribution

 Items(1)

    

Total

Net sales

    

$

99,837

    

$

23,728

    

$

(5,333)

    

$

118,232

Cost of goods sold

60,947

19,406

(5,342)

75,011

Gross profit

$

38,890

$

4,322

$

9

$

43,221

    

Three months ended June 30, 2021

Reconciling

    

Products

    

Distribution

    

 Items(1)

    

Total

Net sales

    

$

96,303

    

$

24,919

    

$

(6,661)

    

$

114,561

Cost of goods sold

54,434

18,555

(6,656)

66,333

Gross profit

$

41,869

$

6,364

$

(5)

$

48,228

30

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

    

Six months ended June 30, 2022

Reconciling

    

    Products    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

185,223

    

$

47,824

    

$

(10,409)

    

$

222,638

Cost of goods sold

112,067

37,578

(10,417)

139,228

Gross profit

$

73,156

$

10,246

$

8

$

83,410

    

Six months ended June 30, 2021

Reconciling

    

    Products    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

190,121

    

$

47,579

    

$

(12,603)

    

$

225,097

Cost of goods sold

110,028

35,476

(12,594)

132,910

Gross profit

$

80,093

$

12,103

$

(9)

$

92,187

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

Comparison of Three Months Ended June 30, 2022 to Three Months Ended June 30, 2021

Net sales. Product segment net sales increased by $3.5 million, or 3.7%, from $96.3 million to $99.8 million for the three months ended June 30, 2022 as compared to the three months ended June 30, 2021, primarily due to increases of $8.6 million from recent acquisitions and $2.6 million from higher demand for armor products, partially offset by decreases of $4.8 million from a large contractual armor order and $1.2 million from the crowd control product line due to higher demand for such products in the prior year. Distribution segment net sales decreased by $1.2 million, or 4.8%, from $24.9 million to $23.7 million for the three months ended June 30, 2022 as compared to the three months ended June 30, 2021, primarily due to lower retail volume. Reconciling items consisting primarily of intercompany eliminations were $5.3 million and $6.7 million for three months ended June 30, 2022 and June 30, 2021, respectively.

Cost of goods sold and Gross profit. Product segment cost of goods sold increased by $6.5 million, or 12.0%, from $54.4 million to $60.9 million for the three months ended June 30, 2022 as compared to the three months ended June 30, 2021, primarily due to increasing costs to manufacture product (namely material and labor). Product segment gross profit as a percentage of net sales decreased by 450 basis points to 39.0% for the three months ended June 30, 2022 from 43.5% for the three months ended June 30, 2021, mainly driven by unfavorable product and portfolio mix, partially offset by price (in excess of material inflation). Distribution segment cost of goods sold increased by $0.8 million, or 4.6%, from $18.6 million to $19.4 million for the three months ended June 30, 2022 as compared to the same period in 2021, primarily due to increased costs to acquire products. Distribution segment gross profit as a percentage of net sales decreased by 730 basis points to 18.2% for the three months ended June 30, 2022 from 25.5% for the three months ended June 30, 2021, mainly driven by unfavorable channel mix with more volume going to agencies versus retail and timing of vendor discounts. Reconciling items consisting primarily of intercompany eliminations were $5.3 million and $6.7 million for three months ended June 30, 2022 and June 30, 2021, respectively.

Selling, general and administrative. SG&A increased by $1.3 million, or 4.2%, for the three months ended June 30, 2022 as compared to the same period in 2021, primarily due to stock-based compensation expense of $2.8 million and increases in marketing spend and corporate insurances offset in part by bonus expense and lower commissions.

Restructuring and transaction costs. Restructuring and transaction costs were relatively consistent for the three months ended June 30, 2022 as compared to the three months ended June 30, 2021.

Related party expense. Related party expense increased by $1.0 million for the three months ended June 30, 2022 as compared to the same period in 2021, 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. We also recorded rent expense relating to distribution warehouses and retail stores that we lease from related parties.

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 $4.2 million, or 74.4%, for the three months ended June 30, 2022 as compared to the three months ended June 30, 2021, due to an interest rate decrease as a result of our prior year debt refinancing and repayments on our outstanding debt.

Other expense, net. Other expense, net increased by $0.3 million for the three months ended June 30, 2022 as compared to the three months ended June 30, 2021, primarily due to losses on foreign currency transactions.

(Provision) benefit for income taxes. Income tax provision was $1.5 million for the three months ended June 30, 2022 compared to a tax provision of $2.5 million for the three months ended June 30, 2021.  The effective tax rate was 25.4% for the three months ended June 30, 2022 and was higher than the statutory rate due to state taxes and executive compensation, partially offset by research and development tax credits.  For the three months ended June 30, 2021, the effective tax rate was 26.9% and was higher than the statutory rate primarily due to state taxes and the tax impact of our foreign earnings, partially offset by research and development tax credits.

Comparison of Six Months Ended June 30, 2022 to Six Months Ended June 30, 2021

Net sales. Product segment net sales decreased by $4.9 million, or 2.6%, from $190.1 million to $185.2 million for the six months ended June 30, 2022 as compared to the six months ended June 30, 2021, primarily due to decreases of $5.2 million from our duty gear product line as a result of a large US Federal shipment in the prior year, $5.0 million from the crowd control product line from higher demand for such products in the prior year and $3.1 million from a large contractual armor order in the prior year, partially offset by an increase of $10.1 million from recent acquisitions. Distribution segment net sales increased by $0.2 million, or 0.5%, from $47.6 million to $47.8 million for the six months ended June 30, 2022 as compared to the six months ended June 30, 2021, primarily due to field sales of uniforms. Reconciling items consisting primarily of intercompany eliminations were $10.4 million and $12.6 million for six months ended June 30, 2022 and 2021, respectively.

Cost of goods sold and Gross profit. Product segment cost of goods sold increased by $2.1, or 1.9%, from $110.0 to $112.1 million for the six months ended June 30, 2022 as compared to the six months ended June 30, 2021, primarily due to increased costs to manufacture product (namely material and labor). Product segment gross profit as a percentage of net sales decreased by 260 basis points to 39.5% for the six months ended June 30, 2022 from 42.1% for the six months ended June 30, 2021, mainly driven by unfavorable product and portfolio mix, partially offset by price (in excess of material inflation). Distribution segment cost of goods sold increased by $2.1 million, or 5.9%, from $35.5 million to $37.6 million for the six months ended June 30, 2022 as compared to the same period in 2021, primarily due to increased costs to acquire products. Distribution segment gross profit as a percentage of net sales decreased by 400 basis points to 21.4% for the six months ended June 30, 2022 from 25.4% for the six months ended June 30, 2021, mainly driven by unfavorable channel mix with more volume going to agencies versus retail. Reconciling items consisting primarily of intercompany eliminations were $10.4 million and $12.6 million for six months ended June 30, 2022 and 2021, respectively.

Selling, general and administrative. SG&A increased by $27.2 million, or 45.7%, for the six months ended June 30, 2022 as compared to the same period in 2021, primarily due to stock-based compensation expense of $26.5 million and increases in marketing spend and corporate insurances.

Restructuring and transaction costs. Restructuring and transaction costs increased by $0.3 million for the six months ended June 30, 2022 as compared to the six months ended June 30, 2021, primarily due to increased transactions costs and consulting fees incurred related to the acquisition of Cyalume.

Related party expense. Related party expense increased by $0.9 million for the six months ended June 30, 2022 as compared to the same period in 2021, 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. We also recorded rent expense relating to distribution warehouses and retail stores that we lease from related parties.

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 $7.7 million, or 72.5%, for the six months ended June 30, 2022 as compared to the six months ended June 30, 2021, as a result of our prior year debt refinancing and debt repayments on our outstanding debt.

Other expense, net. Other expense, net increased by $0.4 million for the six months ended June 30, 2022 as compared to the six months ended June 30, 2021, primarily due to losses on foreign currency transactions.

(Provision)benefit for income taxes. Income tax benefit was $4.5 million for the six months ended June 30, 2022 compared to a tax provision of $6.0 million for the six months ended June 30, 2021.  The effective tax rate was 44.0% for the six months ended June 30, 2022 and was higher than the statutory rate due to state taxes and executive compensation, partially offset by research and development tax credits.  For the six months ended June 30, 2021, the effective tax rate was 30.4% and was higher than the statutory rate primarily due to state taxes and the tax impact of our foreign earnings, partially offset by research and development tax credits.

NON-GAAP MEASURES

This Quarterly Report on Form 10-Q includes EBITDA, Adjusted EBITDA and Adjusted EBITDA Conversion Rate, 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 (benefit) provision for income tax. Adjusted EBITDA represents EBITDA that excludes restructuring and transaction costs, other expense, net, stock-based compensation expense and long-term incentive plan (“LTIP”) bonus as these items do not represent our core operating performance. We also present Adjusted EBITDA Conversion Rate, which we define as Adjusted EBITDA less capital expenditures divided by Adjusted EBITDA. We use Adjusted EBITDA Conversion Rate as a measurement of the cash generation capacity of our underlying operations, exclusive of impacts relating to our capital structure.

EBITDA, Adjusted EBITDA and Adjusted EBITDA Conversion Rate 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. Adjusted EBITDA Conversion Rate is a liquidity measure that we believe provides investors and analysts with important information about our core, recurring cash generation trends, which are an indication of our ability to make acquisitions, incur additional debt or return capital to investors, after making the capital investments required to support our business operations.

EBITDA, Adjusted EBITDA and Adjusted EBITDA Conversion Rate 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, Adjusted EBITDA and Adjusted EBITDA Conversion Rate reconciled to the most comparable GAAP financial measures for the periods indicated:

    

Three Months Ended June 30, 

Six Months Ended June 30, 

 

    

(in thousands)

    

2022

2021

2022

2021

 

    

Net income (loss)

    

$

4,445

  

$

6,815

    

$

(5,720)

  

$

13,679

Add back:

 

  

  

 

  

 

 

  

  

 

  

Depreciation and amortization

 

3,836

  

 

3,481

 

 

7,380

  

 

7,020

Interest expense

 

1,439

  

 

5,621

 

 

2,929

  

 

10,665

Provision (benefit) for income taxes

 

1,517

  

 

2,502

 

 

(4,495)

  

 

5,984

EBITDA

$

11,237

  

$

18,419

 

$

94

  

$

37,348

Add back:

 

  

  

 

  

 

 

  

  

 

  

Restructuring and transaction costs(1)

 

2,203

  

 

1,219

 

 

2,802

  

 

1,540

Other expense, net(2)

 

756

  

 

485

 

 

961

  

 

529

Stock-based compensation expense(3)

2,818

26,541

Stock-based compensation payroll tax expense(4)

7

305

LTIP bonus(5)

 

174

  

 

328

 

 

558

  

 

1,280

Amortization of inventory step-up(6)

1,191

  

 

1,344

Adjusted EBITDA

$

18,386

  

$

20,451

 

$

32,605

  

$

40,697

Less: Capital expenditures

 

(1,421)

  

 

(718)

 

 

(2,490)

  

 

(1,506)

Adjusted EBITDA less capital expenditures

$

16,965

  

$

19,733

 

$

30,115

  

$

39,191

Adjusted EBITDA conversion rate

 

92

%

 

96

%

 

92

%  

 

96

%

(1)Reflects the “Restructuring and transaction costs” line item on our consolidated statement of operations, 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 consolidated statements of operations and comprehensive income (loss).
(2)Reflects the “Other expense, net” line item on our consolidated statement of operations. For the three and six months ended June 30, 2022 and 2021, other expense, net primarily includes losses on foreign currency transactions.
(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 part of the recent acquisitions.

Adjusted EBITDA decreased by $2.1 million for the three months ended June 30, 2022 as compared to 2021, primarily due to the decrease in net sales and unfavorable product and portfolio mix, offset by favorable pricing (in excess of material inflation). Adjusted EBITDA decreased by $8.1 million for the six months ended June 30, 2022 as compared to 2021, primarily due to the decrease in net sales and unfavorable product and portfolio mix, offset by favorable pricing (in excess of material inflation).

34

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

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 Loan.

For the six months ended June 30, 2022, net cash provided from operating activities totaled $25.0 million and as of June 30, 2022, cash and cash equivalents totaled $28.9 million. We believe that our cash flows from operations and cash on 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 June 30, 2022 and December 31, 2021, we had $152.6 million and $159.7 million in outstanding debt, net of debt discounts and debt issuance costs, respectively, primarily related to the term loan facilities.

New 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 “New 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 New 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 June 30, 2022 and December 31, 2021. As of June 30, 2022, there were $2.3 million in outstanding letters of credit and $97.7 million of availability.

The Borrower may elect to have the Revolving Loan and Term Loan under the New Credit Agreement bear interest at a base rate or a LIBOR rate, in each case, plus an applicable margin. The applicable margin for these borrowings will range from 0.50% to 1.50% per annum, in the case of base rate borrowings, and 1.50% to 2.50% per annum, in the case of LIBOR borrowings, in each case based upon the level of the Company’s consolidated total net leverage ratio. The New Credit Agreement also requires the Borrower to pay a commitment fee on the unused portion of the loan commitments. Such commitment fee will range 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 New 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 New Credit Agreement contains certain restrictive debt

35

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

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 New 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 New 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 August 8, 2022, there were no amounts outstanding under the Revolving Loan.

The foregoing description of the New Credit Agreement does not purport to be complete and is qualified in its entirety by reference to the New Credit Agreement, which is Exhibit 10.24 to our Annual Report on Form 10-K for the year ended December 31, 2021 and incorporated herein by reference.

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 a LIBOR rate, 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 June 30, 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 August 8, 2022, there were no amounts outstanding under the Revolving Canadian Loan.

36

Table of Contents

CADRE HOLDINGS, INC.

MANAGEMENT DISCUSSION AND ANALYSIS

(in thousands, except share and per share amounts)

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.28 to our Annual Report on Form 10-K for the year ended December 31, 2021 and incorporated herein by reference.

Cash Flows

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

    

Six Months Ended June 30, 

    

(in thousands)

    

2022

2021

    

Net cash provided by operating activities

    

$

25,018

  

$

28,707

Net cash used in investing activities

 

(57,512)

  

 

(1,506)

Net cash provided by (used in) financing activities

 

27,355

  

 

(14,933)

Effects of foreign exchange rates on cash and cash equivalents

 

144

  

 

42

Change in cash and cash equivalents

 

(4,995)

  

 

12,310

Cash and cash equivalents, beginning of period

 

33,857

  

 

2,873

Cash and cash equivalents, end of period

$

28,862

  

$

15,183

Net cash provided by operating activities

During the six months ended June 30, 2022, net cash provided by operating activities of $25.0 million resulted primarily from net loss of $10.2 million, a $26.3 million add back to net loss for stock-based compensation, a $7.4 million add back to net loss for depreciation and amortization and changes in operating assets and liabilities of $4.6 million. Changes in operating assets and liabilities were primarily driven by an increase in accounts receivable of $3.2 million, a decrease in prepaid expenses and other assets of $3.6 million and a decrease in accounts payable and other liabilities of $3.5 million.

During the six months ended June 30, 2021, net cash provided by operating activities of $28.7 million resulted primarily from net income of $13.7 million, a $7.0 million add back for depreciation and amortization, a $4.6 million add back for deferred income taxes and changes in operating assets and liabilities of $1.9 million. Changes in operating assets and liabilities were primarily driven by an increase in accounts payable and other liabilities of $9.2 million offset in part by increases in accounts receivable of $2.4 million and inventories of $7.1 million.

Net cash used in investing activities

During the six months ended June 30, 2022, we used $57.5 million of cash in investing activities, consisting of $19.4 million for the acquisition of Radar, $35.7 for the acquisition of Cyalume and $2.5 million for purchases of property and equipment.

During the six months ended June 30, 2021, we used $1.5 million of cash in investing activities, consisting of purchases of property and equipment.

Net cash provided by (used in) financing activities

During the six months ended June 30, 2022, net cash provided by financing activities of $27.4 million resulted primarily from proceeds from secondary offering of $49.7 million, partially offset by principal payments on term loans of $5.0 million, taxes paid in connection with employee stock transactions of $6.2 million and dividends distributed of $5.5 million.

During the six months ended June 30, 2021, we used $14.9 million of cash in financing activities, primarily consisting of principal payments on revolving credit facilities of $176.5 million, principal payments on insurance premium financing of $1.2 million and principal payments on term loans of $13.7 million, offset in part by proceeds from revolving credit facilities of $176.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, 2021.

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 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 consolidated financial statements. While our significant accounting policies are described in more detail in notes in our 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, 2021.

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

As a smaller reporting company, as defined in Rule 12b-2 under the 1934 Act, as amended, for this reporting period, we are not required to provide the information required under this item.

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 June 30, 2022, 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 June 30, 2022 were effective.

Changes in Internal Control over Financial Reporting

The Company acquired Radar Leather Division S.r.l. (“Radar”) on January 11, 2022, as well as each of Cyalume Technologies, Inc, CT SAS Holdings, Inc. and Cyalume Technologies SAS (collectively “Cyalume”) on May 4, 2022. The Company is currently in the process of integrating the internal controls over financial reporting at Radar and Cyalume. Except for the continued integration of Radar and Cyalume, there has been no change in our internal control over financial reporting that occurred during the three months ended June 30, 2022, 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.

39

PART II. OTHER INFORMATION

ITEM 1. LEGAL PROCEEDINGS

Refer to Note 7 of the Notes to 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, 2021 and the Company’s Quarterly Report on Form 10-Q for the quarter ended March 31, 2022.

ITEM 6. EXHIBITS

Exhibit 
No.

    

Description

1.1

Underwriting Agreement, dated as of June 9, 2022, by and among Cadre Holdings, Inc., the selling stockholders named therein, and each of BofA Securities, Inc. and Jefferies LLC, as representatives of the several underwriters named therein (filed as Exhibit 1.1 to the Company’s Current Report on Form 8-K filed by the Company with the Securities and Exchange Commission on June 14, 2022).

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.

40

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: August 11, 2022

By:

/s/ Warren B. Kanders

Name:

Warren B. Kanders

Title:

Chief Executive Officer

(Principal Executive Officer)

Date: August 11, 2022

By:

/s/ Blaine Browers

Name:

Blaine Brower

Title:

Chief Financial Officer

(Principal Financial Officer and Principal Accounting Officer)

41

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

Exhibit 31.1

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)) 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) 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

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

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

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

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

Date: August 11, 2022

By:

/s/ Blaine Browers

Name:

Blaine Browers

Title:

Chief Financial Officer

 

(Principal Financial Officer)


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

Exhibit 31.2

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)) 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) 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

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

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

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

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

Date: August 11, 2022

By:

/s/ Warren B. Kanders

Name:

Warren B. Kanders

Title:

Chief Executive Officer

 

(Principal Executive Officer)


EX-32.1 4 cdre-20220630xex32d1.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 June 30, 2022 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.

2

Date: August 11, 2022

By:

/s/ Blaine Browers

Name:

Blaine Browers

Title:

Chief Financial Officer

 

(Principal Financial Officer)


EX-32.2 5 cdre-20220630xex32d2.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 June 30, 2022 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.

Date: August 11, 2022

By:

/s/ Warren B. Kanders

Name:

Warren B. Kanders

Title:

Chief Executive Officer

 

(Principal Executive Officer)


EX-101.SCH 6 cdre-20220630.xsd EX-101.SCH 00100 - Statement - CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 00200 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS) link:presentationLink link:calculationLink link:definitionLink 00201 - Statement - Consolidated Statements of Operations and Comprehensive Income link:presentationLink link:calculationLink link:definitionLink 00300 - Statement - 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 finite 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 40703 - Disclosure - COMMITMENTS AND CONTINGENCIES - Future minimum lease payments required under non-cancelable operating leases and capital lease agreements (Details) link:presentationLink link:calculationLink link:definitionLink 00400 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS EQUITY (DEFICIT) 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 40106 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Adopted Accounting Pronouncement (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 - New Credit Agreement (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 40903 - Disclosure - COMPENSATION PLANS - Stock Incentive Plan (Details) link:presentationLink link:calculationLink link:definitionLink 41001 - Disclosure - ASSETS AND LIABILITIES HELD FOR SALE (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 9941301 - Disclosure - SUBSEQUENT EVENTS (Details) link:presentationLink link:calculationLink link:definitionLink 00090 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 00205 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS) (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 - ASSETS AND LIABILITIES HELD FOR SALE 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 30703 - Disclosure - COMMITMENTS AND CONTINGENCIES (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 40702 - Disclosure - COMMITMENTS AND CONTINGENCIES - Leases (Details) link:presentationLink link:calculationLink link:definitionLink 40801 - Disclosure - INCOME TAXES (Details) link:presentationLink link:calculationLink link:definitionLink 41201 - Disclosure - SEGMENT DATA (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-20220630_cal.xml EX-101.CAL EX-101.DEF 8 cdre-20220630_def.xml EX-101.DEF EX-101.LAB 9 cdre-20220630_lab.xml EX-101.LAB EX-101.PRE 10 cdre-20220630_pre.xml EX-101.PRE XML 11 R1.htm IDEA: XBRL DOCUMENT v3.22.2
Document and Entity Information - shares
6 Months Ended
Jun. 30, 2022
Aug. 08, 2022
Document and Entity Information [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Jun. 30, 2022  
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 Non-accelerated Filer  
Entity Small Business true  
Entity Emerging Growth Company true  
Entity Ex Transition Period false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding   37,332,271
Entity Central Index Key 0001860543  
Current Fiscal Year End Date --12-31  
Document Fiscal Year Focus 2022  
Document Fiscal Period Focus Q2  
Amendment Flag false  
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.22.2
CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Jun. 30, 2022
Dec. 31, 2021
Current assets    
Cash and cash equivalents $ 28,862 $ 33,857
Accounts receivable, net of allowance for doubtful accounts of $817 and $645, respectively 56,521 48,344
Inventories 76,630 63,978
Prepaid expenses 6,932 10,353
Other current assets 5,956 3,171
Assets held for sale 251 278
Total current assets 175,152 159,981
Property and equipment, net of accumulated depreciation and amortization of $40,111 and $37,171, respectively 46,997 33,053
Deferred tax assets, net 8,133 7,059
Intangible assets, net 55,177 42,415
Goodwill 78,027 66,262
Other assets 5,990 3,026
Total assets 369,476 311,796
Current liabilities    
Accounts payable 29,145 19,328
Accrued liabilities 35,896 40,736
Income tax payable 918 1,255
Liabilities held for sale 106 128
Current portion of long-term debt 10,321 13,174
Total current liabilities 76,386 74,621
Long-term debt 142,244 146,516
Deferred tax liabilities 3,589 1,297
Other liabilities 959 722
Total liabilities 223,178 223,156
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 June 30, 2022 and December 31, 2021)
Shareholders' equity    
Common stock ($0.0001 par value, 190,000,000 shares authorized, 37,032,271 and 34,383,350 shares issued and outstanding as of June 30, 2022 and December 31, 2021, respectively) 4 3
Additional paid-in capital 194,704 127,606
Accumulated other comprehensive loss (105) (1,917)
Accumulated deficit (48,305) (37,052)
Total shareholders' equity 146,298 88,640
Total liabilities, mezzanine equity and shareholders' equity $ 369,476 $ 311,796
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.22.2
CONSOLIDATED BALANCE SHEETS (Parenthetical) - USD ($)
$ in Thousands
Jun. 30, 2022
Dec. 31, 2021
CONSOLIDATED BALANCE SHEETS    
Accounts receivable, allowance for doubtful accounts $ 817 $ 645
Property and equipment, accumulated depreciation and amortization $ 40,111 $ 37,171
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,032,271 34,383,350
Common stock, shares outstanding 37,032,271 34,383,350
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.22.2
CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
Jun. 30, 2022
Jun. 30, 2021
CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS)        
Net sales $ 118,232 $ 114,561 $ 222,638 $ 225,097
Cost of goods sold 75,011 66,333 139,228 132,910
Gross profit 43,221 48,228 83,410 92,187
Operating expenses        
Selling, general and administrative 32,749 31,444 86,699 59,495
Restructuring and transaction costs 1,203 1,219 1,802 1,540
Related party expense 1,112 142 1,234 295
Total operating expenses 35,064 32,805 89,735 61,330
Operating income (loss) 8,157 15,423 (6,325) 30,857
Other expense        
Interest expense (1,439) (5,621) (2,929) (10,665)
Other expense, net (756) (485) (961) (529)
Total other expense, net (2,195) (6,106) (3,890) (11,194)
Income (loss) before provision for income taxes 5,962 9,317 (10,215) 19,663
(Provision) benefit for income taxes (1,517) (2,502) 4,495 (5,984)
Net income (loss) $ 4,445 $ 6,815 $ (5,720) $ 13,679
Net income (loss) per share:        
Basic $ 0.13 $ 0.25 $ (0.16) $ 0.50
Diluted $ 0.12 $ 0.25 $ (0.16) $ 0.50
Weighted average shares outstanding:        
Basic 35,320,314 27,483,350 34,888,703 27,483,350
Diluted 35,688,620 27,483,350 34,888,703 27,483,350
Net income (loss) $ 4,445 $ 6,815 $ (5,720) $ 13,679
Other comprehensive (loss) income:        
Unrealized holding gains, net of tax 987   4,064  
Reclassification adjustments for gains included in net loss, net of tax 15   146  
Total unrealized gains on interest rate swaps, net of tax 1,002   4,210  
Foreign currency translation adjustments, net of tax (2,038) 254 (2,398) 538
Other comprehensive (loss) income (1,036) 254 1,812 538
Comprehensive income (loss), net of tax $ 3,409 $ 7,069 $ (3,908) $ 14,217
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.22.2
CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS) (Parenthetical) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
Jun. 30, 2022
Jun. 30, 2021
CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS)        
Unrealized holding gains, net of tax expense $ 329   $ 1,355  
Reclassification adjustments for gains included in net of income tax expense 5   49  
Foreign currency translation adjustments, net of tax expense $ 376 $ 94 $ 394 $ 187
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.22.2
CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
Cash Flows From Operating Activities:    
Net (loss) income $ (5,720) $ 13,679
Adjustments to reconcile net income to net cash provided by operating activities:    
Depreciation and amortization 7,380 7,020
Amortization of original issue discount and debt issue costs 367 2,029
Amortization of inventory step-up 1,344  
Deferred income taxes (4,594) 4,607
Stock-based compensation 26,327  
Provision for (recoveries from) losses on accounts receivable 240 (308)
Foreign exchange loss 1,107 (267)
Changes in operating assets and liabilities, net of impact of acquisitions:    
Accounts receivable (3,243) (2,429)
Inventories (1,461) (7,124)
Prepaid expenses and other assets 3,616 2,292
Accounts payable and other liabilities (345) 9,208
Net cash provided by operating activities 25,018 28,707
Cash Flows From Investing Activities:    
Purchase of property and equipment (2,473) (1,506)
Business acquisitions, net of cash acquired (55,039)  
Net cash used in investing activities (57,512) (1,506)
Cash Flows From Financing Activities:    
Proceeds from revolving credit facilities 48,000 176,548
Principal payments on revolving credit facilities (48,000) (176,548)
Principal payments on term loans (5,009) (13,687)
Principal payments on insurance premium financing (2,853) (1,225)
Payment of capital leases (22) (21)
Taxes paid in connection with employee stock transactions (6,216)  
Proceeds from secondary offering, net of underwriter discounts 49,703  
Deferred offering costs (2,715)  
Dividends distributed (5,533)  
Net cash provided by (used in) financing activities 27,355 (14,933)
Effect of foreign exchange rates on cash and cash equivalents 144 42
Change in cash and cash equivalents (4,995) 12,310
Cash and cash equivalents, beginning of period 33,857 2,873
Cash and cash equivalents, end of period 28,862 15,183
Supplemental Disclosure of Cash Flows Information:    
Cash paid for income taxes, net 241 473
Cash paid for interest 2,330 $ 8,524
Supplemental Disclosure of Non-Cash Investing and Financing Activities:    
Accruals and accounts payable for capital expenditures $ 17  
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.22.2
CONSOLIDATED STATEMENTS OF SHAREHOLDERS EQUITY (DEFICIT) - USD ($)
$ in Thousands
Common Stock
Additional Paid-In Capital
Accumulated Other Comprehensive Income Loss
Accumulated Deficit
Total
Balance at the beginning at Dec. 31, 2020 $ 3 $ 48,670 $ (2,860) $ (36,962) $ 8,851
Balance at the beginning (in shares) at Dec. 31, 2020 27,483,350        
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)       6,864 6,864
Foreign currency translation adjustments     284   284
Balance at the end at Mar. 31, 2021 $ 3 48,670 (2,576) (30,098) 15,999
Balance at the end (in shares) at Mar. 31, 2021 27,483,350        
Balance at the beginning at Dec. 31, 2020 $ 3 48,670 (2,860) (36,962) 8,851
Balance at the beginning (in shares) at Dec. 31, 2020 27,483,350        
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)         13,679
Foreign currency translation adjustments         538
Balance at the end at Jun. 30, 2021 $ 3 48,670 (2,322) (23,283) 23,068
Balance at the end (in shares) at Jun. 30, 2021 27,483,350        
Balance at the beginning at Mar. 31, 2021 $ 3 48,670 (2,576) (30,098) 15,999
Balance at the beginning (in shares) at Mar. 31, 2021 27,483,350        
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)       6,815 6,815
Foreign currency translation adjustments     254   254
Balance at the end at Jun. 30, 2021 $ 3 48,670 (2,322) (23,283) 23,068
Balance at the end (in shares) at Jun. 30, 2021 27,483,350        
Balance at the beginning at Dec. 31, 2021 $ 3 127,606 (1,917) (37,052) $ 88,640
Balance at the beginning (in shares) at Dec. 31, 2021 34,383,350       34,383,350
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)       (10,165) $ (10,165)
Dividends declared       (2,750) (2,750)
Stock-based compensation   22,436     22,436
Common stock issued under employee compensation plans   1,152     1,152
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)     (6,216)
Common stock withheld related to net share settlement of stock-based compensation (in shares) (182,069)        
Foreign currency translation adjustments     (360)   (360)
Change in fair value of derivative instruments     3,208   3,208
Balance at the end at Mar. 31, 2022 $ 3 144,978 931 (49,967) 95,945
Balance at the end (in shares) at Mar. 31, 2022 34,782,271        
Balance at the beginning at Dec. 31, 2021 $ 3 127,606 (1,917) (37,052) $ 88,640
Balance at the beginning (in shares) at Dec. 31, 2021 34,383,350       34,383,350
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net income (loss)         $ (5,720)
Foreign currency translation adjustments         (2,398)
Balance at the end at Jun. 30, 2022 $ 4 194,704 (105) (48,305) $ 146,298
Balance at the end (in shares) at Jun. 30, 2022 37,032,271       37,032,271
Balance at the beginning at Mar. 31, 2022 $ 3 144,978 931 (49,967) $ 95,945
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 4,445
Issuance of common share in secondary offering, net of underwriter discounts and issuance costs $ 1 46,987     46,988
Issuance of common share in secondary offering, net of underwriter discounts and issuance costs (in shares) 2,250,000        
Dividends declared       (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 at the end at Jun. 30, 2022 $ 4 $ 194,704 $ (105) $ (48,305) $ 146,298
Balance at the end (in shares) at Jun. 30, 2022 37,032,271       37,032,271
XML 18 R8.htm IDEA: XBRL DOCUMENT v3.22.2
SIGNIFICANT ACCOUNTING POLICIES
6 Months Ended
Jun. 30, 2022
SIGNIFICANT ACCOUNTING POLICIES  
SIGNIFICANT ACCOUNTING POLICIES

1.    SIGNIFICANT ACCOUNTING POLICIES

Nature of Operations

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 and Basis of Presentation

The accompanying consolidated financial statements of the Company have been prepared in accordance with accounting principles generally accepted in the United States ("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 interim consolidated 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 interim consolidated 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 transactions have been eliminated in consolidation.

Stock Split

In July 2021, the Company effected a 50-for-1 stock split of its common stock and preferred stock. All share and per share information has been retroactively adjusted to reflect the stock split for all periods presented.

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 may 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 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 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.

The presentation of revenue by channel previously reported in the notes to the consolidated financial statements has been reclassified to conform to the current financial statement presentation.

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:

June 30, 2022

December 31, 2021

Carrying 

Fair Value

Carrying 

Fair Value

    

amount

    

Level 1

    

Level 2

    

Level 3

    

amount

    

Level 1

    

Level 2

    

Level 3

Assets:

 

  

 

  

 

  

 

  

 

  

 

  

 

  

 

  

Interest rate swap (Note 6)

$

6,830

$

$

6,830

$

$

1,607

$

$

1,607

$

Liabilities:

Interest rate swap (Note 6)

$

$

$

$

$

389

$

$

389

$

There were no transfers of assets or liabilities between levels during the six months ended June 30, 2022 and 2021.

The carrying value of our long-term debt obligations approximates the fair value, as the long-term debt was entered into recently and contains a floating interest rate component.

Goodwill and Other Intangible Assets

The Company tests goodwill and intangible assets determined to have indefinite useful lives for impairment annually, or more frequently if events or circumstances indicate that assets might be impaired. The Company performs these annual impairment tests as of October 31st each year.

In evaluating goodwill for impairment, qualitative factors are considered to determine whether it is more likely than not that the fair value of a reporting unit is less than its carrying amount. Some of these qualitative factors may include macroeconomic conditions, industry and market considerations, a change in financial performance, or entity-specific events. If, through this qualitative assessment, the conclusion is made that it is more likely than not that a reporting unit’s fair value is less than its carrying amount, the Company performs a two-step goodwill impairment test. The first step involves a comparison of the fair value of a reporting unit to its carrying value. If the carrying amount of the reporting unit exceeds its fair value, the second step of the process is performed, which compares the implied value of the reporting unit goodwill with the carrying value of the goodwill of that reporting unit. If the carrying value of the goodwill of a reporting unit exceeds the implied fair value of that goodwill, an impairment loss is recognized in an amount equal to that excess.

The Company determines the fair value of its reporting units based on a combination of the income approach and market approach, weighted based on the circumstances. Both values are discounted using a rate that reflects the Company’s best estimate of the weighted average cost of capital of a market participant and is adjusted for appropriate risk factors.

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.

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 consolidated statements of operations and comprehensive income (loss). 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 are capitalized and amortized over the life of the contract. These costs are recorded in selling, general and administrative expenses in the Company’s consolidated statements of operations and comprehensive income (loss).

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 consolidated statements of operations and comprehensive income (loss).

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

Three Months Ended June 30, 

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

Beginning accrued warranty expense

$

1,233

$

1,140

$

1,256

$

1,133

Current period claims

 

29

 

(85)

 

(87)

 

(141)

Provision for current period sales

 

165

 

89

 

258

 

152

Ending accrued warranty expense

$

1,427

$

1,144

$

1,427

$

1,144

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 June 30, 

    

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

Net income (loss)

$

4,445

$

6,815

$

(5,720)

$

13,679

 

  

 

  

 

  

 

  

Weighted average shares outstanding - basic

 

35,320,314

 

27,483,350

 

34,888,703

 

27,483,350

Effect of dilutive securities:

Stock-based awards

368,306

Weighted average shares outstanding - diluted

 

35,688,620

 

27,483,350

 

34,888,703

 

27,483,350

Net income (loss) per share:

 

  

 

  

 

  

 

  

Basic

$

0.13

$

0.25

$

(0.16)

$

0.50

Diluted

$

0.12

$

0.25

$

(0.16)

$

0.50

For the six months ended June 30, 2022, 3,121 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. There were no dilutive instruments outstanding for the three and six months ended June 30, 2021.

Recent Accounting Pronouncements

Adopted Accounting Pronouncements

In February 2016, the FASB issued ASU 2016-02, Leases (Topic 842), which is intended to increase transparency and comparability among organizations by requiring the recognition of right-of-use (“ROU”) assets and lease liabilities on the balance sheet. In July 2018, the FASB issued additional guidance which provided an additional transition method for adopting the updated guidance. Under the additional transition method, entities may elect to recognize a cumulative-effect adjustment to the opening balance of retained earnings in the year of adoption. In June 2020, the FASB issued additional guidance which extends the effective date of ASU 2016-02 for emerging growth companies to begin in fiscal years beginning after December 15, 2021, and interim periods beginning after December 15, 2022. Early adoption is permitted. The Company adopted this standard for its annual period as of January 1, 2022 by utilizing the effective date option of the modified retrospective transition approach, which does not require application of the guidance to comparative periods in the year of adoption. The primary effect of adoption will be recording ROU assets and corresponding lease liabilities for current operating leases. We believe the adoption of this standard will have a significant effect on our consolidated balance sheets and currently estimate a ROU asset and lease liability of $12,300 to $13,200 to be recorded on January 1, 2022. We do not anticipate that the adoption of this standard will have a significant impact on our consolidated statements of operations and comprehensive income (loss) or our consolidated statements of cash flows.  

Accounting Pronouncements Not Yet Adopted

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. Early adoption is permitted. The Company plans to adopt this standard on January 1, 2023 and is currently in the process of evaluating the impact of the adoption of this standard on its consolidated financial statements.

In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes. ASU 2019-12 simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740 and improves consistent application of and simplifies GAAP for other areas of Topic 740 by clarifying existing guidance. For emerging growth companies, this ASU is effective for fiscal years beginning after December 15, 2021, and interim periods within those fiscal years beginning after December 15, 2022. Early adoption is permitted. The Company is currently evaluating the impact the adoption of this ASU will have on its consolidated financial statements and related disclosures.

There were no other new accounting standards that the Company expects to have a potential material impact to the financial position or results of operations upon adoption.

XML 19 R9.htm IDEA: XBRL DOCUMENT v3.22.2
ACQUISITIONS
6 Months Ended
Jun. 30, 2022
ACQUISITIONS  
ACQUISITIONS

2.    ACQUISITIONS

Radar Acquisition

On January 11, 2022, Safariland, LLC, a wholly-owned subsidiary of the Company, completed the accretive acquisition of Radar Leather Division S.r.l. (“Radar”), a premiere 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 the six months ended June 30, 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 preliminary fair value amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. The fair value estimates for the purchase price allocation are based on the Company’s best estimates and assumptions as of the reporting date and are considered preliminary. Since our initial purchase price allocation, we have decreased goodwill by $422 for revisions made to cash paid. The fair value measurements of all identifiable assets and liabilities, and the resulting goodwill related to the Radar acquisition are subject to change and the final purchase price allocation could be different from the amounts presented below. We expect to finalize the valuations as soon as practicable, but no later than one year from the date of the acquisition. 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 Products 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

2,500

Prepaid expenses

682

Other current assets

612

Property and equipment

3,053

Intangible assets

10,200

Goodwill

6,289

Total assets acquired

25,683

Accounts payable

1,120

Deferred tax liabilities

2,548

Accrued liabilities

2,106

Long-term debt

544

Total liabilities assumed

6,318

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 $6,289 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 Products segment from the date of acquisition. The acquisition was not material to our consolidated financial statements.

Cyalume Acquisition

On May 4, 2022, Safariland, LLC, a wholly-owned subsidiary of the Company, completed the accretive 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 $2,036 and $2,307 for the three and six months ended June 30, 2022, respectively.

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

Cash paid

    

$

37,508

Less: cash acquired

 

(1,834)

Total consideration, net

$

35,674

The following table summarizes the total purchase price consideration and the preliminary fair value amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. The fair value estimates for the purchase price allocation are based on the Company’s best estimates and assumptions as of the reporting date and are considered preliminary. The fair value measurements of identifiable assets and liabilities, and the resulting goodwill related to the Cyalume acquisition are subject to change and the final purchase price allocation could be different from the amounts presented below. We expect to finalize the valuations as soon as practicable, but no later than one year from the date of the acquisition. 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 Products segment and reflects synergies and additional legacy growth and profitability expected from this acquisition through expansion into new markets and customers.

Total consideration, net

    

$

35,674

Accounts receivable

$

3,302

Inventories

10,908

Prepaid expenses

255

Other current assets

10

Property and equipment

11,701

Intangible assets

8,300

Goodwill

6,641

Total assets acquired

41,117

Accounts payable

1,080

Deferred tax liabilities

2,497

Accrued liabilities

1,578

Other long-term liabilities

288

Total liabilities assumed

5,443

Net assets acquired

$

35,674

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

15

Technology

3,600

 

10

Trademarks

800

Indefinite

Total

$

8,300

The full amount of goodwill of $6,641 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 Products segment from the date of acquisition. The acquisition was not material to our consolidated financial statements.

XML 20 R10.htm IDEA: XBRL DOCUMENT v3.22.2
REVENUE RECOGNITION
6 Months Ended
Jun. 30, 2022
REVENUE RECOGNITION  
REVENUE RECOGNITION

3.    REVENUE RECOGNITION

The following tables disaggregate net sales by channel and geography:

Three months ended June 30, 

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

U.S. state and local agencies (a)

$

66,442

$

64,449

$

124,365

$

123,826

Commercial

 

11,327

 

7,591

 

22,361

 

19,433

U.S. federal agencies

 

9,448

 

10,486

 

17,362

 

26,079

International

 

29,506

 

30,040

 

56,525

 

52,034

Other

 

1,509

 

1,995

 

2,025

 

3,725

Net sales

$

118,232

$

114,561

$

222,638

$

225,097

(a) Includes all Distribution sales

Three months ended June 30, 

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

    

United States

$

88,726

$

84,521

$

166,113

$

173,063

International

 

29,506

 

30,040

 

56,525

 

52,034

$

118,232

$

114,561

$

222,638

$

225,097

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 which are satisfied at a future point of time. Contract liabilities are reduced when the performance obligation is satisfied. Contract liabilities are included in accrued liabilities in the Company’s consolidated balance sheets and totaled $6,272 and $10,949 as of June 30, 2022 and December 31, 2021, respectively. Revenue recognized during the three and six months ended June 30, 2022 from amounts included in contract liabilities as of December 31, 2021 was $2,225 and $7,216, respectively.

Remaining Performance Obligations

As of June 30, 2022, we had $18,395 of remaining 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 June 30, 2022. We expect to recognize approximately 63% of this balance over the next twelve months and expect the remainder to be recognized in the following two years.

XML 21 R11.htm IDEA: XBRL DOCUMENT v3.22.2
INVENTORIES
6 Months Ended
Jun. 30, 2022
INVENTORIES  
INVENTORIES

4.    INVENTORIES

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

    

    

June 30, 2022

    

December 31, 2021

Finished goods

$

30,492

$

28,707

Work-in-process

 

8,881

 

4,053

Raw materials and supplies

 

37,257

 

31,218

$

76,630

$

63,978

XML 22 R12.htm IDEA: XBRL DOCUMENT v3.22.2
GOODWILL AND OTHER INTANGIBLE ASSETS
6 Months Ended
Jun. 30, 2022
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 six months ended June 30, 2022:

    

Products

    

Distribution

    

Total

Balance, December 31, 2021

$

63,646

$

2,616

$

66,262

Radar acquisition

6,711

6,711

Foreign currency translation adjustments

 

(463)

 

 

(463)

Balance, March 31, 2022

$

69,894

$

2,616

$

72,510

Radar acquisition measurement period adjustment

(422)

(422)

Cyalume acquisition

6,641

6,641

Foreign currency translation adjustments

(702)

(702)

Balance, June 30, 2022

$

75,411

$

2,616

$

78,027

Gross goodwill and accumulated impairment losses was $85,612 and $7,585, respectively, as of June 30, 2022 and $73,899 and $7,585, respectively, as of December 31, 2021.

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 June 30, 2022 and December 31, 2021:

June 30, 2022

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

85,908

 

$

(55,789)

 

$

30,119

 

11

Technology

 

15,956

 

 

(11,124)

 

 

4,832

 

8

Tradenames

 

6,492

 

 

(3,733)

 

 

2,759

 

4

Non-compete agreements

 

977

 

 

(977)

 

 

 

4

$

109,333

 

$

(71,623)

 

$

37,710

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

17,467

 

 

 

 

17,467

 

Indefinite

Total

$

126,800

 

$

(71,623)

 

$

55,177

 

  

December 31, 2021

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

74,078

$

(52,536)

 

$

21,542

 

11

Technology

 

11,978

 

 

(10,988)

 

 

990

 

7

Tradenames

 

6,473

 

 

(3,264)

 

 

3,209

 

4

Non-compete agreements

 

1,037

 

 

(1,037)

 

 

 

4

$

93,566

 

$

(67,825)

 

$

25,741

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

16,674

 

 

 

 

16,674

 

Indefinite

Total

$

110,240

 

$

(67,825)

 

$

42,415

 

  

The Company recorded amortization expense of $2,240 and $2,179 for the three months ended June 30, 2022 and 2021, respectively, of which $130 and $200 was included in cost of goods sold in the consolidated statements of operations and comprehensive income (loss) for the respective periods. Amortization expense for the six months ended June 30, 2022 and 2021 was $4,397 and $4,365, respectively, of which $180 and $398 was included in cost of goods sold in the consolidated statements of operations and comprehensive income (loss) for the respective periods.

The estimated amortization expense for finite-lived intangible assets for the remaining six months of 2022, the next four years and thereafter is as follows:

Remainder of 2022

    

$

4,277

2023

 

7,923

2024

 

5,029

2025

 

3,071

2026

 

2,661

Thereafter

 

14,749

$

37,710

XML 23 R13.htm IDEA: XBRL DOCUMENT v3.22.2
DEBT
6 Months Ended
Jun. 30, 2022
DEBT  
DEBT

6.    DEBT

The Company’s debt is as follows:

    

June 30, 2022

    

December 31, 2021

Short-term debt:

 

  

 

  

Insurance premium financing

$

321

$

3,174

Current portion of term loan

 

10,000

 

10,000

$

10,321

$

13,174

Long-term debt:

 

  

 

  

Revolver

 

 

Term loan

 

143,564

 

148,564

Other

 

506

 

$

144,070

$

148,564

Unamortized debt discount and debt issuance costs

 

(1,826)

 

(2,048)

Total long-term debt, net

$

142,244

$

146,516

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

Remainder of 2022

    

$

5,000

2023

 

10,000

2024

 

10,127

2025

 

10,127

2026

 

118,690

Thereafter

 

126

Total principal payments

$

154,070

New 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 “New 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 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 New 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 June 30, 2022 and December 31, 2021. As of June 30, 2022, there were $2,292 in outstanding letters of credit and $97,708 of availability.

The Borrower may elect to have the Revolving Loan and Term Loan under the New Credit Agreement bear interest at a base rate or a LIBOR rate, in each case, plus an applicable margin. The applicable margin for these borrowings will range from 0.50% to 1.50% per annum, in the case of base rate borrowings, and 1.50% to 2.50% per annum, in the case of LIBOR borrowings, in each case based upon the level of the Company’s consolidated total net leverage ratio. The New Credit Agreement also requires the Borrower to pay a commitment fee on the unused portion of the loan commitments. Such commitment fee will range 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 New 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 New 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 New 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 New 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 a LIBOR rate, 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 June 30, 2022 and December 31, 2021.

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

In September 2021, we entered into an interest rate swap agreement to hedge forecasted monthly interest rate payments on our floating rate debt. As of June 30, 2022, we had the following interest rate swap agreement (the “Swap Agreement”):

Effective date

    

Notional amount

    

Fixed rate

 

September 30, 2021 through July 23, 2026

    

$

100,000

    

0.875

%

Under the terms of the Swap Agreement, we receive payments based on the 1-month LIBOR (approximately 3.67% as of June 30, 2022).

During the six months ended June 30, 2022, there were no interest rate swap agreements that expired.

We entered into the Swap Agreement to convert a portion of the interest rate exposure on our floating rate debt from variable to fixed. We designated this Swap Agreement as a cash flow hedge. A portion of the amount included in accumulated other comprehensive loss 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 Agreement 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 Agreement.

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 agreement, and we believe we will have debt outstanding through the expiration date of the swap such that the occurrence of future cash flow hedges remains probable.

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

    

Balance sheet accounts

    

June 30, 2022

    

December 31, 2021

Other current assets

$

2,115

$

Other assets

$

4,715

$

1,607

Accrued liabilities

$

$

389

A cumulative gain, net of tax, of $5,123 and $913 as of June 30, 2022 and December 31, 2021, respectively, is recorded in accumulated other comprehensive loss.

The amount of gain, net of tax recognized in other comprehensive income for the three and six months ended June 30, 2022 was $987 and $4,064, respectively. There was $15 and $146 reclassified from accumulated other comprehensive loss into earnings for the three and six months ended June 30, 2022, respectively.

As of June 30, 2022, approximately $2,121 is expected to be reclassified from accumulated other comprehensive loss into interest expense over the next 12 months.

XML 24 R14.htm IDEA: XBRL DOCUMENT v3.22.2
COMMITMENTS AND CONTINGENCIES
6 Months Ended
Jun. 30, 2022
COMMITMENTS AND CONTINGENCIES  
COMMITMENTS AND CONTINGENCIES

7.    COMMITMENTS AND CONTINGENCIES

Legal Proceedings

In March 2020, the Company settled an administrative enforcement action filed by the U.S. Federal Trade Commission (“FTC”) relating to Company’s sale of VieVu, LLC to Axon Enterprise Inc. (“Axon”) wherein the FTC alleged that the operative agreements contained non-compete and non-solicitation provisions in violation of Section 5 of the Federal Trade Commission Act, as amended, 15 U.S.C. § 45, and Section 7 of the Clayton Act, as amended, 15 U.S.C. § 18. The FTC’s administrative complaint sought only injunctive relief against the Company to enjoin the enforcement of these provisions, now and in the future, and did not seek monetary damages against the Company. In January 2020, the Company and Axon had rescinded these provisions. Pursuant to a consent agreement and proposed consent order entered into by the FTC and the Company, on June 11, 2020, the FTC issued a Decision and Order accepting the Consent Agreement (the “Order”). Under the Order, the Company agreed to not modify and reinstate the rescinded provisions and to not enter into any new similar provisions with Axon, absent prior approval from the FTC. In addition, as part of the Company’s compliance program, the Order imposes an obligation to distribute to, and train the directors and officers on, the requirements of the consent order and to report annually for five years to the FTC ensuring compliance with the consent order. On July 10, 2020, the Company filed its Interim Verified Compliance Report and, thereafter, on June 11, 2021 and June 10, 2022, filed its Annual Compliance Reports, each as required by the Order.

In June 2020, the Company received a Civil Investigative Demand (“CID”) from the United States Department of Justice (“DOJ”), Western District of Washington (Seattle, WA), pertaining to a False Claims Act investigation, 31 U.S.C, sections 3729-3733 (“FCA”), concerning allegations that soft body armor vest accessory panels sold by the Company are falsely labeled as compliant with the National Institute of Justice performance standards. In September 2020, the Company made its First Production of Documents which contained only documents and data that had been deemed to be of a “priority” nature pursuant to an agreement reached between the Company’s counsel and the Assistant U.S. Attorney handling the matter. In July 2021, the Company received a request for additional information relating to the subject matter of the investigation, with which the Company complied. In October 2021, November 2021 and December 2021, the Company produced additional documents responsive to the correspondence containing requests for specific documents and supplemental information. At this preliminary stage of the investigation, the Company does not have enough information to make an evaluation of the merits, exposure or potential risks regarding this matter.

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 on May 16, 2022 and, on July 7, 2022, Safariland timely filed its opening brief.  Plaintiff has 30 days to file a response brief, and Safariland will have 21 days to file a reply, provided that it is no later than seven days before oral argument is scheduled. While any litigation contains an element of uncertainty, the Company believes it is reasonably possible, not probable, that the Company could incur losses related to this case, however, any losses would be indemnified by our insurance carrier under applicable policies.

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.

Leases

The Company leases office, warehouse, and distribution space under non-cancelable operating leases. As leases expire, it can be expected that, in the normal course of business, certain leases will be renewed or replaced. Our leases generally contain multi-year renewal options and escalation clauses. Total rent expense of the Company for the three months ended June 30, 2022 and 2021 was $1,202 and $1,175, respectively, and for the six months ended June 30, 2022 and 2021 was $2,402 and $2,325, respectively.

Future minimum lease payments required under non-cancelable operating leases that have initial or remaining non-cancelable lease terms in excess of one year for the remaining six months of 2022, the next four years and thereafter is as follows:

Remainder of 2022

$

2,358

2023

 

4,276

2024

 

3,077

2025

 

1,618

2026

 

639

Thereafter

 

104

Total minimum lease payments

$

12,072

There were no material future minimum sublease payments to be received under non-cancelable subleases as of June 30, 2022. There was no material sublease income for the three and six months ended June 30, 2022 and 2021.

XML 25 R15.htm IDEA: XBRL DOCUMENT v3.22.2
INCOME TAXES
6 Months Ended
Jun. 30, 2022
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 June 30, 2022, the Company’s tax years subsequent to 2016 are subject to examination by tax authorities with few exceptions. During the six months ended June 30, 2022, one of the Company’s Canadian subsidiaries concluded an examination of its tax filings for the period June 1, 2016 through December 31, 2017 that resulted in no changes to the filings or the amount of tax due. The 2018 and 2019 tax returns of a separate Canadian subsidiary are currently under examination by the Canadian Revenue Agency.

In assessing the realizability of deferred tax assets, the Company performs a quarterly evaluation of whether it is more likely than not that some portion or all of the deferred income tax assets will not be realized. During the course of this evaluation, the Company considers all available positive and negative evidence and if, based upon the weight of available evidence, it is more likely than not the deferred tax assets will not be realized, a valuation allowance is recorded. Based on the Company’s evaluation, a valuation allowance of $1,890 has been recorded as of June 30, 2022.

The Company’s effective tax rate for the three months ended June 30, 2022 and 2021 was 25.4% and 26.9%, respectively, and 44.0% and 30.4% for the six months ended June 30, 2022 and 2021, respectively. Our effective tax rate for the three and six months ended June 30, 2022 and 2021 differs from our statutory rate primarily due to nondeductible executive compensation.

XML 26 R16.htm IDEA: XBRL DOCUMENT v3.22.2
COMPENSATION PLANS
6 Months Ended
Jun. 30, 2022
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 $174 and $328 for the three months ended June 30, 2022 and 2021, respectively, and $558 and $1,280 for the six months ended June 30, 2022 and 2021, respectively, and is included in selling, general and administrative in the Company’s consolidated statements of operations and comprehensive income (loss).

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 (split-adjusted) 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 will 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 will 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 consolidated statements of operations and comprehensive income (loss) on the modification date. Unrecognized compensation expense related to the unvested units was $11,516 as of the modification date.

Stock Incentive Plan

On March 9, 2022, the Company’s board of directors granted 85,108 restricted stock awards (“RSAs”) and issued 309,479 stock options under the Cadre Stock Incentive Plan. The RSAs will vest in three equal installments over a three-year period from the date of grant and have a grant date fair value of $23.45, the closing stock price of the Company on the date of grant. The options issued will vest and become exercisable in equal installments over a three-year period from the date of grant and expire ten years from the date of the grant. The fair value of the options has been estimated as of the grant date using the Black-Scholes option-pricing model and resulted in a grant date fair value of approximately $6.72 per option. 

XML 27 R17.htm IDEA: XBRL DOCUMENT v3.22.2
ASSETS AND LIABILITIES HELD FOR SALE
6 Months Ended
Jun. 30, 2022
ASSETS AND LIABILITIES HELD FOR SALE  
ASSETS AND LIABILITIES HELD FOR SALE

10.     ASSETS AND LIABILITIES HELD FOR SALE

In October 2021, the Company designated our Daventry, UK facility as held for sale. Accordingly, during 2021, the Company determined that the assets and liabilities associated with the Daventry facility met the criteria for classification as held for sale but did not meet the criteria for classification as discontinued operations as the deconsolidation did not represent a strategic shift in the business. Total assets and liabilities associated with the Daventry facility were $251 and $106, respectively, and are presented in our consolidated balance sheet as of June 30, 2022 as current assets held for sale and current liabilities held for sale, respectively. The Company is actively marketing this facility and expects to complete the sale of this facility in 2022.

XML 28 R18.htm IDEA: XBRL DOCUMENT v3.22.2
RELATED PARTY TRANSACTIONS
6 Months Ended
Jun. 30, 2022
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 $112 and $142 for the three months ended June 30, 2022 and 2021, respectively, and $234 and $295 for the six months ended June 30, 2022 and 2021, respectively. Rent expense related to these leases is included in related party expense in the Company’s consolidated statements of operations and comprehensive income (loss).

During the six months ended June 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 consolidated statements of operations and comprehensive income (loss).
$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 consolidated balance sheets.
XML 29 R19.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT DATA
6 Months Ended
Jun. 30, 2022
SEGMENT DATA  
SEGMENT DATA

12.     SEGMENT DATA

Our operations are comprised of two reportable segments: Products 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.

    

Six months ended June 30, 2022

Reconciling

    

    Products    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

185,223

    

$

47,824

    

$

(10,409)

    

$

222,638

Cost of goods sold

112,067

37,578

(10,417)

139,228

Gross profit

$

73,156

$

10,246

$

8

$

83,410

    

Six months ended June 30, 2021

Reconciling

    

    Products    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

190,121

    

$

47,579

    

$

(12,603)

    

$

225,097

Cost of goods sold

110,028

35,476

(12,594)

132,910

Gross profit

$

80,093

$

12,103

$

(9)

$

92,187

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

XML 30 R20.htm IDEA: XBRL DOCUMENT v3.22.2
SIGNIFICANT ACCOUNTING POLICIES (Policies)
6 Months Ended
Jun. 30, 2022
SIGNIFICANT ACCOUNTING POLICIES  
Nature of Operations

Nature of Operations

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 and Basis of Presentation

Principles of Consolidation and Basis of Presentation

The accompanying consolidated financial statements of the Company have been prepared in accordance with accounting principles generally accepted in the United States ("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 interim consolidated 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 interim consolidated 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 transactions have been eliminated in consolidation.

Stock Split

Stock Split

In July 2021, the Company effected a 50-for-1 stock split of its common stock and preferred stock. All share and per share information has been retroactively adjusted to reflect the stock split for all periods presented.

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 may 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 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 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.

The presentation of revenue by channel previously reported in the notes to the consolidated financial statements has been reclassified to conform to the current financial statement presentation.

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:

June 30, 2022

December 31, 2021

Carrying 

Fair Value

Carrying 

Fair Value

    

amount

    

Level 1

    

Level 2

    

Level 3

    

amount

    

Level 1

    

Level 2

    

Level 3

Assets:

 

  

 

  

 

  

 

  

 

  

 

  

 

  

 

  

Interest rate swap (Note 6)

$

6,830

$

$

6,830

$

$

1,607

$

$

1,607

$

Liabilities:

Interest rate swap (Note 6)

$

$

$

$

$

389

$

$

389

$

There were no transfers of assets or liabilities between levels during the six months ended June 30, 2022 and 2021.

The carrying value of our long-term debt obligations approximates the fair value, as the long-term debt was entered into recently and contains a floating interest rate component.

Goodwill and Other Intangible Assets

Goodwill and Other Intangible Assets

The Company tests goodwill and intangible assets determined to have indefinite useful lives for impairment annually, or more frequently if events or circumstances indicate that assets might be impaired. The Company performs these annual impairment tests as of October 31st each year.

In evaluating goodwill for impairment, qualitative factors are considered to determine whether it is more likely than not that the fair value of a reporting unit is less than its carrying amount. Some of these qualitative factors may include macroeconomic conditions, industry and market considerations, a change in financial performance, or entity-specific events. If, through this qualitative assessment, the conclusion is made that it is more likely than not that a reporting unit’s fair value is less than its carrying amount, the Company performs a two-step goodwill impairment test. The first step involves a comparison of the fair value of a reporting unit to its carrying value. If the carrying amount of the reporting unit exceeds its fair value, the second step of the process is performed, which compares the implied value of the reporting unit goodwill with the carrying value of the goodwill of that reporting unit. If the carrying value of the goodwill of a reporting unit exceeds the implied fair value of that goodwill, an impairment loss is recognized in an amount equal to that excess.

The Company determines the fair value of its reporting units based on a combination of the income approach and market approach, weighted based on the circumstances. Both values are discounted using a rate that reflects the Company’s best estimate of the weighted average cost of capital of a market participant and is adjusted for appropriate risk factors.

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.

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 consolidated statements of operations and comprehensive income (loss). 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 are capitalized and amortized over the life of the contract. These costs are recorded in selling, general and administrative expenses in the Company’s consolidated statements of operations and comprehensive income (loss).

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 consolidated statements of operations and comprehensive income (loss).

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

Three Months Ended June 30, 

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

Beginning accrued warranty expense

$

1,233

$

1,140

$

1,256

$

1,133

Current period claims

 

29

 

(85)

 

(87)

 

(141)

Provision for current period sales

 

165

 

89

 

258

 

152

Ending accrued warranty expense

$

1,427

$

1,144

$

1,427

$

1,144

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 June 30, 

    

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

Net income (loss)

$

4,445

$

6,815

$

(5,720)

$

13,679

 

  

 

  

 

  

 

  

Weighted average shares outstanding - basic

 

35,320,314

 

27,483,350

 

34,888,703

 

27,483,350

Effect of dilutive securities:

Stock-based awards

368,306

Weighted average shares outstanding - diluted

 

35,688,620

 

27,483,350

 

34,888,703

 

27,483,350

Net income (loss) per share:

 

  

 

  

 

  

 

  

Basic

$

0.13

$

0.25

$

(0.16)

$

0.50

Diluted

$

0.12

$

0.25

$

(0.16)

$

0.50

For the six months ended June 30, 2022, 3,121 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. There were no dilutive instruments outstanding for the three and six months ended June 30, 2021.

Recent Accounting Pronouncements

Recent Accounting Pronouncements

Adopted Accounting Pronouncements

In February 2016, the FASB issued ASU 2016-02, Leases (Topic 842), which is intended to increase transparency and comparability among organizations by requiring the recognition of right-of-use (“ROU”) assets and lease liabilities on the balance sheet. In July 2018, the FASB issued additional guidance which provided an additional transition method for adopting the updated guidance. Under the additional transition method, entities may elect to recognize a cumulative-effect adjustment to the opening balance of retained earnings in the year of adoption. In June 2020, the FASB issued additional guidance which extends the effective date of ASU 2016-02 for emerging growth companies to begin in fiscal years beginning after December 15, 2021, and interim periods beginning after December 15, 2022. Early adoption is permitted. The Company adopted this standard for its annual period as of January 1, 2022 by utilizing the effective date option of the modified retrospective transition approach, which does not require application of the guidance to comparative periods in the year of adoption. The primary effect of adoption will be recording ROU assets and corresponding lease liabilities for current operating leases. We believe the adoption of this standard will have a significant effect on our consolidated balance sheets and currently estimate a ROU asset and lease liability of $12,300 to $13,200 to be recorded on January 1, 2022. We do not anticipate that the adoption of this standard will have a significant impact on our consolidated statements of operations and comprehensive income (loss) or our consolidated statements of cash flows.  

Accounting Pronouncements Not Yet Adopted

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. Early adoption is permitted. The Company plans to adopt this standard on January 1, 2023 and is currently in the process of evaluating the impact of the adoption of this standard on its consolidated financial statements.

In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes. ASU 2019-12 simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740 and improves consistent application of and simplifies GAAP for other areas of Topic 740 by clarifying existing guidance. For emerging growth companies, this ASU is effective for fiscal years beginning after December 15, 2021, and interim periods within those fiscal years beginning after December 15, 2022. Early adoption is permitted. The Company is currently evaluating the impact the adoption of this ASU will have on its consolidated financial statements and related disclosures.

There were no other new accounting standards that the Company expects to have a potential material impact to the financial position or results of operations upon adoption.

XML 31 R21.htm IDEA: XBRL DOCUMENT v3.22.2
SIGNIFICANT ACCOUNTING POLICIES (Tables)
6 Months Ended
Jun. 30, 2022
SIGNIFICANT ACCOUNTING POLICIES  
Summary of fair value hierarchy for assets and liabilities measured at fair value on a recurring basis

June 30, 2022

December 31, 2021

Carrying 

Fair Value

Carrying 

Fair Value

    

amount

    

Level 1

    

Level 2

    

Level 3

    

amount

    

Level 1

    

Level 2

    

Level 3

Assets:

 

  

 

  

 

  

 

  

 

  

 

  

 

  

 

  

Interest rate swap (Note 6)

$

6,830

$

$

6,830

$

$

1,607

$

$

1,607

$

Liabilities:

Interest rate swap (Note 6)

$

$

$

$

$

389

$

$

389

$

Summary of changes in the accrued warranties and related costs

Three Months Ended June 30, 

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

Beginning accrued warranty expense

$

1,233

$

1,140

$

1,256

$

1,133

Current period claims

 

29

 

(85)

 

(87)

 

(141)

Provision for current period sales

 

165

 

89

 

258

 

152

Ending accrued warranty expense

$

1,427

$

1,144

$

1,427

$

1,144

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

Three months ended June 30, 

    

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

Net income (loss)

$

4,445

$

6,815

$

(5,720)

$

13,679

 

  

 

  

 

  

 

  

Weighted average shares outstanding - basic

 

35,320,314

 

27,483,350

 

34,888,703

 

27,483,350

Effect of dilutive securities:

Stock-based awards

368,306

Weighted average shares outstanding - diluted

 

35,688,620

 

27,483,350

 

34,888,703

 

27,483,350

Net income (loss) per share:

 

  

 

  

 

  

 

  

Basic

$

0.13

$

0.25

$

(0.16)

$

0.50

Diluted

$

0.12

$

0.25

$

(0.16)

$

0.50

XML 32 R22.htm IDEA: XBRL DOCUMENT v3.22.2
ACQUISITIONS (Tables)
6 Months Ended
Jun. 30, 2022
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

2,500

Prepaid expenses

682

Other current assets

612

Property and equipment

3,053

Intangible assets

10,200

Goodwill

6,289

Total assets acquired

25,683

Accounts payable

1,120

Deferred tax liabilities

2,548

Accrued liabilities

2,106

Long-term debt

544

Total liabilities assumed

6,318

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

    

$

37,508

Less: cash acquired

 

(1,834)

Total consideration, net

$

35,674

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

Total consideration, net

    

$

35,674

Accounts receivable

$

3,302

Inventories

10,908

Prepaid expenses

255

Other current assets

10

Property and equipment

11,701

Intangible assets

8,300

Goodwill

6,641

Total assets acquired

41,117

Accounts payable

1,080

Deferred tax liabilities

2,497

Accrued liabilities

1,578

Other long-term liabilities

288

Total liabilities assumed

5,443

Net assets acquired

$

35,674

Schedule of acquired intangible assets

    

Gross

    

Average Useful Life

Customer relationships

$

3,900

15

Technology

3,600

 

10

Trademarks

800

Indefinite

Total

$

8,300

XML 33 R23.htm IDEA: XBRL DOCUMENT v3.22.2
REVENUE RECOGNITION (Tables)
6 Months Ended
Jun. 30, 2022
REVENUE RECOGNITION  
Summary of disaggregation of net sales by channel and geography

Three months ended June 30, 

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

U.S. state and local agencies (a)

$

66,442

$

64,449

$

124,365

$

123,826

Commercial

 

11,327

 

7,591

 

22,361

 

19,433

U.S. federal agencies

 

9,448

 

10,486

 

17,362

 

26,079

International

 

29,506

 

30,040

 

56,525

 

52,034

Other

 

1,509

 

1,995

 

2,025

 

3,725

Net sales

$

118,232

$

114,561

$

222,638

$

225,097

(a) Includes all Distribution sales

Three months ended June 30, 

Six months ended June 30, 

    

2022

    

2021

    

2022

    

2021

    

United States

$

88,726

$

84,521

$

166,113

$

173,063

International

 

29,506

 

30,040

 

56,525

 

52,034

$

118,232

$

114,561

$

222,638

$

225,097

XML 34 R24.htm IDEA: XBRL DOCUMENT v3.22.2
INVENTORIES (Tables)
6 Months Ended
Jun. 30, 2022
INVENTORIES  
Summary of inventories stated at lower of cost or net realizable value

    

    

June 30, 2022

    

December 31, 2021

Finished goods

$

30,492

$

28,707

Work-in-process

 

8,881

 

4,053

Raw materials and supplies

 

37,257

 

31,218

$

76,630

$

63,978

XML 35 R25.htm IDEA: XBRL DOCUMENT v3.22.2
GOODWILL AND OTHER INTANGIBLE ASSETS (Tables)
6 Months Ended
Jun. 30, 2022
GOODWILL AND OTHER INTANGIBLE ASSETS  
Summary of changes in goodwill

    

Products

    

Distribution

    

Total

Balance, December 31, 2021

$

63,646

$

2,616

$

66,262

Radar acquisition

6,711

6,711

Foreign currency translation adjustments

 

(463)

 

 

(463)

Balance, March 31, 2022

$

69,894

$

2,616

$

72,510

Radar acquisition measurement period adjustment

(422)

(422)

Cyalume acquisition

6,641

6,641

Foreign currency translation adjustments

(702)

(702)

Balance, June 30, 2022

$

75,411

$

2,616

$

78,027

Summary of intangible assets

June 30, 2022

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

85,908

 

$

(55,789)

 

$

30,119

 

11

Technology

 

15,956

 

 

(11,124)

 

 

4,832

 

8

Tradenames

 

6,492

 

 

(3,733)

 

 

2,759

 

4

Non-compete agreements

 

977

 

 

(977)

 

 

 

4

$

109,333

 

$

(71,623)

 

$

37,710

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

17,467

 

 

 

 

17,467

 

Indefinite

Total

$

126,800

 

$

(71,623)

 

$

55,177

 

  

December 31, 2021

    

    

    

    

Weighted 

Accumulated 

Average 

Gross

amortization

Net

 

Useful Life

Definite lived intangibles:

 

  

 

  

 

  

 

  

Customer relationships

$

74,078

$

(52,536)

 

$

21,542

 

11

Technology

 

11,978

 

 

(10,988)

 

 

990

 

7

Tradenames

 

6,473

 

 

(3,264)

 

 

3,209

 

4

Non-compete agreements

 

1,037

 

 

(1,037)

 

 

 

4

$

93,566

 

$

(67,825)

 

$

25,741

Indefinite lived intangibles:

 

  

 

 

  

 

 

  

 

  

Tradenames

 

16,674

 

 

 

 

16,674

 

Indefinite

Total

$

110,240

 

$

(67,825)

 

$

42,415

 

  

Summary of estimated amortization expense for finite lived intangible assets

Remainder of 2022

    

$

4,277

2023

 

7,923

2024

 

5,029

2025

 

3,071

2026

 

2,661

Thereafter

 

14,749

$

37,710

XML 36 R26.htm IDEA: XBRL DOCUMENT v3.22.2
DEBT (Tables)
6 Months Ended
Jun. 30, 2022
DEBT  
Schedule of company's debt

    

June 30, 2022

    

December 31, 2021

Short-term debt:

 

  

 

  

Insurance premium financing

$

321

$

3,174

Current portion of term loan

 

10,000

 

10,000

$

10,321

$

13,174

Long-term debt:

 

  

 

  

Revolver

 

 

Term loan

 

143,564

 

148,564

Other

 

506

 

$

144,070

$

148,564

Unamortized debt discount and debt issuance costs

 

(1,826)

 

(2,048)

Total long-term debt, net

$

142,244

$

146,516

Summary of aggregate principal payments of long-term debt

Remainder of 2022

    

$

5,000

2023

 

10,000

2024

 

10,127

2025

 

10,127

2026

 

118,690

Thereafter

 

126

Total principal payments

$

154,070

Schedule of Interest rate swaps

Effective date

    

Notional amount

    

Fixed rate

 

September 30, 2021 through July 23, 2026

    

$

100,000

    

0.875

%

Schedule of fair value swap agreement

    

Balance sheet accounts

    

June 30, 2022

    

December 31, 2021

Other current assets

$

2,115

$

Other assets

$

4,715

$

1,607

Accrued liabilities

$

$

389

XML 37 R27.htm IDEA: XBRL DOCUMENT v3.22.2
COMMITMENTS AND CONTINGENCIES (Tables)
6 Months Ended
Jun. 30, 2022
COMMITMENTS AND CONTINGENCIES  
Summary of future minimum lease payments required under non-cancelable operating leases

Remainder of 2022

$

2,358

2023

 

4,276

2024

 

3,077

2025

 

1,618

2026

 

639

Thereafter

 

104

Total minimum lease payments

$

12,072

XML 38 R28.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT DATA (Tables)
6 Months Ended
Jun. 30, 2022
SEGMENT DATA  
Summary of segment data

    

Six months ended June 30, 2022

Reconciling

    

    Products    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

185,223

    

$

47,824

    

$

(10,409)

    

$

222,638

Cost of goods sold

112,067

37,578

(10,417)

139,228

Gross profit

$

73,156

$

10,246

$

8

$

83,410

    

Six months ended June 30, 2021

Reconciling

    

    Products    

    

Distribution

    

 Items(1)

    

      Total      

Net sales

    

$

190,121

    

$

47,579

    

$

(12,603)

    

$

225,097

Cost of goods sold

110,028

35,476

(12,594)

132,910

Gross profit

$

80,093

$

12,103

$

(9)

$

92,187

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

XML 39 R29.htm IDEA: XBRL DOCUMENT v3.22.2
SIGNIFICANT ACCOUNTING POLICIES - Additional Information (Details)
$ / shares in Units, $ in Thousands
1 Months Ended 6 Months Ended
Jun. 14, 2022
USD ($)
$ / shares
shares
Jun. 09, 2022
USD ($)
$ / shares
shares
Jul. 31, 2021
Jun. 30, 2022
item
Jun. 30, 2020
USD ($)
Nature of Operations and Basis of Presentation          
Number of manufacturing plants | item       16  
Stock Split          
Stock split ratio     50    
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      
Net proceeds from the sale of shares   $ 46,988      
Underwriter discounts and commissions, fees and expenses   $ 2,715      
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 40 R30.htm IDEA: XBRL DOCUMENT v3.22.2
SIGNIFICANT ACCOUNTING POLICIES - Assets and liabilities measured at fair value on a recurring basis (Details) - Recurring - Interest Rate Swap - USD ($)
$ in Thousands
Jun. 30, 2022
Dec. 31, 2021
Carrying amount    
Assets:    
Assets $ 6,830 $ 1,607
Liabilities:    
Liabilities:   389
Fair value | Level 2    
Assets:    
Assets $ 6,830 1,607
Liabilities:    
Liabilities:   $ 389
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.22.2
SIGNIFICANT ACCOUNTING POLICIES - Transfers of assets or liabilities (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
SIGNIFICANT ACCOUNTING POLICIES    
Transfers between fair value measurement levels, amount $ 0 $ 0
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.22.2
SIGNIFICANT ACCOUNTING POLICIES - Accrued warranties and related costs (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
Jun. 30, 2022
Jun. 30, 2021
Changes in the Company's accrued warranties and related costs        
Beginning accrued warranty expense $ 1,233 $ 1,140 $ 1,256 $ 1,133
Current period claims 29 (85) (87) (141)
Provision for current period sales 165 89 258 152
Ending accrued warranty expense $ 1,427 $ 1,144 $ 1,427 $ 1,144
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.22.2
SIGNIFICANT ACCOUNTING POLICIES - Weighted average shares outstanding and net income (loss) per share (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
Jun. 30, 2022
Jun. 30, 2021
Numerator for basic and diluted earnings per share:        
Net income (loss) $ 4,445 $ 6,815 $ (5,720) $ 13,679
Weighted average shares outstanding:        
Weighted average shares outstanding - basic 35,320,314 27,483,350 34,888,703 27,483,350
Effect of dilutive securities:        
Stock-based awards 368,306      
Weighted average shares outstanding - diluted 35,688,620 27,483,350 34,888,703 27,483,350
Net income (loss) per share:        
Basic $ 0.13 $ 0.25 $ (0.16) $ 0.50
Diluted $ 0.12 $ 0.25 $ (0.16) $ 0.50
Anti-dilutive instruments excluded   0   0
Restricted Stock        
Net income (loss) per share:        
Anti-dilutive instruments excluded 3,121      
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.22.2
SIGNIFICANT ACCOUNTING POLICIES - Adopted Accounting Pronouncement (Details) - Accounting Standards Update 2016-02
$ in Thousands
Jan. 01, 2022
USD ($)
Minimum  
Recent Accounting Pronouncements  
Estimated right-of-use asset upon adoption of new accounting standard for annual period $ 12,300
Estimated lease liability upon adoption of new accounting standard for annual period 12,300
Maximum  
Recent Accounting Pronouncements  
Estimated right-of-use asset upon adoption of new accounting standard for annual period 13,200
Estimated lease liability upon adoption of new accounting standard for annual period $ 13,200
XML 45 R35.htm IDEA: XBRL DOCUMENT v3.22.2
ACQUISITIONS - Summary - Radar (Details) - USD ($)
$ in Thousands
6 Months Ended
Jan. 11, 2022
Jun. 30, 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.22.2
ACQUISITIONS - Purchase Price Consideration and Fair Value - Radar (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jan. 11, 2022
Jun. 30, 2022
Jun. 30, 2022
Mar. 31, 2022
Dec. 31, 2021
Total purchase price consideration and preliminary fair value amounts recognized          
Total consideration, net     $ 55,039    
Goodwill   $ 78,027 78,027 $ 72,510 $ 66,262
Radar          
ACQUISITIONS          
Decrease in goodwill for revisions made to cash paid   $ 422 $ 422    
Total purchase price consideration and preliminary fair value amounts recognized          
Total consideration, net $ 19,365        
Accounts receivable 2,347        
Inventories 2,500        
Prepaid expenses 682        
Other current assets 612        
Property and equipment 3,053        
Intangible assets 10,200        
Goodwill 6,289        
Total assets acquired 25,683        
Accounts payable 1,120        
Deferred tax liabilities 2,548        
Accrued liabilities 2,106        
Long-term debt 544        
Total liabilities assumed 6,318        
Net assets acquired $ 19,365        
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.22.2
ACQUISITIONS - Intangible Assets - Radar (Details) - Radar
$ in Thousands
Jan. 11, 2022
USD ($)
ACQUISITIONS  
Gross $ 10,200
Goodwill, non-deductible for tax purposes 6,289
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.22.2
ACQUISITIONS - Summary - Cyalume (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
May 04, 2022
Jun. 30, 2022
Jun. 30, 2022
Total consideration, net of cash acquired:      
Total consideration, net     $ 55,039
Cyalume      
ACQUISITIONS      
Acquisition-related costs incurred during the period   $ 2,036 $ 2,307
Percentage acquired 100.00%    
Total consideration, net of cash acquired:      
Cash paid $ 37,508    
Less: cash acquired (1,834)    
Total consideration, net $ 35,674    
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.22.2
ACQUISITIONS - Purchase Price Consideration and Fair Value - Cyalume (Details) - USD ($)
$ in Thousands
6 Months Ended
May 04, 2022
Jun. 30, 2022
Mar. 31, 2022
Dec. 31, 2021
Total purchase price consideration and preliminary fair value amounts recognized        
Total consideration, net   $ 55,039    
Goodwill   $ 78,027 $ 72,510 $ 66,262
Cyalume        
Total purchase price consideration and preliminary fair value amounts recognized        
Total consideration, net $ 35,674      
Accounts receivable 3,302      
Inventories 10,908      
Prepaid expenses 255      
Other current assets 10      
Property and equipment 11,701      
Intangible assets 8,300      
Goodwill 6,641      
Total assets acquired 41,117      
Accounts payable 1,080      
Deferred tax liabilities 2,497      
Accrued liabilities 1,578      
Long-term debt 288      
Total liabilities assumed 5,443      
Net assets acquired $ 35,674      
XML 50 R40.htm IDEA: XBRL DOCUMENT v3.22.2
ACQUISITIONS - Intangible Assets - Cyalume (Details) - Cyalume
$ in Thousands
May 04, 2022
USD ($)
ACQUISITIONS  
Gross $ 8,300
Goodwill, non-deductible for tax purposes 6,641
Customer relationships  
ACQUISITIONS  
Gross $ 3,900
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.22.2
REVENUE RECOGNITION - Net sales by channel and geography (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
Jun. 30, 2022
Jun. 30, 2021
Revenue Recognition        
Net sales $ 118,232 $ 114,561 $ 222,638 $ 225,097
U.S. state and local agencies        
Revenue Recognition        
Net sales 66,442 64,449 124,365 123,826
Commercial        
Revenue Recognition        
Net sales 11,327 7,591 22,361 19,433
U.S. federal agencies        
Revenue Recognition        
Net sales 9,448 10,486 17,362 26,079
International        
Revenue Recognition        
Net sales 29,506 30,040 56,525 52,034
Other        
Revenue Recognition        
Net sales $ 1,509 $ 1,995 $ 2,025 $ 3,725
XML 52 R42.htm IDEA: XBRL DOCUMENT v3.22.2
REVENUE RECOGNITION - Includes all Distribution sales (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
Jun. 30, 2022
Jun. 30, 2021
Revenue Recognition        
Net sales $ 118,232 $ 114,561 $ 222,638 $ 225,097
United States        
Revenue Recognition        
Net sales 88,726 84,521 166,113 173,063
International.        
Revenue Recognition        
Net sales $ 29,506 $ 30,040 $ 56,525 $ 52,034
XML 53 R43.htm IDEA: XBRL DOCUMENT v3.22.2
REVENUE RECOGNITION - Contract Liabilities (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2022
Dec. 31, 2021
REVENUE RECOGNITION      
Contract liabilities, current $ 6,272 $ 6,272 $ 10,949
Revenue recognized from amounts included in contract liabilities $ 2,225 $ 7,216  
XML 54 R44.htm IDEA: XBRL DOCUMENT v3.22.2
REVENUE RECOGNITION - Additional information (Details)
$ in Thousands
Jun. 30, 2022
USD ($)
Revenue Recognition  
Remaining performance obligations $ 18,395
Percentage of remaining performance obligations expect to recognize 63.00%
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-07-01  
Revenue Recognition  
Expected timing of satisfaction 12 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-07-01  
Revenue Recognition  
Expected timing of satisfaction 2 years
XML 55 R45.htm IDEA: XBRL DOCUMENT v3.22.2
INVENTORIES (Details) - USD ($)
$ in Thousands
Jun. 30, 2022
Dec. 31, 2021
INVENTORIES    
Finished goods $ 30,492 $ 28,707
Work-in-process 8,881 4,053
Raw materials and supplies 37,257 31,218
Inventory Net $ 76,630 $ 63,978
XML 56 R46.htm IDEA: XBRL DOCUMENT v3.22.2
GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of changes in goodwill (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Mar. 31, 2022
Jun. 30, 2022
Summary of changes in goodwill      
Balance at beginning of period $ 72,510 $ 66,262 $ 66,262
Foreign currency translation adjustments (702) (463)  
Balance at end of period 78,027 72,510 78,027
Products      
Summary of changes in goodwill      
Balance at beginning of period 69,894 63,646 63,646
Foreign currency translation adjustments (702) (463)  
Balance at end of period 75,411 69,894 75,411
Distribution      
Summary of changes in goodwill      
Balance at beginning of period 2,616 2,616 2,616
Balance at end of period 2,616 2,616 2,616
Radar      
Summary of changes in goodwill      
Acquisition measurement period adjustment (422)   $ (422)
Acquisition   6,711  
Radar | Products      
Summary of changes in goodwill      
Acquisition measurement period adjustment (422)    
Acquisition   $ 6,711  
Cyalume      
Summary of changes in goodwill      
Acquisition 6,641    
Cyalume | Products      
Summary of changes in goodwill      
Acquisition $ 6,641    
XML 57 R47.htm IDEA: XBRL DOCUMENT v3.22.2
GOODWILL AND OTHER INTANGIBLE ASSETS - Impairment of Goodwill (Details) - USD ($)
$ in Thousands
Jun. 30, 2022
Dec. 31, 2021
GOODWILL AND OTHER INTANGIBLE ASSETS    
Gross goodwill $ 85,612 $ 73,899
Accumulated impairment losses $ 7,585 $ 7,585
XML 58 R48.htm IDEA: XBRL DOCUMENT v3.22.2
GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of intangible assets (Details) - USD ($)
$ in Thousands
6 Months Ended 12 Months Ended
Jun. 30, 2022
Dec. 31, 2021
Summary of intangible assets    
Definite lived intangibles, Gross $ 109,333 $ 93,566
Definite lived intangibles, Accumulated amortization (71,623) (67,825)
Definite lived intangibles, Net 37,710 25,741
Indefinite lived intangibles 126,800 110,240
Indefinite lived intangibles, Net 55,177 42,415
Tradenames    
Summary of intangible assets    
Indefinite lived intangibles 17,467 16,674
Indefinite lived intangibles, Net   16,674
Customer relationships    
Summary of intangible assets    
Definite lived intangibles, Gross 85,908 74,078
Definite lived intangibles, Accumulated amortization (55,789) (52,536)
Definite lived intangibles, Net $ 30,119 $ 21,542
Weighted Average Useful Life 11 years 11 years
Technology    
Summary of intangible assets    
Definite lived intangibles, Gross $ 15,956 $ 11,978
Definite lived intangibles, Accumulated amortization (11,124) (10,988)
Definite lived intangibles, Net $ 4,832 $ 990
Weighted Average Useful Life 8 years 7 years
Tradenames    
Summary of intangible assets    
Definite lived intangibles, Gross $ 6,492 $ 6,473
Definite lived intangibles, Accumulated amortization (3,733) (3,264)
Definite lived intangibles, Net $ 2,759 $ 3,209
Weighted Average Useful Life 4 years 4 years
Non-compete agreements    
Summary of intangible assets    
Definite lived intangibles, Gross $ 977 $ 1,037
Definite lived intangibles, Accumulated amortization $ (977) $ (1,037)
Weighted Average Useful Life 4 years 4 years
XML 59 R49.htm IDEA: XBRL DOCUMENT v3.22.2
GOODWILL AND OTHER INTANGIBLE ASSETS - Additional information (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
Jun. 30, 2022
Jun. 30, 2021
GOODWILL AND OTHER INTANGIBLE ASSETS        
Amortization expense $ 2,240 $ 2,179 $ 4,397 $ 4,365
Amortization expense included in cost of goods sold $ 130 $ 200 $ 180 $ 398
XML 60 R50.htm IDEA: XBRL DOCUMENT v3.22.2
GOODWILL AND OTHER INTANGIBLE ASSETS - Amortization expense for finite lived intangible assets (Details) - USD ($)
$ in Thousands
Jun. 30, 2022
Dec. 31, 2021
Estimated amortization expense for finite-lived intangible assets    
Remainder of 2022 $ 4,277  
2023 7,923  
2024 5,029  
2025 3,071  
2026 2,661  
Thereafter 14,749  
Finite lived intangible assets $ 37,710 $ 25,741
XML 61 R51.htm IDEA: XBRL DOCUMENT v3.22.2
DEBT - Schedule of company's debt (Details) - USD ($)
$ in Thousands
Jun. 30, 2022
Dec. 31, 2021
Debt    
Short-term debt $ 10,321 $ 13,174
Long-term debt 144,070 148,564
Unamortized debt discount and debt issuance costs (1,826) (2,048)
Total long-term debt, net 142,244 146,516
Term loan    
Debt    
Long-term debt 143,564 148,564
Other.    
Debt    
Long-term debt 506  
Insurance premium financing    
Debt    
Short-term debt 321 3,174
Current portion of term loan    
Debt    
Short-term debt $ 10,000 $ 10,000
XML 62 R52.htm IDEA: XBRL DOCUMENT v3.22.2
DEBT - Summary of aggregate principal payment of long-term debt (Details)
$ in Thousands
Jun. 30, 2022
USD ($)
DEBT  
Remainder of 2022 $ 5,000
2023 10,000
2024 10,127
2025 10,127
2026 118,690
Thereafter 126
Total principal payments $ 154,070
XML 63 R53.htm IDEA: XBRL DOCUMENT v3.22.2
DEBT - New Credit Agreement (Details)
$ in Thousands
3 Months Ended 6 Months Ended
Oct. 01, 2022
Dec. 31, 2021
USD ($)
Jun. 30, 2022
USD ($)
Aug. 20, 2021
USD ($)
Debt        
Outstanding borrowings   $ 148,564 $ 144,070  
New Credit Agreement        
Debt        
Minimum fixed charge coverage ratio   1.25    
Total net leverage ratio   3.75    
Increase in total net leverage ratio   0.50    
New Credit Agreement | Minimum        
Debt        
Commitment Fee     0.175%  
New Credit Agreement | Maximum        
Debt        
Commitment Fee     0.25%  
Total net leverage ratio 3.50      
New Credit Agreement | Base Rate | Minimum        
Debt        
Applicable margin (as a percent)     0.50%  
New Credit Agreement | Base Rate | Maximum        
Debt        
Applicable margin (as a percent)     1.50%  
New Credit Agreement | LIBOR | Minimum        
Debt        
Applicable margin (as a percent)     1.50%  
New Credit Agreement | LIBOR | Maximum        
Debt        
Applicable margin (as a percent)     2.50%  
New Credit Agreement | Revolving credit facility.        
Debt        
Maximum borrowing capacity       $ 100,000
Outstanding borrowings   $ 0 $ 0  
Available borrowing capacity     $ 97,708  
New Credit Agreement | Term loan        
Debt        
Aggregate principal amount per quarter (in percent)     1.25%  
Outstanding borrowings       200,000
New Credit Agreement | Letter of credit        
Debt        
Maximum borrowing capacity       15,000
Outstanding letters of credit     $ 2,292  
New Credit Agreement | Swing line loans        
Debt        
Maximum borrowing capacity       $ 10,000
XML 64 R54.htm IDEA: XBRL DOCUMENT v3.22.2
DEBT - Canadian Credit Facility (Details) - Canadian Credit Facility
$ in Thousands, $ in Thousands
6 Months Ended
Jun. 30, 2022
USD ($)
Dec. 31, 2021
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.22.2
DEBT - Schedule of interest rate swaps (Details) - Interest Rate Swap
$ in Thousands
Jun. 30, 2022
USD ($)
Interest Rate Swaps  
Notional amount $ 100,000
Fixed rate 0.875%
Variable rate 3.67%
XML 66 R56.htm IDEA: XBRL DOCUMENT v3.22.2
DEBT - Schedule of fair value swap agreement (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2022
Dec. 31, 2021
Interest Rate Swaps      
Cumulative gain, net of tax reflected in accumulated other comprehensive income (loss) $ 5,123 $ 5,123 $ 913
Gain recognized in other comprehensive income 987 4,064  
Amount reclassified from accumulated other comprehensive loss to earnings 15 146  
Amount reclassified from AOCI into interest expense within next twelve months 2,121 2,121  
Other current assets      
Interest Rate Swaps      
Derivative asset 2,115 2,115  
Other assets      
Interest Rate Swaps      
Derivative asset $ 4,715 $ 4,715 1,607
Accrued liabilities      
Interest Rate Swaps      
Derivative liability     $ 389
XML 67 R57.htm IDEA: XBRL DOCUMENT v3.22.2
COMMITMENTS AND CONTINGENCIES - Legal Proceedings (Details) - USD ($)
$ in Thousands
1 Months Ended
Apr. 18, 2022
Sep. 30, 2021
COMMITMENTS AND CONTINGENCIES    
Damage awarded   $ 7,500
Number of days to file a response brief 30 days  
Number of days to file a reply 21 days  
XML 68 R58.htm IDEA: XBRL DOCUMENT v3.22.2
COMMITMENTS AND CONTINGENCIES - Leases (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
Jun. 30, 2022
Jun. 30, 2021
COMMITMENTS AND CONTINGENCIES        
Total rent expense $ 1,202 $ 1,175 $ 2,402 $ 2,325
XML 69 R59.htm IDEA: XBRL DOCUMENT v3.22.2
COMMITMENTS AND CONTINGENCIES - Future minimum lease payments required under non-cancelable operating leases and capital lease agreements (Details)
$ in Thousands
Jun. 30, 2022
USD ($)
Operating Leases  
Remainder of 2022 $ 2,358
2023 4,276
2024 3,077
2025 1,618
2026 639
Thereafter 104
Total minimum lease payments $ 12,072
XML 70 R60.htm IDEA: XBRL DOCUMENT v3.22.2
INCOME TAXES (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
Jun. 30, 2022
Jun. 30, 2021
INCOME TAXES.        
Valuation allowance $ 1,890   $ 1,890  
Effective tax rate 25.40% 26.90% 44.00% 30.40%
XML 71 R61.htm IDEA: XBRL DOCUMENT v3.22.2
COMPENSATION PLANS - Long-Term Incentive Plan (Details) - Long-Term Incentive Plan
$ in Thousands
3 Months Ended 6 Months Ended
Mar. 31, 2021
installment
Jun. 30, 2022
USD ($)
Jun. 30, 2021
USD ($)
Jun. 30, 2022
USD ($)
Jun. 30, 2021
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 | $   $ 174 $ 328 $ 558 $ 1,280
XML 72 R62.htm IDEA: XBRL DOCUMENT v3.22.2
COMPENSATION PLANS - Executive Compensation Plan (Details) - Executive Compensation Plan - USD ($)
$ / shares in Units, $ in Thousands
6 Months Ended
Jun. 30, 2022
Mar. 18, 2022
Mar. 09, 2022
Compensation Plans      
Deferred Compensation Arrangement with Individual, Compensation Expense $ 11,516    
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    
XML 73 R63.htm IDEA: XBRL DOCUMENT v3.22.2
COMPENSATION PLANS - Stock Incentive Plan (Details) - Stock Incentive Plan 2021
Mar. 09, 2022
$ / shares
shares
Restricted Stock  
COMPENSATION PLANS  
Number of awards granted | shares 85,108
Vesting period 3 years
Grant date fair value (per share) | $ / shares $ 23.45
Stock Options  
COMPENSATION PLANS  
Number of options issued | shares 309,479
Vesting period 3 years
Expiration period 10 years
Grant date fair value (per share) | $ / shares $ 6.72
XML 74 R64.htm IDEA: XBRL DOCUMENT v3.22.2
ASSETS AND LIABILITIES HELD FOR SALE (Details) - USD ($)
$ in Thousands
Jun. 30, 2022
Dec. 31, 2021
Assets and Liabilities Held for Sale    
Liabilities current, held for sale $ 106 $ 128
Daventry, UK Facility | Disposal Group, Held-for-sale, Not Discontinued Operations    
Assets and Liabilities Held for Sale    
Current assets held for sale 251  
Liabilities current, held for sale $ 106  
XML 75 R65.htm IDEA: XBRL DOCUMENT v3.22.2
RELATED PARTY TRANSACTIONS (Details)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 09, 2022
USD ($)
Jun. 30, 2022
USD ($)
Jun. 30, 2021
USD ($)
Jun. 30, 2022
USD ($)
warehouse
Jun. 30, 2021
USD ($)
Jun. 30, 2020
USD ($)
Related Party Transactions            
Number of distribution warehouses and retail stores | warehouse       4    
Rent expense related to leases   $ 112 $ 142 $ 234 $ 295  
Kanders & Company, Inc            
Related Party Transactions            
Acquisition-related costs           $ 1,000
Direct offering costs $ 2,000         $ 2,000
XML 76 R66.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT DATA (Details)
6 Months Ended
Jun. 30, 2022
segment
SEGMENT DATA  
Number of reportable segments 2
XML 77 R67.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT DATA - asset information or operating expenses by segment (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
Jun. 30, 2022
Jun. 30, 2021
Segment Data        
Net sales $ 118,232 $ 114,561 $ 222,638 $ 225,097
Cost of goods sold 75,011 66,333 139,228 132,910
Gross profit $ 43,221 $ 48,228 83,410 92,187
Reconciling Items        
Segment Data        
Net sales     (10,409) (12,603)
Cost of goods sold     (10,417) (12,594)
Gross profit     8 (9)
Products | Operating segments        
Segment Data        
Net sales     185,223 190,121
Cost of goods sold     112,067 110,028
Gross profit     73,156 80,093
Distribution | Operating segments        
Segment Data        
Net sales     47,824 47,579
Cost of goods sold     37,578 35,476
Gross profit     $ 10,246 $ 12,103
XML 78 R68.htm IDEA: XBRL DOCUMENT v3.22.2
SUBSEQUENT EVENTS (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2022
Jun. 30, 2021
SUBSEQUENT EVENTS    
Proceeds from revolving credit facilities $ 48,000 $ 176,548
XML 79 cdre-20220630x10q_htm.xml IDEA: XBRL DOCUMENT 0001860543 us-gaap:CommonStockMember 2022-01-01 2022-03-31 0001860543 us-gaap:CommonStockMember 2022-04-01 2022-06-30 0001860543 2021-07-01 2021-07-31 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 us-gaap:RetainedEarningsMember 2021-12-31 0001860543 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-12-31 0001860543 us-gaap:RetainedEarningsMember 2021-06-30 0001860543 us-gaap:AdditionalPaidInCapitalMember 2021-06-30 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-06-30 0001860543 us-gaap:RetainedEarningsMember 2021-03-31 0001860543 us-gaap:AdditionalPaidInCapitalMember 2021-03-31 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-03-31 0001860543 us-gaap:RetainedEarningsMember 2020-12-31 0001860543 us-gaap:AdditionalPaidInCapitalMember 2020-12-31 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-12-31 0001860543 cdre:InsurancePremiumFinancingMember 2022-06-30 0001860543 cdre:CurrentPortionOfTermLoanMember 2022-06-30 0001860543 cdre:InsurancePremiumFinancingMember 2021-12-31 0001860543 cdre:CurrentPortionOfTermLoanMember 2021-12-31 0001860543 us-gaap:OverAllotmentOptionMember 2022-06-14 0001860543 cdre:SecondaryOfferingMember 2022-06-09 0001860543 us-gaap:RestrictedStockMember cdre:StockIncentivePlan2021Member 2022-03-09 2022-03-09 0001860543 us-gaap:EmployeeStockOptionMember cdre:StockIncentivePlan2021Member 2022-03-09 2022-03-09 0001860543 2023-07-01 2022-06-30 0001860543 2022-07-01 2022-06-30 0001860543 us-gaap:NonUsMember 2022-04-01 2022-06-30 0001860543 country:US 2022-04-01 2022-06-30 0001860543 cdre:U.s.stateAndLocalAgenciesMember 2022-04-01 2022-06-30 0001860543 cdre:U.s.FederalAgenciesMember 2022-04-01 2022-06-30 0001860543 cdre:OtherMember 2022-04-01 2022-06-30 0001860543 cdre:InternationalMember 2022-04-01 2022-06-30 0001860543 cdre:CommercialMember 2022-04-01 2022-06-30 0001860543 us-gaap:NonUsMember 2022-01-01 2022-06-30 0001860543 country:US 2022-01-01 2022-06-30 0001860543 cdre:U.s.stateAndLocalAgenciesMember 2022-01-01 2022-06-30 0001860543 cdre:U.s.FederalAgenciesMember 2022-01-01 2022-06-30 0001860543 cdre:OtherMember 2022-01-01 2022-06-30 0001860543 cdre:InternationalMember 2022-01-01 2022-06-30 0001860543 cdre:CommercialMember 2022-01-01 2022-06-30 0001860543 us-gaap:NonUsMember 2021-04-01 2021-06-30 0001860543 country:US 2021-04-01 2021-06-30 0001860543 cdre:U.s.stateAndLocalAgenciesMember 2021-04-01 2021-06-30 0001860543 cdre:U.s.FederalAgenciesMember 2021-04-01 2021-06-30 0001860543 cdre:OtherMember 2021-04-01 2021-06-30 0001860543 cdre:InternationalMember 2021-04-01 2021-06-30 0001860543 cdre:CommercialMember 2021-04-01 2021-06-30 0001860543 us-gaap:NonUsMember 2021-01-01 2021-06-30 0001860543 country:US 2021-01-01 2021-06-30 0001860543 cdre:U.s.stateAndLocalAgenciesMember 2021-01-01 2021-06-30 0001860543 cdre:U.s.FederalAgenciesMember 2021-01-01 2021-06-30 0001860543 cdre:OtherMember 2021-01-01 2021-06-30 0001860543 cdre:InternationalMember 2021-01-01 2021-06-30 0001860543 cdre:CommercialMember 2021-01-01 2021-06-30 0001860543 2021-03-31 0001860543 cdre:KandersCompanyIncMember 2022-06-09 2022-06-09 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-04-01 2022-06-30 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-03-31 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-04-01 2021-06-30 0001860543 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-03-31 0001860543 us-gaap:RetainedEarningsMember 2021-04-01 2021-06-30 0001860543 us-gaap:RetainedEarningsMember 2021-01-01 2021-03-31 0001860543 2021-01-01 2021-03-31 0001860543 2021-09-01 2021-09-30 0001860543 srt:MinimumMember cdre:CanadianCreditFacilityMember 2022-01-01 2022-06-30 0001860543 srt:MaximumMember cdre:CanadianCreditFacilityMember 2022-01-01 2022-06-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 2021-12-31 0001860543 us-gaap:LetterOfCreditMember cdre:NewCreditAgreementAugust2021Member 2022-06-30 0001860543 us-gaap:TradeNamesMember 2022-06-30 0001860543 us-gaap:TradeNamesMember 2021-12-31 0001860543 cdre:RadarLeatherDivisionS.r.lMember cdre:ProductsMember 2022-04-01 2022-06-30 0001860543 cdre:RadarLeatherDivisionS.r.lMember 2022-04-01 2022-06-30 0001860543 cdre:ProductsMember 2022-04-01 2022-06-30 0001860543 cdre:ProductsMember 2022-01-01 2022-03-31 0001860543 cdre:CyalumeAcquisitionMember cdre:ProductsMember 2022-04-01 2022-06-30 0001860543 cdre:RadarLeatherDivisionS.r.lMember cdre:ProductsMember 2022-01-01 2022-03-31 0001860543 cdre:RadarLeatherDivisionS.r.lMember 2022-01-01 2022-03-31 0001860543 cdre:ProductsMember 2022-06-30 0001860543 cdre:DistributionServicesMember 2022-06-30 0001860543 cdre:ProductsMember 2022-03-31 0001860543 cdre:DistributionServicesMember 2022-03-31 0001860543 2022-03-31 0001860543 cdre:ProductsMember 2021-12-31 0001860543 cdre:DistributionServicesMember 2021-12-31 0001860543 us-gaap:TradeNamesMember 2022-01-01 2022-06-30 0001860543 us-gaap:TechnologyBasedIntangibleAssetsMember 2022-01-01 2022-06-30 0001860543 us-gaap:NoncompeteAgreementsMember 2022-01-01 2022-06-30 0001860543 us-gaap:CustomerRelationshipsMember 2022-01-01 2022-06-30 0001860543 us-gaap:TradeNamesMember 2021-01-01 2021-12-31 0001860543 us-gaap:TechnologyBasedIntangibleAssetsMember 2021-01-01 2021-12-31 0001860543 us-gaap:NoncompeteAgreementsMember 2021-01-01 2021-12-31 0001860543 us-gaap:CustomerRelationshipsMember 2021-01-01 2021-12-31 0001860543 cdre:CyalumeAcquisitionMember us-gaap:TrademarksMember 2022-05-04 2022-05-04 0001860543 us-gaap:TradeNamesMember 2022-06-30 0001860543 us-gaap:TechnologyBasedIntangibleAssetsMember 2022-06-30 0001860543 us-gaap:NoncompeteAgreementsMember 2022-06-30 0001860543 us-gaap:CustomerRelationshipsMember 2022-06-30 0001860543 us-gaap:TradeNamesMember 2021-12-31 0001860543 us-gaap:TechnologyBasedIntangibleAssetsMember 2021-12-31 0001860543 us-gaap:NoncompeteAgreementsMember 2021-12-31 0001860543 us-gaap:CustomerRelationshipsMember 2021-12-31 0001860543 us-gaap:RetainedEarningsMember 2022-04-01 2022-06-30 0001860543 us-gaap:RetainedEarningsMember 2022-01-01 2022-03-31 0001860543 us-gaap:AccruedLiabilitiesMember 2021-12-31 0001860543 us-gaap:InterestRateSwapMember 2022-06-30 0001860543 us-gaap:OtherCurrentAssetsMember 2022-06-30 0001860543 us-gaap:OtherAssetsMember 2022-06-30 0001860543 us-gaap:OtherAssetsMember 2021-12-31 0001860543 cdre:TermLoanMember cdre:NewCreditAgreementAugust2021Member 2022-01-01 2022-06-30 0001860543 us-gaap:RevolvingCreditFacilityMember cdre:NewCreditAgreementAugust2021Member 2022-06-30 0001860543 cdre:TermLoanMember 2022-06-30 0001860543 cdre:OtherLongTermDebtMember 2022-06-30 0001860543 us-gaap:RevolvingCreditFacilityMember cdre:NewCreditAgreementAugust2021Member 2021-12-31 0001860543 cdre:TermLoanMember 2021-12-31 0001860543 cdre:TermLoanMember cdre:NewCreditAgreementAugust2021Member 2021-08-20 0001860543 srt:MinimumMember cdre:NewCreditAgreementAugust2021Member us-gaap:LondonInterbankOfferedRateLIBORMember 2022-01-01 2022-06-30 0001860543 srt:MinimumMember cdre:NewCreditAgreementAugust2021Member us-gaap:BaseRateMember 2022-01-01 2022-06-30 0001860543 srt:MinimumMember cdre:CanadianCreditFacilityMember us-gaap:LondonInterbankOfferedRateLIBORMember 2022-01-01 2022-06-30 0001860543 srt:MinimumMember cdre:CanadianCreditFacilityMember us-gaap:BaseRateMember 2022-01-01 2022-06-30 0001860543 srt:MaximumMember cdre:NewCreditAgreementAugust2021Member us-gaap:LondonInterbankOfferedRateLIBORMember 2022-01-01 2022-06-30 0001860543 srt:MaximumMember cdre:NewCreditAgreementAugust2021Member us-gaap:BaseRateMember 2022-01-01 2022-06-30 0001860543 srt:MaximumMember cdre:CanadianCreditFacilityMember us-gaap:LondonInterbankOfferedRateLIBORMember 2022-01-01 2022-06-30 0001860543 srt:MaximumMember cdre:CanadianCreditFacilityMember us-gaap:BaseRateMember 2022-01-01 2022-06-30 0001860543 cdre:KandersCompanyIncMember 2020-01-01 2020-06-30 0001860543 us-gaap:OperatingSegmentsMember cdre:ProductsMember 2022-01-01 2022-06-30 0001860543 us-gaap:OperatingSegmentsMember cdre:DistributionServicesMember 2022-01-01 2022-06-30 0001860543 us-gaap:MaterialReconcilingItemsMember 2022-01-01 2022-06-30 0001860543 us-gaap:OperatingSegmentsMember cdre:ProductsMember 2021-01-01 2021-06-30 0001860543 us-gaap:OperatingSegmentsMember cdre:DistributionServicesMember 2021-01-01 2021-06-30 0001860543 us-gaap:MaterialReconcilingItemsMember 2021-01-01 2021-06-30 0001860543 us-gaap:CommonStockMember 2022-06-30 0001860543 us-gaap:CommonStockMember 2022-03-31 0001860543 us-gaap:CommonStockMember 2021-12-31 0001860543 us-gaap:CommonStockMember 2021-06-30 0001860543 us-gaap:CommonStockMember 2021-03-31 0001860543 us-gaap:CommonStockMember 2020-12-31 0001860543 2021-06-30 0001860543 2020-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-04-01 2022-06-30 0001860543 cdre:CyalumeAcquisitionMember 2022-01-01 2022-06-30 0001860543 us-gaap:DisposalGroupHeldforsaleNotDiscontinuedOperationsMember cdre:DaventryUkFacilityMember 2022-06-30 0001860543 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member us-gaap:EstimateOfFairValueFairValueDisclosureMember us-gaap:FairValueMeasurementsRecurringMember 2022-06-30 0001860543 us-gaap:InterestRateSwapMember us-gaap:CarryingReportedAmountFairValueDisclosureMember us-gaap:FairValueMeasurementsRecurringMember 2022-06-30 0001860543 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member us-gaap:EstimateOfFairValueFairValueDisclosureMember us-gaap:FairValueMeasurementsRecurringMember 2021-12-31 0001860543 us-gaap:InterestRateSwapMember us-gaap:CarryingReportedAmountFairValueDisclosureMember us-gaap:FairValueMeasurementsRecurringMember 2021-12-31 0001860543 us-gaap:RestrictedStockMember 2022-04-01 2022-06-30 0001860543 us-gaap:AdditionalPaidInCapitalMember 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 2022-08-08 0001860543 2022-04-01 2022-06-30 0001860543 2021-04-01 2021-06-30 0001860543 us-gaap:OverAllotmentOptionMember 2022-06-14 2022-06-14 0001860543 cdre:SecondaryOfferingMember 2022-06-09 2022-06-09 0001860543 srt:MinimumMember cdre:NewCreditAgreementAugust2021Member 2022-06-30 0001860543 srt:MaximumMember cdre:NewCreditAgreementAugust2021Member 2022-06-30 0001860543 2022-04-18 2022-04-18 0001860543 2021-01-01 2021-06-30 0001860543 srt:MinimumMember us-gaap:AccountingStandardsUpdate201602Member 2022-01-01 0001860543 srt:MaximumMember us-gaap:AccountingStandardsUpdate201602Member 2022-01-01 0001860543 2022-06-30 0001860543 2021-12-31 0001860543 srt:MaximumMember cdre:NewCreditAgreementAugust2021Member 2022-10-01 2022-10-01 0001860543 us-gaap:RevolvingCreditFacilityMember cdre:CanadianCreditFacilityMember 2022-06-30 0001860543 cdre:NewCreditAgreementAugust2021Member 2021-10-01 2021-12-31 0001860543 cdre:LongTermIncentivePlanMember 2021-03-31 2021-03-31 0001860543 cdre:LongTermIncentivePlanMember 2022-04-01 2022-06-30 0001860543 cdre:LongTermIncentivePlanMember 2022-01-01 2022-06-30 0001860543 cdre:LongTermIncentivePlanMember 2021-04-01 2021-06-30 0001860543 cdre:LongTermIncentivePlanMember 2021-01-01 2021-06-30 0001860543 cdre:ExecutiveCompensationPlanMember 2022-01-01 2022-06-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-06-30 0001860543 2022-01-01 2022-06-30 iso4217:USD iso4217:USD shares shares pure cdre:warehouse cdre:installment cdre:item iso4217:CAD cdre:segment 0001860543 --12-31 2022 Q2 false 0 0 37032271 50 P3Y 34383350 34383350 12300000 13200000 10-Q true 2022-06-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 Non-accelerated Filer true true false false 37332271 28862000 33857000 817000 645000 56521000 48344000 76630000 63978000 6932000 10353000 5956000 3171000 251000 278000 175152000 159981000 40111000 37171000 46997000 33053000 8133000 7059000 55177000 42415000 78027000 66262000 5990000 3026000 369476000 311796000 29145000 19328000 35896000 40736000 918000 1255000 106000 128000 10321000 13174000 76386000 74621000 142244000 146516000 3589000 1297000 959000 722000 223178000 223156000 0.0001 0.0001 10000000 10000000 0 0 0.0001 0.0001 190000000 190000000 37032271 4000 3000 194704000 127606000 -105000 -1917000 -48305000 -37052000 146298000 88640000 369476000 311796000 118232000 114561000 222638000 225097000 75011000 66333000 139228000 132910000 43221000 48228000 83410000 92187000 32749000 31444000 86699000 59495000 1203000 1219000 1802000 1540000 1112000 142000 1234000 295000 35064000 32805000 89735000 61330000 8157000 15423000 -6325000 30857000 1439000 5621000 2929000 10665000 -756000 -485000 -961000 -529000 -2195000 -6106000 -3890000 -11194000 5962000 9317000 -10215000 19663000 1517000 2502000 -4495000 5984000 4445000 6815000 -5720000 13679000 0.13 0.25 -0.16 0.50 0.12 0.25 -0.16 0.50 35320314 27483350 34888703 27483350 35688620 27483350 34888703 27483350 4445000 6815000 -5720000 13679000 987000 4064000 -15000 -146000 1002000 4210000 -2038000 254000 -2398000 538000 -1036000 254000 1812000 538000 3409000 7069000 -3908000 14217000 329000 1355000 5000 49000 376000 94000 394000 187000 -5720000 13679000 7380000 7020000 367000 2029000 1344000 -4594000 4607000 26327000 240000 -308000 -1107000 267000 3243000 2429000 1461000 7124000 -3616000 -2292000 -345000 9208000 25018000 28707000 2473000 1506000 55039000 -57512000 -1506000 48000000 176548000 48000000 176548000 5009000 13687000 2853000 1225000 22000 21000 6216000 49703000 2715000 5533000 27355000 -14933000 144000 42000 -4995000 12310000 33857000 2873000 28862000 15183000 241000 473000 2330000 8524000 17000 34383350 3000 127606000 -1917000 -37052000 88640000 -10165000 -10165000 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 2783000 2783000 2739000 2739000 -2038000 -2038000 1002000 1002000 37032271 4000 194704000 -105000 -48305000 146298000 27483350 3000 48670000 -2860000 -36962000 8851000 6864000 6864000 284000 284000 27483350 3000 48670000 -2576000 -30098000 15999000 6815000 6815000 254000 254000 27483350 3000 48670000 -2322000 -23283000 23068000 <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</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 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;">The accompanying consolidated financial statements of the Company have been prepared in accordance with accounting principles generally accepted in the United States ("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 interim consolidated 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 interim consolidated 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 transactions have been eliminated in consolidation.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 6pt 0pt;">Stock Split</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;">In July 2021, the Company effected a <span style="-sec-ix-hidden:Hidden_Jih3LNvWgUC1IrHHGHBn0g;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">50-for-1</span></span> stock split of its common stock and preferred stock. All share and per share information has been retroactively adjusted to reflect the stock split for all periods presented.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 6pt 0pt;">Secondary Offering</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;">On July 14, 2022, the underwriters exercised a portion of their over-allotment option and purchased an additional 300,000 shares of common stock <span style="background:#ffffff;">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 may 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 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 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;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The presentation of revenue by channel previously reported in the notes to the consolidated financial statements has been reclassified to conform to the current financial statement presentation.</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:40.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;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.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;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.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;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.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;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.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;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.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;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.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></tr><tr><td style="vertical-align:bottom;width:40.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;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:28.04%;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;">June 30, 2022</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:28.05%;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, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.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;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.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;">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.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;">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.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;">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.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;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.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;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.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;">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.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;">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.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;">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.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;">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.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;">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.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;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.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;">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.37%;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.66%;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.66%;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.37%;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.66%;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.67%;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:40.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Interest rate swap (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.37%;margin: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,830</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.66%;margin: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;"> 6,830</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.66%;margin: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.37%;margin: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,607</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.66%;margin: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;"> 1,607</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.67%;margin: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:40.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;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.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;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.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;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.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;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.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;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.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;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.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;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.93%;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.37%;margin: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.66%;margin: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.66%;margin: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.37%;margin: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.66%;margin: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.67%;margin: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:40.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;">Interest rate swap (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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.66%;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;">$</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.66%;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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;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;"> 389</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.66%;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;">$</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;"> 389</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.67%;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 six months ended June 30, 2022 and 2021.</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 carrying value of our long-term debt obligations approximates the fair value, as the long-term debt was entered into recently and contains a floating interest rate component. </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;">Goodwill and Other 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;">The Company tests goodwill and intangible assets determined to have indefinite useful lives for impairment annually, or more frequently if events or circumstances indicate that assets might be impaired. The Company performs these annual impairment tests as of October 31<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">st</sup> each year.</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 evaluating goodwill for impairment, qualitative factors are considered to determine whether it is more likely than not that the fair value of a reporting unit is less than its carrying amount. Some of these qualitative factors may include macroeconomic conditions, industry and market considerations, a change in financial performance, or entity-specific events. If, through this qualitative assessment, the conclusion is made that it is more likely than not that a reporting unit’s fair value is less than its carrying amount, the Company performs a two-step goodwill impairment test. The first step involves a comparison of the fair value of a reporting unit to its carrying value. If the carrying amount of the reporting unit exceeds its fair value, the second step of the process is performed, which compares the implied value of the reporting unit goodwill with the carrying value of the goodwill of that reporting unit. If the carrying value of the goodwill of a reporting unit exceeds the implied fair value of that goodwill, an impairment loss is recognized in an amount equal to that excess.</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 determines the fair value of its reporting units based on a combination of the income approach and market approach, weighted based on the circumstances. Both values are discounted using a rate that reflects the Company’s best estimate of the weighted average cost of capital of a market participant and is adjusted for appropriate risk factors.</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 0pt 12pt 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 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.</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 consolidated statements of operations and comprehensive income (loss). 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 are capitalized and amortized over the life of the contract. These costs are recorded in selling, general and administrative expenses in the Company’s consolidated statements of operations and comprehensive income (loss).</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 consolidated statements of operations and comprehensive income (loss).</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 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:50.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: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.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 0pt 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.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.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;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 0pt 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.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:8.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.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.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><td style="vertical-align:bottom;white-space:nowrap;width:8.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:50.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="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:24.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;">Three Months Ended June 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:21.51%;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;">Six months ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.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="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: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;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;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.98%;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;">2021</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:9.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:2.11%;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:9.68%;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;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.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;">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.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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,233</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;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,140</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.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:8.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;"> 1,256</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> 1,133</p></td></tr><tr><td style="vertical-align:bottom;width:50.39%;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.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.46%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (85)</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.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:8.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;"> (87)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (141)</p></td></tr><tr><td style="vertical-align:bottom;width:50.39%;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.52%;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.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;"> 165</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;white-space:nowrap;width:1.52%;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.45%;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;"> 89</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.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:8.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;"> 258</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.34%;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.34%;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;"> 152</p></td></tr><tr><td style="vertical-align:bottom;width:50.39%;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.52%;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.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,427</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;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.45%;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,144</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.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:8.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;"> 1,427</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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.34%;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.34%;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,144</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:52.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.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: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: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: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: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: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: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: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:52.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="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:22.03%;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 June 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:22.03%;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;">Six months ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:52.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="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.27%;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.27%;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;">2021</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.27%;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.27%;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;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:52.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;">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:0.92%;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,445</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:0.92%;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;"> 6,815</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:0.92%;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;"> (5,720)</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:0.92%;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;"> 13,679</p></td></tr><tr><td style="vertical-align:bottom;width:52.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.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: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: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: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: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: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: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: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:52.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;">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: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;"> </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,320,314</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: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;"> </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;"> 27,483,350</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: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;"> </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;"> 34,888,703</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: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;"> </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;"> 27,483,350</p></td></tr><tr><td style="vertical-align:bottom;width:52.96%;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: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: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: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: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: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: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: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: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:52.96%;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:0.92%;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;"> 368,306</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:0.92%;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><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:0.92%;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><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:0.92%;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:52.96%;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:0.92%;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,688,620</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:0.92%;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;"> 27,483,350</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:0.92%;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;"> 34,888,703</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:0.92%;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;"> 27,483,350</p></td></tr><tr><td style="vertical-align:bottom;width:52.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;">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: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;"> </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: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;"> </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: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;"> </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: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;"> </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:52.96%;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: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: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: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: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.25</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: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: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.16)</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: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: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.50</p></td></tr><tr><td style="vertical-align:bottom;width:52.96%;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: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;">$</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.12</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: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;">$</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.25</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: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;">$</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.16)</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: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;">$</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.50</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;">For the six months ended June 30, 2022, 3,121 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. There were no dilutive instruments outstanding for the three and six months ended June 30, 2021. </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;">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 February 2016, the FASB issued ASU 2016-02, <i style="font-style:italic;">Leases (Topic 842)</i>, which is intended to increase transparency and comparability among organizations by requiring the recognition of right-of-use (“ROU”) assets and lease liabilities on the balance sheet. In July 2018, the FASB issued additional guidance which provided an additional transition method for adopting the updated guidance. Under the additional transition method, entities may elect to recognize a cumulative-effect adjustment to the opening balance of retained earnings in the year of adoption. In June 2020, the FASB issued additional guidance which extends the effective date of ASU 2016-02 for emerging growth companies to begin in fiscal years beginning after December 15, 2021, and interim periods beginning after December 15, 2022. Early adoption is permitted. The Company adopted this standard for its annual period as of January 1, 2022 by utilizing the effective date option of the modified retrospective transition approach, which does not require application of the guidance to comparative periods in the year of adoption. The primary effect of adoption will be recording ROU assets and corresponding lease liabilities for current operating leases. We believe the adoption of this standard will have a significant effect on our consolidated balance sheets and currently estimate a ROU asset and <span style="-sec-ix-hidden:Hidden_rGj64boWHEqIgHHM3ExnLQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">lease liability</span></span> of $12,300 to $13,200 to be recorded on <span style="-sec-ix-hidden:Hidden_2VARJbAeZE656AH-p5TpyQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">January 1, 2022</span></span>. We do not anticipate that the adoption of this standard will have a significant impact on our consolidated statements of operations and comprehensive income (loss) or our consolidated statements of cash flows.   </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Accounting Pronouncements Not Yet Adopted</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. Early adoption is permitted. The Company plans to adopt this standard on January 1, 2023 and is currently in the process of evaluating the impact of the adoption of this standard on its consolidated financial statements.</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 December 2019, the FASB issued ASU 2019-12, <i style="font-style:italic;">Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes</i>. ASU 2019-12 simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740 and improves consistent application of and simplifies GAAP for other areas of Topic 740 by clarifying existing guidance. For emerging growth companies, this ASU is effective for fiscal years beginning after December 15, 2021, and interim periods within those fiscal years beginning after December 15, 2022. Early adoption is permitted. The Company is currently evaluating the impact the adoption of this ASU will have on its consolidated financial statements and related disclosures.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">There were no other new accounting standards that the Company expects to have a potential material impact to the financial position or results of operations upon adoption.</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</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 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;">The accompanying consolidated financial statements of the Company have been prepared in accordance with accounting principles generally accepted in the United States ("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 interim consolidated 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 interim consolidated 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 transactions have been eliminated in consolidation.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 6pt 0pt;">Stock Split</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;">In July 2021, the Company effected a <span style="-sec-ix-hidden:Hidden_Jih3LNvWgUC1IrHHGHBn0g;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">50-for-1</span></span> stock split of its common stock and preferred stock. All share and per share information has been retroactively adjusted to reflect the stock split for all periods presented.</p> <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;font-weight:bold;margin:0pt 0pt 6pt 0pt;">Secondary Offering</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;">On July 14, 2022, the underwriters exercised a portion of their over-allotment option and purchased an additional 300,000 shares of common stock <span style="background:#ffffff;">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 may 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 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 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;text-align:justify;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;">The presentation of revenue by channel previously reported in the notes to the consolidated financial statements has been reclassified to conform to the current financial statement presentation.</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:40.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;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.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;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.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;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.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;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.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;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.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;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.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></tr><tr><td style="vertical-align:bottom;width:40.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;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:28.04%;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;">June 30, 2022</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:28.05%;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, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.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;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.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;">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.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;">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.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;">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.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;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.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;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.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;">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.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;">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.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;">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.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;">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.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;">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.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;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.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;">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.37%;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.66%;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.66%;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.37%;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.66%;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.67%;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:40.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Interest rate swap (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.37%;margin: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,830</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.66%;margin: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;"> 6,830</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.66%;margin: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.37%;margin: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,607</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.66%;margin: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;"> 1,607</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.67%;margin: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:40.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;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.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;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.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;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.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;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.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;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.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;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.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;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.93%;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.37%;margin: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.66%;margin: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.66%;margin: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.37%;margin: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.66%;margin: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.67%;margin: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:40.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;">Interest rate swap (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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.66%;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;">$</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.66%;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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;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;"> 389</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.66%;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;">$</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;"> 389</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.67%;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 six months ended June 30, 2022 and 2021.</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 carrying value of our long-term debt obligations approximates the fair value, as the long-term debt was entered into recently and contains a floating interest rate component. </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:40.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;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.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;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.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;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.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;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.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;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.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;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.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></tr><tr><td style="vertical-align:bottom;width:40.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;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:28.04%;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;">June 30, 2022</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:28.05%;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, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.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;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.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;">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.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;">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.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;">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.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;">Fair Value</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.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;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.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;">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.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;">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.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;">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.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;">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.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;">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.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;">Level 3</b></p></td></tr><tr><td style="vertical-align:bottom;width:40.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;">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.37%;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.66%;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.66%;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.37%;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.66%;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.67%;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:40.93%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Interest rate swap (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.37%;margin: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,830</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.66%;margin: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;"> 6,830</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.66%;margin: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.37%;margin: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,607</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.66%;margin: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;"> 1,607</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.67%;margin: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:40.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;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.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;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.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;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.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;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.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;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.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;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.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;"><span style="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:40.93%;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.37%;margin: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.66%;margin: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.66%;margin: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.37%;margin: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.66%;margin: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.67%;margin: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:40.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;">Interest rate swap (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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.66%;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;">$</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.66%;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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:5.37%;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;"> 389</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.66%;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;">$</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;"> 389</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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:4.67%;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> 6830000 6830000 1607000 1607000 389000 389000 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;">Goodwill and Other 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;">The Company tests goodwill and intangible assets determined to have indefinite useful lives for impairment annually, or more frequently if events or circumstances indicate that assets might be impaired. The Company performs these annual impairment tests as of October 31<sup style="font-size:7.5pt;line-height:100%;top:0pt;vertical-align:top;">st</sup> each year.</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 evaluating goodwill for impairment, qualitative factors are considered to determine whether it is more likely than not that the fair value of a reporting unit is less than its carrying amount. Some of these qualitative factors may include macroeconomic conditions, industry and market considerations, a change in financial performance, or entity-specific events. If, through this qualitative assessment, the conclusion is made that it is more likely than not that a reporting unit’s fair value is less than its carrying amount, the Company performs a two-step goodwill impairment test. The first step involves a comparison of the fair value of a reporting unit to its carrying value. If the carrying amount of the reporting unit exceeds its fair value, the second step of the process is performed, which compares the implied value of the reporting unit goodwill with the carrying value of the goodwill of that reporting unit. If the carrying value of the goodwill of a reporting unit exceeds the implied fair value of that goodwill, an impairment loss is recognized in an amount equal to that excess.</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 determines the fair value of its reporting units based on a combination of the income approach and market approach, weighted based on the circumstances. Both values are discounted using a rate that reflects the Company’s best estimate of the weighted average cost of capital of a market participant and is adjusted for appropriate risk factors.</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 0pt 12pt 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 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.</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 consolidated statements of operations and comprehensive income (loss). 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 are capitalized and amortized over the life of the contract. These costs are recorded in selling, general and administrative expenses in the Company’s consolidated statements of operations and comprehensive income (loss).</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 consolidated statements of operations and comprehensive income (loss).</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 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:50.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: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.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 0pt 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.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.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;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 0pt 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.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:8.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.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.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><td style="vertical-align:bottom;white-space:nowrap;width:8.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:50.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="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:24.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;">Three Months Ended June 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:21.51%;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;">Six months ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.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="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: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;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;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.98%;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;">2021</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:9.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:2.11%;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:9.68%;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;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.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;">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.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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,233</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;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,140</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.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:8.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;"> 1,256</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> 1,133</p></td></tr><tr><td style="vertical-align:bottom;width:50.39%;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.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.46%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (85)</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.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:8.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;"> (87)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (141)</p></td></tr><tr><td style="vertical-align:bottom;width:50.39%;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.52%;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.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;"> 165</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;white-space:nowrap;width:1.52%;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.45%;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;"> 89</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.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:8.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;"> 258</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.34%;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.34%;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;"> 152</p></td></tr><tr><td style="vertical-align:bottom;width:50.39%;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.52%;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.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,427</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;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.45%;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,144</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.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:8.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;"> 1,427</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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.34%;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.34%;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,144</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:50.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: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.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 0pt 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.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.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;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 0pt 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.45%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:8.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.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.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><td style="vertical-align:bottom;white-space:nowrap;width:8.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:50.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="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:24.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;">Three Months Ended June 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:21.51%;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;">Six months ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:50.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="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: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;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;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.98%;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;">2021</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:9.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:2.11%;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:9.68%;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;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:50.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;">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.52%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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,233</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;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 0pt 0.05pt 0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;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,140</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.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:8.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;"> 1,256</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> 1,133</p></td></tr><tr><td style="vertical-align:bottom;width:50.39%;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.52%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.46%;margin: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</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 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 0pt 0.05pt 0pt;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.45%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (85)</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.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:8.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;"> (87)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 0pt 0.05pt 0pt;"> (141)</p></td></tr><tr><td style="vertical-align:bottom;width:50.39%;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.52%;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.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;"> 165</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;white-space:nowrap;width:1.52%;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.45%;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;"> 89</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.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:8.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;"> 258</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.34%;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.34%;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;"> 152</p></td></tr><tr><td style="vertical-align:bottom;width:50.39%;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.52%;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.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,427</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.4%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.52%;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.45%;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,144</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.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:8.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;"> 1,427</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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.34%;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.34%;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,144</p></td></tr></table> 1233000 1140000 1256000 1133000 29000 -85000 -87000 -141000 165000 89000 258000 152000 1427000 1144000 1427000 1144000 <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:52.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.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: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: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: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: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: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: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: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:52.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="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:22.03%;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 June 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:22.03%;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;">Six months ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:52.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="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.27%;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.27%;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;">2021</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.27%;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.27%;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;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:52.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;">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:0.92%;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,445</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:0.92%;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;"> 6,815</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:0.92%;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;"> (5,720)</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:0.92%;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;"> 13,679</p></td></tr><tr><td style="vertical-align:bottom;width:52.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.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: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: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: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: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: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: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: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:52.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;">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: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;"> </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,320,314</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: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;"> </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;"> 27,483,350</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: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;"> </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;"> 34,888,703</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: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;"> </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;"> 27,483,350</p></td></tr><tr><td style="vertical-align:bottom;width:52.96%;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: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: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: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: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: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: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: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: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:52.96%;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:0.92%;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;"> 368,306</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:0.92%;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><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:0.92%;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><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:0.92%;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:52.96%;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:0.92%;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,688,620</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:0.92%;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;"> 27,483,350</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:0.92%;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;"> 34,888,703</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:0.92%;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;"> 27,483,350</p></td></tr><tr><td style="vertical-align:bottom;width:52.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;">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: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;"> </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: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;"> </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: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;"> </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: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;"> </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:52.96%;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: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: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: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: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.25</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: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: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.16)</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: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: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.50</p></td></tr><tr><td style="vertical-align:bottom;width:52.96%;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: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;">$</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.12</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: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;">$</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.25</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: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;">$</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.16)</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: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;">$</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.50</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;">For the six months ended June 30, 2022, 3,121 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. There were no dilutive instruments outstanding for the three and six months ended June 30, 2021. </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:52.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.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: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: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: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: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: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: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: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:52.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="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:22.03%;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 June 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:22.03%;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;">Six months ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:52.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="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.27%;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.27%;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;">2021</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.27%;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.27%;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;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:52.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;">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:0.92%;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,445</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:0.92%;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;"> 6,815</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:0.92%;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;"> (5,720)</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:0.92%;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;"> 13,679</p></td></tr><tr><td style="vertical-align:bottom;width:52.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.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: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: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: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: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: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: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: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:52.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;">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: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;"> </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,320,314</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: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;"> </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;"> 27,483,350</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: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;"> </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;"> 34,888,703</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: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;"> </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;"> 27,483,350</p></td></tr><tr><td style="vertical-align:bottom;width:52.96%;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: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: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: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: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: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: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: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: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:52.96%;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:0.92%;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;"> 368,306</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:0.92%;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><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:0.92%;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><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:0.92%;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:52.96%;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:0.92%;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,688,620</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:0.92%;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;"> 27,483,350</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:0.92%;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;"> 34,888,703</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:0.92%;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;"> 27,483,350</p></td></tr><tr><td style="vertical-align:bottom;width:52.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;">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: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;"> </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: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;"> </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: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;"> </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: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;"> </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:52.96%;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: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: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: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: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.25</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: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: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.16)</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: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: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.50</p></td></tr><tr><td style="vertical-align:bottom;width:52.96%;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: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;">$</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.12</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: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;">$</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.25</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: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;">$</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.16)</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: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;">$</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.50</p></td></tr></table> 4445000 6815000 -5720000 13679000 35320314 27483350 34888703 27483350 368306 35688620 27483350 34888703 27483350 0.13 0.25 -0.16 0.50 0.12 0.25 -0.16 0.50 3121 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;">Recent Accounting Pronouncements</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">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 February 2016, the FASB issued ASU 2016-02, <i style="font-style:italic;">Leases (Topic 842)</i>, which is intended to increase transparency and comparability among organizations by requiring the recognition of right-of-use (“ROU”) assets and lease liabilities on the balance sheet. In July 2018, the FASB issued additional guidance which provided an additional transition method for adopting the updated guidance. Under the additional transition method, entities may elect to recognize a cumulative-effect adjustment to the opening balance of retained earnings in the year of adoption. In June 2020, the FASB issued additional guidance which extends the effective date of ASU 2016-02 for emerging growth companies to begin in fiscal years beginning after December 15, 2021, and interim periods beginning after December 15, 2022. Early adoption is permitted. The Company adopted this standard for its annual period as of January 1, 2022 by utilizing the effective date option of the modified retrospective transition approach, which does not require application of the guidance to comparative periods in the year of adoption. The primary effect of adoption will be recording ROU assets and corresponding lease liabilities for current operating leases. We believe the adoption of this standard will have a significant effect on our consolidated balance sheets and currently estimate a ROU asset and <span style="-sec-ix-hidden:Hidden_rGj64boWHEqIgHHM3ExnLQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">lease liability</span></span> of $12,300 to $13,200 to be recorded on <span style="-sec-ix-hidden:Hidden_2VARJbAeZE656AH-p5TpyQ;"><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">January 1, 2022</span></span>. We do not anticipate that the adoption of this standard will have a significant impact on our consolidated statements of operations and comprehensive income (loss) or our consolidated statements of cash flows.   </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">Accounting Pronouncements Not Yet Adopted</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. Early adoption is permitted. The Company plans to adopt this standard on January 1, 2023 and is currently in the process of evaluating the impact of the adoption of this standard on its consolidated financial statements.</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 December 2019, the FASB issued ASU 2019-12, <i style="font-style:italic;">Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes</i>. ASU 2019-12 simplifies the accounting for income taxes by removing certain exceptions to the general principles in Topic 740 and improves consistent application of and simplifies GAAP for other areas of Topic 740 by clarifying existing guidance. For emerging growth companies, this ASU is effective for fiscal years beginning after December 15, 2021, and interim periods within those fiscal years beginning after December 15, 2022. Early adoption is permitted. The Company is currently evaluating the impact the adoption of this ASU will have on its consolidated financial statements and related disclosures.</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;text-indent:10.8pt;margin:0pt;">There were no other new accounting standards that the Company expects to have a potential material impact to the financial position or results of operations upon adoption.</p> 12300000 13200000 <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 accretive acquisition of <span style="background:#ffffff;">Radar Leather Division S.r.l.</span> (“Radar”), a premiere 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 the six months ended June 30, 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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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: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:84.97%;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.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: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: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 3pt 0.05pt 0pt;"> 20,844</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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: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.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 0pt 0.05pt 0pt;"> (1,479)</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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 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;"> 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 preliminary fair value amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. The fair value estimates for the purchase price allocation are based on the Company’s best estimates and assumptions as of the reporting date and are considered preliminary. Since our initial purchase price allocation, we have decreased goodwill by </span><span style="background:#ffffff;">$422</span><span style="background:#ffffff;"> for revisions made to cash paid. The fair value measurements of all identifiable assets and liabilities, and the resulting goodwill related to the Radar acquisition are subject to change and the final purchase price allocation could be different from the amounts presented below. We expect to finalize the valuations as soon as practicable, but no later than one year from the date of the acquisition. 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 Products 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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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: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:84.97%;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.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: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 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;"> 19,365</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:84.97%;margin: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.7%;margin: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.7%;margin: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.62%;margin: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:84.97%;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.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;"><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: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 3pt 0.05pt 0pt;"> 2,347</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;margin: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.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;"> 2,500</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;margin: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.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;"> 612</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;margin: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.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;"> 10,200</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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,289</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;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.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;"> 25,683</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;margin: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.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;"> 2,548</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;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.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;"> 544</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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,318</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.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: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;"> 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;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:73.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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><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:9.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.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><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:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New 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:73.88%;margin: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.34%;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.72%;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.34%;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.7%;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:73.88%;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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:9.22%;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:73.88%;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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:9.24%;margin: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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin: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:73.88%;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.34%;background:#cceeff;margin: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.48%;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.24%;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.34%;background:#cceeff;margin: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.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="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;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:73.88%;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.34%;margin: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.48%;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.24%;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.34%;margin: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.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="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin: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;">$6,289</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 Products segment from the date of acquisition. The acquisition was not material to our consolidated financial statements.</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 accretive 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>$2,036 and $2,307 for the<span style="background:#ffffff;"> three and six months ended June 30, 2022, respectively.</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 $35,674 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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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: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:84.97%;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.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: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: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 3pt 0.05pt 0pt;"> 37,508</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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: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.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 0pt 0.05pt 0pt;"> (1,834)</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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 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;"> 35,674</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 preliminary fair value amounts recognized for the assets acquired and liabilities assumed, which have been estimated at their fair values. The fair value estimates for the purchase price allocation are based on the Company’s best estimates and assumptions as of the reporting date and are considered preliminary. The fair value measurements of identifiable assets and liabilities, and the resulting goodwill related to the Cyalume acquisition are subject to change and the final purchase price allocation could be different from the amounts presented below. We expect to finalize the valuations as soon as practicable, but no later than one year from the date of the acquisition. 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 Products 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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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: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:84.97%;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.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: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 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;"> 35,674</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:84.97%;margin: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.7%;margin: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.7%;margin: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.62%;margin: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:84.97%;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.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;"><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: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 3pt 0.05pt 0pt;"> 3,302</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;margin: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.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;"> 10,908</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;margin: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.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;"> 10</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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;"> 11,701</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;margin: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.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;"> 8,300</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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,641</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;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.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;"> 41,117</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;margin: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.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;"> 2,497</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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,578</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;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.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;"> 288</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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;"> 5,443</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.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: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;"> 35,674</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:73.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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><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:9.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.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><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:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New 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:73.88%;margin: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.34%;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.72%;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.34%;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.7%;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:73.88%;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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;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,900</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:9.22%;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:73.88%;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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:9.24%;margin: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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin: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:73.88%;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.34%;background:#cceeff;margin: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.48%;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.24%;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.34%;background:#cceeff;margin: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.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="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;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:73.88%;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.34%;margin: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.48%;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.24%;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,300</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin: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.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="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin: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;">$6,641</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 Products segment from the date of acquisition. The acquisition was not material to our consolidated financial statements.</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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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: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:84.97%;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.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: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: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 3pt 0.05pt 0pt;"> 20,844</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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: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.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 0pt 0.05pt 0pt;"> (1,479)</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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 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;"> 19,365</p></td></tr></table> 20844000 1479000 19365000 -422000 <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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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: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:84.97%;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.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: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 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;"> 19,365</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:84.97%;margin: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.7%;margin: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.7%;margin: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.62%;margin: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:84.97%;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.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;"><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: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 3pt 0.05pt 0pt;"> 2,347</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;margin: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.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;"> 2,500</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;margin: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.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;"> 612</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;margin: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.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;"> 10,200</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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,289</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;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.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;"> 25,683</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;margin: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.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;"> 2,548</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;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.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;"> 544</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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,318</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.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: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;"> 19,365</p></td></tr></table> 19365000 2347000 2500000 682000 612000 3053000 10200000 6289000 25683000 1120000 2548000 2106000 544000 6318000 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:73.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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><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:9.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.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><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:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New 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:73.88%;margin: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.34%;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.72%;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.34%;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.7%;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:73.88%;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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:9.22%;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:73.88%;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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:9.24%;margin: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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin: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:73.88%;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.34%;background:#cceeff;margin: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.48%;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.24%;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.34%;background:#cceeff;margin: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.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="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;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:73.88%;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.34%;margin: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.48%;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.24%;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.34%;margin: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.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="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin: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 6289000 2036000 2307000 35674000 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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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: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:84.97%;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.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: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: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 3pt 0.05pt 0pt;"> 37,508</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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: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.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 0pt 0.05pt 0pt;"> (1,834)</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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 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;"> 35,674</p></td></tr></table> 37508000 1834000 35674000 <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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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: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:84.97%;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.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: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 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;"> 35,674</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:84.97%;margin: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.7%;margin: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.7%;margin: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.62%;margin: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:84.97%;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.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;"><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: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 3pt 0.05pt 0pt;"> 3,302</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;margin: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.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;"> 10,908</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;margin: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.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;"> 10</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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;"> 11,701</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;margin: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.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;"> 8,300</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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,641</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;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.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;"> 41,117</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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:84.97%;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.7%;margin: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.7%;margin: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.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;"> 2,497</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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,578</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.7%;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.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;"> 288</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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;"><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.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;"><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.62%;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;"> 5,443</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.7%;margin: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.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: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;"> 35,674</p></td></tr></table> 35674000 3302000 10908000 255000 10000 11701000 8300000 6641000 41117000 1080000 2497000 1578000 288000 5443000 35674000 <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:73.88%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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><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:9.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.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><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:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New 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:73.88%;margin: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.34%;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.72%;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.34%;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.7%;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:73.88%;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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.24%;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,900</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:9.22%;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:73.88%;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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:9.24%;margin: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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin: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:73.88%;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.34%;background:#cceeff;margin: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.48%;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.24%;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.34%;background:#cceeff;margin: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.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="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;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:73.88%;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.34%;margin: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.48%;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.24%;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,300</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.34%;margin: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.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="font-family:'Calibri','Helvetica','sans-serif';font-size:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.22%;margin: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> 3900000 P15Y 3600000 P10Y 800000 8300000 6641000 <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:58.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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 0pt 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.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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:7.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:1.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 0pt 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.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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.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 0pt 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.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New 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:58.5%;margin: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.84%;margin: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:19.01%;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 June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin: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:18.78%;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;">Six months ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;margin: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.84%;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:8.58%;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.87%;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:8.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;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;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:8.46%;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.84%;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:8.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.38%;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;"> 66,442</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:7.37%;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,449</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 124,365</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.32%;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;"> 123,826</p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.38%;margin: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,327</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.37%;margin: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,591</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,361</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.32%;margin: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,433</p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.38%;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,448</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:7.37%;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,486</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;margin: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,362</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.32%;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,079</p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.38%;margin: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,506</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.37%;margin: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,040</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 56,525</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 52,034</p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;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:7.38%;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,509</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:7.37%;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,995</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;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:7.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;"> 2,025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;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:7.32%;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,725</p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;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.38%;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;"> 118,232</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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: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.37%;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;"> 114,561</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;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%;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;"> 222,638</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;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.32%;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;"> 225,097</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:48.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;"><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.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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:9.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><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:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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:8.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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:8.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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></tr><tr><td style="vertical-align:bottom;width:48.91%;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:23.77%;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 June 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:21.75%;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;">Six months ended June 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></tr><tr><td style="vertical-align:bottom;width:48.91%;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:10.72%;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:2.33%;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:10.7%;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;">2021</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:9.95%;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:9.95%;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;">2021</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></tr><tr><td style="vertical-align:bottom;width:48.91%;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.49%;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:9.23%;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;"> 88,726</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;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.48%;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:9.22%;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;"> 84,521</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.15%;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:8.79%;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;"> 166,113</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.15%;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:8.79%;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;"> 173,063</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></tr><tr><td style="vertical-align:bottom;width:48.91%;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.49%;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:9.23%;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;"> 29,506</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;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.48%;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:9.22%;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;"> 30,040</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.15%;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:8.79%;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;"> 56,525</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.15%;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:8.79%;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;"> 52,034</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></tr><tr><td style="vertical-align:bottom;width:48.91%;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.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.49%;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:9.23%;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;"> 118,232</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;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.48%;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:9.22%;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;"> 114,561</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.15%;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:8.79%;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;"> 222,638</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.15%;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:8.79%;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;"> 225,097</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></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 which are satisfied at a future point of time. Contract liabilities are reduced when the performance obligation is satisfied. Contract liabilities are included in accrued liabilities in the Company’s consolidated balance sheets and totaled $6,272 and $10,949 as of June 30, 2022 and December 31, 2021, respectively. Revenue recognized during the three and six months ended June 30, 2022 from amounts included in contract liabilities as of December 31, 2021 was $2,225 and $7,216, 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 June 30, 2022, we had $18,395 of remaining 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 June 30, 2022. We expect to recognize approximately 63% 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:58.5%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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 0pt 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.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:1.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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:7.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:1.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 0pt 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.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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.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 0pt 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.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New 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:58.5%;margin: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.84%;margin: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:19.01%;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 June 30, </b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin: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:18.78%;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;">Six months ended June 30, </b></p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;margin: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.84%;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:8.58%;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.87%;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:8.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;">2021</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;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:8.46%;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.84%;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:8.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 0pt 0.05pt 0pt;"><b style="font-weight:bold;">2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.38%;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;"> 66,442</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:7.37%;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,449</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 124,365</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.32%;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;"> 123,826</p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.38%;margin: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,327</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.37%;margin: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,591</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 22,361</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.32%;margin: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,433</p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.38%;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,448</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:7.37%;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,486</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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;margin: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,362</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.32%;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,079</p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.38%;margin: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,506</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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;"> </p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.37%;margin: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,040</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 56,525</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.32%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 52,034</p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;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:7.38%;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,509</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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:7.37%;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,995</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;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:7.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;"> 2,025</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;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:7.32%;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,725</p></td></tr><tr><td style="vertical-align:bottom;width:58.5%;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.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.19%;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.38%;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;"> 118,232</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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: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.37%;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;"> 114,561</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;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%;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;"> 222,638</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.84%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.15%;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.32%;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;"> 225,097</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:48.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;"><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.49%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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:9.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><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:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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:8.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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:8.79%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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></tr><tr><td style="vertical-align:bottom;width:48.91%;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:23.77%;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 June 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:21.75%;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;">Six months ended June 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></tr><tr><td style="vertical-align:bottom;width:48.91%;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:10.72%;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:2.33%;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:10.7%;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;">2021</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:9.95%;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:9.95%;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;">2021</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></tr><tr><td style="vertical-align:bottom;width:48.91%;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.49%;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:9.23%;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;"> 88,726</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;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.48%;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:9.22%;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;"> 84,521</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.15%;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:8.79%;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;"> 166,113</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.15%;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:8.79%;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;"> 173,063</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></tr><tr><td style="vertical-align:bottom;width:48.91%;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.49%;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:9.23%;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;"> 29,506</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;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.48%;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:9.22%;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;"> 30,040</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.15%;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:8.79%;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;"> 56,525</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.15%;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:8.79%;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;"> 52,034</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></tr><tr><td style="vertical-align:bottom;width:48.91%;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.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.49%;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:9.23%;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;"> 118,232</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;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.48%;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:9.22%;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;"> 114,561</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.15%;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:8.79%;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;"> 222,638</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.15%;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:8.79%;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;"> 225,097</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></tr></table> 66442000 64449000 124365000 123826000 11327000 7591000 22361000 19433000 9448000 10486000 17362000 26079000 29506000 30040000 56525000 52034000 1509000 1995000 2025000 3725000 118232000 114561000 222638000 225097000 88726000 84521000 166113000 173063000 29506000 30040000 56525000 52034000 118232000 114561000 222638000 225097000 6272000 10949000 2225000 7216000 18395000 0.63 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 June 30, 2022 and December 31, 2021:</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:70.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;"><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.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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.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:13.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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:70.57%;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:10.75%;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.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 style="vertical-align:bottom;white-space:nowrap;width:1.77%;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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.19%;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:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.57%;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:10.75%;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;">June 30, 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;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, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.57%;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.27%;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:9.47%;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,492</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.77%;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.19%;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;"> 28,707</p></td></tr><tr><td style="vertical-align:bottom;width:70.57%;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.27%;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:9.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,881</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.77%;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.19%;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,053</p></td></tr><tr><td style="vertical-align:bottom;width:70.57%;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.27%;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:9.47%;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,257</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.77%;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.19%;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;"> 31,218</p></td></tr><tr><td style="vertical-align:bottom;width:70.57%;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.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.27%;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:9.47%;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;"> 76,630</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.77%;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.19%;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;"> 63,978</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:70.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;"><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.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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.47%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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.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:13.19%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;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:70.57%;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:10.75%;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.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 style="vertical-align:bottom;white-space:nowrap;width:1.77%;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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:13.19%;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:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:70.57%;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:10.75%;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;">June 30, 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;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, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:70.57%;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.27%;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:9.47%;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,492</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.77%;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.19%;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;"> 28,707</p></td></tr><tr><td style="vertical-align:bottom;width:70.57%;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.27%;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:9.47%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 8,881</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.77%;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.19%;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,053</p></td></tr><tr><td style="vertical-align:bottom;width:70.57%;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.27%;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:9.47%;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,257</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.77%;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.19%;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;"> 31,218</p></td></tr><tr><td style="vertical-align:bottom;width:70.57%;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.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.27%;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:9.47%;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;"> 76,630</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.77%;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.19%;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;"> 63,978</p></td></tr></table> 30492000 28707000 8881000 4053000 37257000 31218000 76630000 63978000 <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 six months ended June 30, 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.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><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.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><td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:8.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><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.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><td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New 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.34%;margin: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.03%;margin: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.43%;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;">Products</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;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:2.03%;margin: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.43%;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.34%;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, 2021</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.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.15%;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;"> 63,646</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.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:8.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;"> 2,616</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.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.15%;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;"> 66,262</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Radar acquisition</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.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;margin: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,711</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.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:8.34%;margin: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: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.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;margin: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,711</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;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: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.27%;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.15%;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;"> (463)</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.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:8.34%;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: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.27%;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.15%;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;"> (463)</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;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, 2022</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.27%;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.15%;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;"> 69,894</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.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:8.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;"> 2,616</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.27%;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.15%;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;"> 72,510</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Radar acquisition measurement period adjustment</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.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;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;"> (422)</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.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:8.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;"> —</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.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;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;"> (422)</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Cyalume acquisition</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.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;margin: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,641</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.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:8.34%;margin: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: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.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;margin: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,641</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;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: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.27%;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:8.15%;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;"> (702)</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.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;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: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.27%;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:8.15%;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;"> (702)</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;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, 2022</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.27%;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.15%;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;"> 75,411</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.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:8.34%;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: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.27%;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.15%;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,027</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 $85,612 and $7,585, respectively, as of June 30, 2022 and $73,899 and $7,585, respectively, as of December 31, 2021.</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 June 30, 2022 and December 31, 2021:</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.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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></tr><tr><td style="vertical-align:bottom;width:56.12%;margin: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.73%;margin: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:42.13%;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;">June 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;margin: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.73%;margin: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.08%;margin: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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.28%;margin: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.12%;margin: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.73%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.28%;margin: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.12%;margin: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.73%;margin: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.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;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin: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.08%;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.74%;margin: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.08%;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.74%;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.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;">Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 85,908</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> (55,789)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> 30,119</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">11</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 15,956</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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,124)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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,832</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 6,492</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> (3,733)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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,759</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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;"> 977</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> (977)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 109,333</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> (71,623)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> 37,710</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">Indefinite</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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;"> 126,800</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> (71,623)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> 55,177</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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></tr><tr><td style="vertical-align:bottom;width:56.12%;margin: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.73%;margin: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:42.13%;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, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;margin: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.73%;margin: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.08%;margin: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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.28%;margin: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.12%;margin: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.73%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.28%;margin: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.12%;margin: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.73%;margin: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.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;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin: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.08%;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.74%;margin: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.08%;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.74%;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.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;">Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 74,078</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> (52,536)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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,542</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">11</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 11,978</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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;"> (10,988)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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;"> 990</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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:56.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 6,473</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> (3,264)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> 3,209</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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;"> 1,037</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> (1,037)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 93,566</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> (67,825)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> 25,741</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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;"> 16,674</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> 16,674</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">Indefinite</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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;"> 110,240</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> (67,825)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> 42,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </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,240 and $2,179 for the three months ended June 30, 2022 and 2021, respectively, of which $130 and $200 was included in cost of goods sold in the consolidated statements of operations and comprehensive income (loss) for the respective periods. Amortization expense for the six months ended June 30, 2022 and 2021 was $4,397 and $4,365, respectively, of which $180 and $398 was included in cost of goods sold in the consolidated statements of operations and comprehensive income (loss) 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 finite-lived intangible assets for the remaining six months of 2022, 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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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:84.97%;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 2022</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;">    </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: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 3pt 0.05pt 0pt;"> 4,277</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</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.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: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;"> 7,923</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 5,029</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.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: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,071</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 2,661</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.7%;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.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;"> 14,749</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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.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 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;"> 37,710</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.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><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.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><td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:8.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><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.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><td style="vertical-align:bottom;white-space:nowrap;width:8.15%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New 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.34%;margin: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.03%;margin: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.43%;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;">Products</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;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:2.03%;margin: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.43%;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.34%;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, 2021</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.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.15%;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;"> 63,646</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.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:8.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;"> 2,616</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.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.15%;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;"> 66,262</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Radar acquisition</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.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;margin: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,711</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.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:8.34%;margin: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: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.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;margin: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,711</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;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: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.27%;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.15%;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;"> (463)</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.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:8.34%;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: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.27%;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.15%;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;"> (463)</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;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, 2022</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.27%;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.15%;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;"> 69,894</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.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:8.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;"> 2,616</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.27%;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.15%;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;"> 72,510</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Radar acquisition measurement period adjustment</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.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;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;"> (422)</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.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:8.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;"> —</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.27%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;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;"> (422)</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 6pt;">Cyalume acquisition</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.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;margin: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,641</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.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:8.34%;margin: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: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.27%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.15%;margin: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,641</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;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: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.27%;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:8.15%;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;"> (702)</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.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:8.34%;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: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.27%;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:8.15%;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;"> (702)</p></td></tr><tr><td style="vertical-align:bottom;width:65.34%;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, 2022</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.27%;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.15%;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;"> 75,411</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.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:8.34%;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: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.27%;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.15%;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,027</p></td></tr></table> 63646000 2616000 66262000 6711000 6711000 -463000 -463000 69894000 2616000 72510000 -422000 -422000 6641000 6641000 -702000 -702000 75411000 2616000 78027000 85612000 7585000 73899000 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.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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></tr><tr><td style="vertical-align:bottom;width:56.12%;margin: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.73%;margin: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:42.13%;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;">June 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;margin: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.73%;margin: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.08%;margin: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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.28%;margin: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.12%;margin: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.73%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.28%;margin: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.12%;margin: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.73%;margin: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.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;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin: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.08%;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.74%;margin: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.08%;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.74%;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.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;">Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 85,908</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> (55,789)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> 30,119</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">11</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 15,956</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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,124)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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,832</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 6,492</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> (3,733)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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,759</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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;"> 977</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> (977)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 109,333</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> (71,623)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> 37,710</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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,467</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">Indefinite</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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;"> 126,800</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> (71,623)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> 55,177</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.73%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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.74%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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></tr><tr><td style="vertical-align:bottom;width:56.12%;margin: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.73%;margin: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:42.13%;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, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;margin: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.73%;margin: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.08%;margin: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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.28%;margin: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.12%;margin: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.73%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.08%;margin: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.74%;margin: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.28%;margin: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.12%;margin: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.73%;margin: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.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;">Gross</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin: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.08%;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.74%;margin: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.08%;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.74%;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.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;">Useful Life</b></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"><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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 74,078</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> (52,536)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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,542</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">11</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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;"> 11,978</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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;"> (10,988)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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;"> 990</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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:56.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 6,473</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> (3,264)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> 3,209</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">4</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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;"> 1,037</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> (1,037)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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: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;"> 93,566</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> (67,825)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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: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;"> 25,741</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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="visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;"> </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.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.28%;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.12%;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.73%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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;"> 16,674</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> 16,674</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">Indefinite</p></td></tr><tr><td style="vertical-align:bottom;width:56.12%;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.73%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.08%;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;"> 110,240</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> (67,825)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.08%;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;"> 42,415</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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;">  </p></td></tr></table> 85908000 -55789000 30119000 P11Y 15956000 -11124000 4832000 P8Y 6492000 -3733000 2759000 P4Y 977000 -977000 P4Y 109333000 -71623000 37710000 17467000 17467000 126800000 -71623000 55177000 74078000 -52536000 21542000 P11Y 11978000 -10988000 990000 P7Y 6473000 -3264000 3209000 P4Y 1037000 -1037000 P4Y 93566000 -67825000 25741000 16674000 16674000 110240000 -67825000 42415000 2240000 2179000 130000 200000 4397000 4365000 180000 398000 <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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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:84.97%;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 2022</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;">    </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: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 3pt 0.05pt 0pt;"> 4,277</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</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.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: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;"> 7,923</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 5,029</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.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: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,071</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 2,661</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.7%;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.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;"> 14,749</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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.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 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;"> 37,710</p></td></tr></table> 4277000 7923000 5029000 3071000 2661000 14749000 37710000 <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.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 0pt 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.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: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:10.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 0pt 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.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: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:10.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 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.44%;margin: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.25%;margin: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.01%;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;">June 30, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin: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.01%;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, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;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.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: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;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.44%;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:2.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: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:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 321</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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: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:10.6%;margin: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,174</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;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.6%;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:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;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.6%;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.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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:1.41%;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.6%;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,321</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.41%;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.6%;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,174</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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;"><span style="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:10.6%;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.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;"><span style="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:10.6%;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.44%;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:2.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: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:10.6%;margin: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:2.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: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:10.6%;margin: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.44%;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:2.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;"><span style="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:10.6%;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;"> 143,564</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="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:10.6%;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;"> 148,564</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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:1.41%;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.6%;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;"> 506</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.41%;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.6%;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:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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;"><span style="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:10.6%;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;"> 144,070</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="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:10.6%;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;"> 148,564</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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:1.41%;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.6%;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,826)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.41%;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.6%;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;"> (2,048)</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;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.6%;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;"> 142,244</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;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.6%;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;"> 146,516</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 six months of 2022, 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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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:84.97%;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 2022</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;">    </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: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 3pt 0.05pt 0pt;"> 5,000</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</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.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: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;"> 10,000</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 10,127</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.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: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;"> 10,127</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 118,690</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.7%;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.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;"> 126</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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 principal payments</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.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 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;"> 154,070</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;">New 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 “New 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 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 New 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 June 30, 2022 and December 31, 2021. As of June 30, 2022, there were $2,292 in outstanding letters of credit and $97,708 of availability. </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 Borrower may elect to have the Revolving Loan and Term Loan under the New Credit Agreement bear interest at a base rate or a LIBOR rate, in each case, plus an applicable margin. The applicable margin for these borrowings will range from 0.50% to 1.50% per annum, in the case of base rate borrowings, and 1.50% to 2.50% per annum, in the case of LIBOR borrowings, in each case based upon the level of the Company’s consolidated total net leverage ratio. The New Credit Agreement also requires the Borrower to pay a commitment fee on the unused portion of the loan commitments. Such commitment fee will range 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 New 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 New 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 New 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 New 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;">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. </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:justify;margin:0pt 0pt 12pt 0pt;">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 a LIBOR rate, 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.</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 June 30, 2022 and December 31, 2021.</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;">In September 2021, we entered into an interest rate swap agreement to hedge forecasted monthly interest rate payments on our floating rate debt. As of June 30, 2022, we had the following interest rate swap agreement (the “Swap Agreement”):</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:73.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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:73.87%;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.32%;margin: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.7%;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.32%;margin: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 style="vertical-align:bottom;white-space:nowrap;width:9.22%;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><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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:73.87%;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.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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:9.22%;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.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.22%;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.875</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></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;">Under the terms of the Swap Agreement, we receive payments based on the 1-month LIBOR (approximately 3.67% as of June 30, 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;">During the six months ended June 30, 2022, 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 entered into the Swap Agreement to convert a portion of the interest rate exposure on our floating rate debt from variable to fixed. We designated this Swap Agreement as a cash flow hedge. A portion of the amount included in accumulated other comprehensive loss 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 Agreement 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 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;">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 agreement, and we believe we will have debt outstanding through the expiration date of the swap 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 Agreement in the 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:71.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><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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:2.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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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.25%;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.01%;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:2.25%;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.41%;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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;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:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.25%;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.01%;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;">June 30, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.01%;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, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;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;"> 2,115</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;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;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;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,715</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,607</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;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;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;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;"> 389</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 $5,123 and $913 as of June 30, 2022 and December 31, 2021, respectively, is recorded in accumulated other comprehensive loss.</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 income for the three and six months ended June 30, 2022 was $987 and $4,064, respectively. There was $15 and $146 reclassified from accumulated other comprehensive loss into earnings for the three and six months ended June 30, 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 June 30, 2022, approximately $2,121 is expected to be reclassified from accumulated other comprehensive loss 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.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 0pt 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.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: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:10.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 0pt 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.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: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:10.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 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.44%;margin: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.25%;margin: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.01%;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;">June 30, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;margin: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.01%;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, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;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.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: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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;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.44%;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:2.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: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:10.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0.05pt 0pt;"> 321</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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: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:10.6%;margin: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,174</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;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.6%;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:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;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.6%;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.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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:1.41%;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.6%;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,321</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.41%;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.6%;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,174</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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;"><span style="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:10.6%;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.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;"><span style="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:10.6%;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.44%;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:2.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: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:10.6%;margin: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:2.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: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:10.6%;margin: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.44%;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:2.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;"><span style="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:10.6%;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;"> 143,564</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="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:10.6%;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;"> 148,564</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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:1.41%;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.6%;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;"> 506</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.41%;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.6%;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:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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;"><span style="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:10.6%;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;"> 144,070</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="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:10.6%;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;"> 148,564</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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:1.41%;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.6%;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,826)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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:1.41%;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.6%;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;"> (2,048)</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;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.6%;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;"> 142,244</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.41%;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.6%;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;"> 146,516</p></td></tr></table> 321000 3174000 10000000 10000000 10321000 13174000 143564000 148564000 506000 144070000 148564000 1826000 2048000 142244000 146516000 <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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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:84.97%;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 2022</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;">    </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: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 3pt 0.05pt 0pt;"> 5,000</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</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.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: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;"> 10,000</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 10,127</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.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: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;"> 10,127</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 118,690</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.7%;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.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;"> 126</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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 principal payments</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.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 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;"> 154,070</p></td></tr></table> 5000000 10000000 10127000 10127000 118690000 126000 154070000 200000000 100000000 15000000 10000000 0.0125 0 0 2292000 97708000 0.0050 0.0150 0.0150 0.0250 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:73.87%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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:9.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.32%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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:73.87%;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.32%;margin: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.7%;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.32%;margin: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 style="vertical-align:bottom;white-space:nowrap;width:9.22%;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><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:8pt;text-align:center;margin:0pt 0pt 0.05pt 0pt;"> </p></td></tr><tr><td style="vertical-align:bottom;width:73.87%;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.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.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:9.22%;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.32%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.22%;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.875</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></table> 100000000 0.00875 0.0367 <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:71.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><td style="vertical-align:bottom;white-space:nowrap;width:2.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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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:2.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;"><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;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:10.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></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin: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.25%;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.01%;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:2.25%;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.41%;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:11pt;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:10.6%;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:11pt;visibility:hidden;">​</span></p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;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:2.25%;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.01%;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;">June 30, 2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.01%;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, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other current assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;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;"> 2,115</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;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;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Other assets</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;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,715</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,607</p></td></tr><tr><td style="vertical-align:bottom;width:71.44%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;">Accrued liabilities</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;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;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:2.25%;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.41%;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.6%;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;"> 389</p></td></tr></table> 2115000 4715000 1607000 389000 5123000 913000 987000 4064000 -15000 -146000 2121000 <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 0pt 12pt 0pt;"><span style="letter-spacing:0.2pt;background:#ffffff;">In March 2020, the Company settled an administrative enforcement action filed by the U.S. Federal Trade Commission (“FTC”) relating to Company’s sale of VieVu, LLC to Axon Enterprise Inc. (“Axon”) wherein the FTC alleged that the operative agreements contained non-compete and non-solicitation provisions in violation of Section 5 of the Federal Trade Commission Act, as amended, 15 U.S.C. § 45, and Section 7 of the Clayton Act, as amended, 15 U.S.C. § 18. The FTC’s administrative complaint sought only injunctive relief against the Company to enjoin the enforcement of these provisions, now and in the future, and did not seek monetary damages against the Company. In January 2020, the Company and Axon had rescinded these provisions. Pursuant to a consent agreement and proposed consent order entered into by the FTC and the Company, on June 11, 2020, the FTC issued a Decision and Order accepting the Consent Agreement (the “Order”). Under the Order, the Company agreed to not modify and reinstate the rescinded provisions and to not enter into any new similar provisions with Axon, absent prior approval from the FTC. In addition, as part of the Company’s compliance program, the Order imposes an obligation to distribute to, and train the directors and officers on, the requirements of the consent order and to report annually for five years to the FTC ensuring compliance with the consent order. On July 10, 2020, the Company filed its Interim Verified Compliance Report and, thereafter, on June 11, 2021 and June 10, 2022, filed its Annual Compliance Reports, each as required by the Order</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="letter-spacing:0.2pt;background:#ffffff;">In June 2020, the Company received a Civil Investigative Demand (“CID”) from the United States Department of Justice (“DOJ”), Western District of Washington (Seattle, WA), pertaining to a False Claims Act investigation, 31 U.S.C, sections 3729-3733 (“FCA”), concerning allegations that soft body armor vest accessory panels sold by the Company are falsely labeled as compliant with the National Institute of Justice performance standards. In September 2020, the Company made its First Production of Documents which contained only documents and data that had been deemed to be of a “priority” nature pursuant to an agreement reached between the Company’s counsel and the Assistant U.S. Attorney handling the matter. In July 2021, the Company received a request for additional information relating to the subject matter of the investigation, with which the Company complied. In October 2021, November 2021 and December 2021, the Company produced additional documents responsive to the correspondence containing requests for specific documents and supplemental information. At this preliminary stage of the investigation, the Company does not have enough information to make an evaluation of the merits, exposure or potential risks regarding this matter.</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="letter-spacing:0.2pt;background:#ffffff;">In September 2021, Safariland, LLC, a wholly-owned subsidiary of the Company, received a jury verdict awarding </span><span style="letter-spacing:0.2pt;background:#ffffff;">$7,500</span><span style="letter-spacing:0.2pt;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 timely filed its notice of appeal on May 16, 2022 and, on July 7, 2022, Safariland timely filed its opening brief.  Plaintiff has </span><span style="letter-spacing:0.2pt;background:#ffffff;">30 days</span><span style="letter-spacing:0.2pt;background:#ffffff;"> to file a response brief, and Safariland will have </span><span style="letter-spacing:0.2pt;background:#ffffff;">21 days</span><span style="letter-spacing:0.2pt;background:#ffffff;"> to file a reply, provided that it is no later than seven days before oral argument is scheduled. Whi</span><span style="letter-spacing:0.2pt;">le any litigation contains an element of uncertainty, the Company believes it is reasonably possible, not probable, that the Company could incur losses related to this case, however, any losses would be indemnified by our insurance carrier under applicable policies</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><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:italic;margin:0pt 0pt 12pt 0pt;">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 office, warehouse, and distribution space under non-cancelable operating leases. As leases expire, it can be expected that, in the normal course of business, certain leases will be renewed or replaced. Our leases generally contain multi-year renewal options and escalation clauses. Total rent expense of the Company for the three months ended June 30, 2022 and 2021 was $1,202 and $1,175, respectively, and for the six months ended June 30, 2022 and 2021 was $2,402 and $2,325, 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;">Future minimum lease payments required under non-cancelable operating leases that have initial or remaining non-cancelable lease terms in excess of one year for the remaining six months of 2022, 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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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:84.97%;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 2022</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.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: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 3pt 0.05pt 0pt;"> 2,358</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</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.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: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;"> 4,276</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 3,077</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.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: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;"> 1,618</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 639</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.7%;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.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;"> 104</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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 minimum lease payments</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.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 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;"> 12,072</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 material future minimum sublease payments to be received under non-cancelable subleases as of June 30, 2022. There was no material sublease income for the three and six months ended June 30, 2022 and 2021.</p> 7500000 P30D P21D 1202000 1175000 2402000 2325000 <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:84.97%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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: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:84.97%;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 2022</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.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: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 3pt 0.05pt 0pt;"> 2,358</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 0.05pt 0pt;">2023</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.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: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;"> 4,276</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 3,077</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.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: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;"> 1,618</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;background:#cceeff;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.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.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: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 3pt 0.05pt 0pt;"> 639</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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.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.7%;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.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;"> 104</p></td></tr><tr><td style="vertical-align:bottom;width:84.97%;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 minimum lease payments</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.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 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;"> 12,072</p></td></tr></table> 2358000 4276000 3077000 1618000 639000 104000 12072000 <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 June 30, 2022, the Company’s tax years subsequent to 2016 are subject to examination by tax authorities with few exceptions. During the six months ended June 30, 2022, one of the Company’s Canadian subsidiaries concluded an examination of its tax filings for the period June 1, 2016 through December 31, 2017 that resulted in no changes to the filings or the amount of tax due. The 2018 and 2019 tax returns of a separate Canadian subsidiary 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;">In assessing the realizability of deferred tax assets, the Company performs a quarterly evaluation of whether it is more likely than not that some portion or all of the deferred income tax assets will not be realized. During the course of this evaluation, the Company considers all available positive and negative evidence and if, based upon the weight of available evidence, it is more likely than not the deferred tax assets will not be realized, a valuation allowance is recorded. Based on the Company’s evaluation, a valuation allowance of $1,890 has been recorded as of June 30, 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 Company’s effective tax rate for the three months ended June 30, 2022 and 2021 was 25.4% and 26.9%, respectively, and 44.0% and 30.4% for the six months ended June 30, 2022 and 2021, respectively. Our effective tax rate for the three and six months ended June 30, 2022 and 2021 differs from our statutory rate primarily due to nondeductible executive compensation.</p> 1890000 0.254 0.269 0.440 0.304 <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_fvXw0vehOUGDBisDy_oc_Q;"><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;">$174</span><span style="background:#ffffff;"> and </span><span style="background:#ffffff;">$328</span><span style="background:#ffffff;"> for the three months ended June 30, 2022 and 2021, respectively, and </span><span style="background:#ffffff;">$558</span><span style="background:#ffffff;"> and </span><span style="background:#ffffff;">$1,280</span><span style="background:#ffffff;"> for the six months ended June 30, 2022 and 2021, respectively, and is </span>included in selling, general and administrative in the Company’s consolidated statements of operations and comprehensive income (loss)<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;"> (split-adjusted) 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 will 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 will 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 consolidated statements of operations and comprehensive income (loss)<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><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;">Stock 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;">On March 9, 2022, the Company’s board of directors granted </span><span style="background:#ffffff;">85,108</span><span style="background:#ffffff;"> restricted stock awards (“RSAs”) and issued </span><span style="background:#ffffff;">309,479</span><span style="background:#ffffff;"> stock options under the Cadre Stock Incentive Plan. The RSAs will vest in three equal installments over a </span><span style="background:#ffffff;">three-year</span><span style="background:#ffffff;"> period from the date of grant and have 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 grant. The options issued will vest and become exercisable in equal installments over a </span><span style="background:#ffffff;">three-year</span><span style="background:#ffffff;"> period from the date of grant and expire </span><span style="background:#ffffff;">ten years</span><span style="background:#ffffff;"> from the date of the grant. The fair value of the options has been estimated as of the grant date using the Black-Scholes option-pricing model and resulted in a grant date fair value of approximately </span><span style="background:#ffffff;">$6.72</span><span style="background:#ffffff;"> per option. </span></p> 3 174000 328000 558000 1280000 1433500 23.45 632500 801000 22100000 11516000 85108 309479 P3Y 23.45 P3Y P10Y 6.72 <p style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-weight:bold;margin:0pt 0pt 12pt 0pt;">10.     ASSETS AND LIABILITIES HELD FOR SALE</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 October 2021, the Company designated our Daventry, UK facility as held for sale. Accordingly, during 2021, the Company determined that the assets and liabilities associated with the Daventry facility met the criteria for classification as held for sale but did not meet the criteria for classification as discontinued operations as the deconsolidation did not represent a strategic shift in the business. Total assets and liabilities associated with the Daventry facility were </span><span style="background:#ffffff;">$251</span><span style="background:#ffffff;"> and </span><span style="background:#ffffff;">$106</span><span style="background:#ffffff;">, respectively, and are presented in our consolidated balance sheet as of June 30, 2022 as current assets held for sale and current liabilities held for sale, respectively. The Company is actively marketing this facility and expects to complete the sale of this facility in 2022</span>.</p> 251000 106000 <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 $112 and $142 for the three months ended June 30, 2022 and 2021, respectively, and $234 and $295 for the six months ended June 30, 2022 and 2021, respectively. Rent expense related to these leases is included in related party expense in the Company’s consolidated statements of operations and comprehensive income (loss).</p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-indent:10.8pt;margin:0pt 0pt 12pt 0pt;"><span style="letter-spacing:0.2pt;background:#ffffff;">During the six months ended June 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;width:100%;border:0pt;"><tr><td style="width:28.8pt;"/><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;"> which is included in related party expense in the Company’s consolidated statements of operations and comprehensive income (loss). </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;width:100%;border:0pt;"><tr><td style="width:28.8pt;"/><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 consolidated balance sheets</span><span style="font-family:'Times New Roman','Times','serif';font-size:10pt;font-style:normal;font-weight:normal;">.</span></td></tr></table><div style="margin-top:12pt;"/> 4 112000 142000 234000 295000 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: Products 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;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;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:58.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:middle;white-space:nowrap;width:7.44%;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.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:7.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.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.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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></tr><tr><td style="vertical-align:bottom;width:58.58%;margin: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:39.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;">Six months ended June 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;margin: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.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;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.44%;margin: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.13%;margin: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.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.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.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;">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.16%;margin: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.26%;margin: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:58.58%;margin: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.64%;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;">    Products    </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.44%;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.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 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.43%;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:58.58%;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.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;">$</p></td><td style="vertical-align:middle;white-space:nowrap;width:7.44%;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;"> 185,223</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.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;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;"> 47,824</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.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.31%;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;"> (10,409)</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.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.26%;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;"> 222,638</p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;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.2%;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.44%;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;"> 112,067</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.13%;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.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;"> 37,578</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.16%;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.31%;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;"> (10,417)</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.16%;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.26%;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;"> 139,228</p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;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.2%;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.44%;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;"> 73,156</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.13%;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;"> 10,246</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.16%;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.31%;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</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.16%;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.26%;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;"> 83,410</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:58.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:7.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 0pt 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.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:7.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.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.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-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.31%;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.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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></tr><tr><td style="vertical-align:bottom;width:58.58%;margin: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:39.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;">Six months ended June 30, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;margin: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.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;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.44%;margin: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.13%;margin: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.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.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.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;">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.16%;margin: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.26%;margin: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:58.58%;margin: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.64%;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;">    Products    </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.44%;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.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 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.43%;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:58.58%;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.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.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 0.05pt 0pt;"> 190,121</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.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;">$</p></td><td style="vertical-align:bottom;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 3pt 0.05pt 0pt;"> 47,579</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.16%;background:#cceeff;margin:0pt;padding:0pt;"><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.31%;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;"> (12,603)</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.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.26%;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;"> 225,097</p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;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.2%;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.44%;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;"> 110,028</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.13%;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.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;"> 35,476</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.16%;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.31%;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;"> (12,594)</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.16%;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.26%;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;"> 132,910</p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;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.2%;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.44%;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;"> 80,093</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.13%;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;"> 12,103</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.16%;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.31%;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;"> (9)</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.16%;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.26%;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;"> 92,187</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><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 <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;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:58.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:middle;white-space:nowrap;width:7.44%;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.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:7.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.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.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.31%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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></tr><tr><td style="vertical-align:bottom;width:58.58%;margin: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:39.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;">Six months ended June 30, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;margin: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.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;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.44%;margin: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.13%;margin: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.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.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.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;">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.16%;margin: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.26%;margin: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:58.58%;margin: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.64%;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;">    Products    </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.44%;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.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 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.43%;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:58.58%;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.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;">$</p></td><td style="vertical-align:middle;white-space:nowrap;width:7.44%;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;"> 185,223</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.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.3%;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;"> 47,824</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.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.31%;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;"> (10,409)</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.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.26%;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;"> 222,638</p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;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.2%;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.44%;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;"> 112,067</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.13%;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.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;"> 37,578</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.16%;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.31%;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;"> (10,417)</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.16%;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.26%;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;"> 139,228</p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;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.2%;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.44%;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;"> 73,156</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.13%;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;"> 10,246</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.16%;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.31%;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</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.16%;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.26%;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;"> 83,410</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:58.58%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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:7.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 0pt 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.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:7.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.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.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-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.31%;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.16%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt 0pt 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.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></tr><tr><td style="vertical-align:bottom;width:58.58%;margin: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:39.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;">Six months ended June 30, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;margin: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.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;"><span style="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;white-space:nowrap;width:7.44%;margin: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.13%;margin: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.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.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.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;">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.16%;margin: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.26%;margin: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:58.58%;margin: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.64%;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;">    Products    </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.44%;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.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 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.43%;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:58.58%;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.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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:7.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 0.05pt 0pt;"> 190,121</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.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;">$</p></td><td style="vertical-align:bottom;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 3pt 0.05pt 0pt;"> 47,579</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.16%;background:#cceeff;margin:0pt;padding:0pt;"><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.31%;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;"> (12,603)</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.16%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times 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.26%;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;"> 225,097</p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;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.2%;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.44%;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;"> 110,028</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.13%;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.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;"> 35,476</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.16%;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.31%;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;"> (12,594)</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.16%;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.26%;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;"> 132,910</p></td></tr><tr><td style="vertical-align:bottom;width:58.58%;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.2%;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.44%;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;"> 80,093</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.13%;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;"> 12,103</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.16%;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.31%;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;"> (9)</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.16%;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.26%;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;"> 92,187</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><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> 185223000 47824000 -10409000 222638000 112067000 37578000 -10417000 139228000 73156000 10246000 8000 83410000 190121000 47579000 -12603000 225097000 110028000 35476000 -12594000 132910000 80093000 12103000 -9000 92187000 EXCEL 80 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( #>$"U4'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 " WA M5@YJF).T K @ $0 &1O8U!R;W!S+V-O&ULS9+! M2L0P$(9?17)OITE!)'1S6?&D(+B@> O)[&ZP:4,RTN[;F\;=+J(/X#$S?[[Y M!J8S09HQXG,< T9RF&YFWP])FK!A1Z(@ 9(YHM>ISHDA-_=C])KR,QX@:/.A M#PBB:6[!(VFK2<,"K,)*9*JS1IJ(FL9XQENSXL-G[ O,&L >/0Z4@-<U*+-4_L:4#[)R0<.;T^/+V7=R@V) M]& P_TI.TBG@AETFO[;;^]T#4Z(1HFKN*LYWHI%M*UO^OKC^\+L*^]&ZO?O' MQA=!U<&ONU!?4$L#!!0 ( #>$"U697)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,$% @ M-X0+58_'+1?Z!0 \!\ !@ !X;"]W;W)KBC>*= M)G#_>*=^EYG79J8T84,1_1D&:G'5Z#90P&8TC=236']@6T,71L\749+]HG7^ M;*O50'Z:*!%O@W4)XI#G__1U6Q'[ :0B@&P#R#I_HWP4]TJ"E$>H%NN0K5!(YYW M#U/-390LJ&1)SU'Z;2;&\;?*U[DRJ5!NHT^"JT6B50,6O(UW="F+HI)=4:\) M*/@QY>?(<\\0<0FQE&<(AP_2^3ERN[;P-\7QBIKS,CVO9LW]/9@F2NIN^H^M M[G+MEEW;C-UWR9+Z[*JA!V?"Y(HU^C_]@-ONKS;CWTGL336TBFIH0>IE-3QO MELSF% [';O.SS1(85=/216'IXCA+GU,J%9/1!CVQI9#*9@^64C*U5.ZR-!RL5([)R2(+Q-7UV"I^=(WNFI'K9R09E=3O" M6C,:)=:&!,-J&NP6!KM@H;:3SET8,?20QE,F;<9@#=?%S9;;ONS:S(&A-G*V.T#W^CGTR.WM"DMBS^NV=:?1"Q7/JHY&:/RRWEC=@U)UW9?$A$$2^8_[ MH3G3/?M9K+G5.2SWD?HOB>"K,(K8F=7N*< (EV2$8;9Y:W<[D!\E&DNQ"KEO M;VQ8\N[>ZO,4M(1+7,(PY'S;K&.1*-T)_PJ7U7,5K.@1@JTK$AQ7UVE)3A@& MGJS##O3G^&;26,A. 02!T0Z+=R\:+FNU=\I M, F7G(1AR'D.E48D,4.8_#S]!4V8GTK=DE:3L-)0Q+'@>=$F2O@O9VA))5K1 M*&7H1_?L$AH,X:BZ/DM (D8K/?)O2G7&K3UBQRN@H5(R4+D*!::Q#2* MT'6:Z-N)O=?".E4)%3BLKKT2@"X MNO9*'")'Y8URED%;C)ED:7[TF"H-[]PP@M7Q=Z*7;3WD:A>9FMEP6O6]CJ?A MOX-[SLKFL>0<MFPRG ""O!" /QI4BF[OO]$Y?M*XB M!\2JTM5P6%V/)?QX,*I\ZW&;H*]V"[MF,+ ,M,$@-QE1ZQQS M0*!R5H7C_J\Q9V]/U:SJV59S@GR3A,VW5XNKQ7;V(-O$=?OVM[! GEJS E \MMK.[?E9:[?-(/KX7Y8]JP;E$#WE65">CA93+#Y-) M%2]XSJHCL>0%_#(79BUIF M:<&O2U35><[*QX\\$_;=RK'[>OGZ'\UR4,R,U;Q,Y']ER9R<3(*1RCAO-]^N M+L]/;R_.TT-.D3_W)RC=P?OT0%*"W2[$'7%BJ0ZGDAX ML_*?Q.NW?&S?0@;>\KDNCA!UQH@XA!C2[29ILDB9- M/#J4=%V6O)"(5167QG1:?]?LKY;6AVK)8GXR@K53\7+%1]/??\.^\Z%LI>+ZG2FLG4=W*#:GK MFA/U-HEZUD0OBQ4,ORA3;IP"3WMGX/O4Z2'3K7P:!:$9F;]!YEN179=\R=($ M\0?@B,H,S]=?'-%^@>A&V*$>-:,+-N@"*[IOP&9K=: ,OLL*[%9)E+QB_ M2)^\P,->?XX-9EX4A0-CB)V.CIP]10@*I92/S6)6[6H)FD%VK2".Z[S.F.0) MD#7TRSAEK1P C*.CE;S"C MU!DJ!XT0#0CD*QE;:@ MCTE6W*70I_?")/J2]'"@C:ANYA(7>P- .P+$=@;\6XCD/LTR(S2JCTWH$ V: M;N;[9(L8=Z%UG(?MI-?VM.&UB T\%45],C!848?X ^ ZGL)VHFH;A@6<3D+4 MC]R@WVM-=A@'T1# CJZP_R(5EZ5LEF:I'&!4;&6]UVJYMXJVFW-'@MC.@AN9 MM&2/2B,9$];9C438]?KSHIMAX/(!FL$=#>(]/!C'90T-;-^TZ!Q'O3#2JD712QRWG19VU#J-!?AL _1P(7$&^A;I&-"8F?"JV[\]HL* MHM,1=OIC:3(:FF_2,1:Q,];S,EPJ\FV)-Q/%W:'D90XDW2<1NR!M"P42,#@H!TE$;L6["V+O?AT_=7A,"JZ/>E 3MO:+H[$B)V$CH3 M>9Y*IE\^KNY(B_H'>'3A'CN-@ MX,T2K5A6\S'"SA@>J7^H6C! @5@M%Z),GW@"^P+Q_#2M*B4-5-&(6E:P@TB@ M<$!D*M;X7,.@/A\2-C;G/.;Y#%;L\]F?N:BL^%]35+\>:/>,KN-ZZEB+ZD8- MST)D"2^K/RR%1:V2X;6%]5;1=I/NA /=(QR@C8!>L%159"TKV- !B3H-WA M4W=,0SJFGO-6U;9[6&"L/:H+E#[K&DP&3@EHIU^H7;^<)DFJQ!:0A3JR.TP+ M%+-E"N1A!*DK$PP;-4=#:K C@>\,$ ;=.H.V2YC3K5,;T9[CB1QJ:J$^!ZTX MZ,7*?!ZM"Y9#[/0W,D:K" ^(!=JI&KKW2'KKK&F>QJE1?5%=JARZ(=5A&NQH MX'@#HH%VHH:^9*->O;2%Z,(%1"")^NK!8!>&ONL,H.TD#GVEQ!FCO$>IS6I\ M<3Z^_CG"= QALC,=0TRVOJ6I#YE?6'F7%A7*^!PFA]H[[8;;[03O\'4$L#!!0 ( #>$"U7MJEA% M80, 'D+ 8 >&PO=V]R:W-H965T&ULK99M;]HZ%,>_ MBI4[76U2USP!@5Z(1*'3=K6U:'2[KTUR(%:=.+,=V/;I[W&29H2F0*?Q NSD MG+]_?W/\,-X)^: 2 $V^ISQ3$RO1.K^R;14ED%)U*7+(\,U:R)1J[,J-K7() M-"Z34FY[CC.P4\HR*QR7SQ8R'(M"@O^4)BSVY48I9"IIC(B(3UQ)JZ5S/7,PEEQ%<&.[77)L;*2H@' MT_D03RS'$ &'2!L)BC];F 'G1@DYOM6B5C.F2=QO/ZJ_*\VCF155,!/\/Q;K M9&(-+1+#FA9DB48UTRCGILQ&-RPS?^-22WS+ M,$^'L[O;Y=W'#_/I_+ZB$3">@643Y&_*6?%G. MR>M7;\@KPC)RGXA"T2Q68ULCB=&SHWK4ZVI4[YE1_RVR2^([%\1S/*\C?78\ M?0X1IKMENMM.M]%_,PE>,PE>J>>_?!*ZO%5BO6XQL^ZN5$XCF%BXL!3(+5CA MWW^Y ^>?+J=_2*SEVV]\^\?4PVD4B2+3"M=C!&Q+5QPN".6XM&D6 <%-@L2B M6.EUP7&]5;%=$U*-,BA',?O&-ARZP=C>[OM\&C/H]9N8%GZOP>\=Q5](W,VD M_D&P" E\*UB.^XN^,*A%6G"J(<85C?,6,5KM&1A'4R$U^UD^Z/+2>\+9D M)\-:J(,&=? R5)7@7J$(+70B)/L)<1=RI=G?8W&=ZG, ?49@"SMHL(/?PF9* M%=W(P1.20]9C$2W(80,Y_"U(/(25QA)FV::+='B2]%A$BW34D(Z.DLY$FN*R M.J=:1^=5Z\FP%J?K_#KEG!>0GE6LM6*K"$?=Y7I6:)M\[WQV7T[^?+W6:OW6 MSN3XGA<<3G579,\?^G[_.>9?QZE[]-3J9CY1OK7D.> =D=W@]MZ]R%Q*/U&Y M89DB'-:8ZEP&J"&K>U[5T2(OKTHKH?'B5383O!N#- 'X?BV$?NR8VU=SVP[_ M!U!+ P04 " WA M5SKZ$%<0' !;* & 'AL+W=O7V M8C02\S7;).(=W[)<_6?)BTTBU6.Q&HEMP9)%U6B3C8CC^*--DN:#R67UVT,Q MN>0[F:4Y>RB0V&TV2?'UAF7\Y6J !Z\_/*:KM2Q_&$TNM\F*S9C\M'THU-/H M8&61;E@N4IZC@BVO!M?X(J:T;% A?DO9BSCZCDHJGSG_LWRX75P-G')$+&-S M69I(U,T)>:6_.,U']12][K#- \YV0?+-OK$:P2?/Z,_FR=\11 V4' M;D#V#8C>P.UH0/<-Z+D]N/L&[KD]>/L&%?51S;UR7)3(9')9\!=4E&AEK?Q2 M>;]JK?R5YF6BS&2A_INJ=G(RO;^;W?]Z&UT_Q1&:/:F/C_'=TPS=OT?W#_'C M]=.M J#KNPA-[S\^/,8?XKO9[6\QNKU3SS%Z\^O];/8C&J)/LPB]^?Y']#U* M<_2TYCN1Y MQ.9)JC&5/H_E^/#?U>$C'>"CZR'.Y%BC.%VP!M(_L[7U+^Y'R MS<%!Y-5!-\1J\)==_@Y1YRTB#B' >*;G-\<0G?_6>_RO>V\Y@QZRA5;VZ/^9 M+5!2U-VZ<+?E8GDAMLF<70W4:BA8\S+6BIU[ MB)UKLSZY4U5')!D#)V7=U*^:EK7E>8)Q0*A*N>=CST(PU_-Q&Q:9,$*(3X,V M+(9@GA..#[ 63^_ T[/RG'(A$5^B%><+@03/H%7DIK;A'?4]]ARL$9F:*-^G ME&IT312F(2$Z70A&0NS =/T#7=]*]^>""X&V!5^F$B+J&[VZE!"=*( *# :1 MB0JH>T2@YFFB0H*#CJB.#S3'UI7G?LN*1*;Y"K$O2B0).(W'?2XC?1J+^C06 M]V2L%8C@$(C FF\SI>E4&-ZB%P?F2*YF\M=4:9B25UQSD52 MJ]ZY6GK O S-J4\<;1F90B"LL8H 4.!HRW0,@#RW8YW!3J,4G1/>8_6.LUQ((Y6J@" (1JB5$#*!(5Z3QD3+&5KY/7*KTYFSMJ$!>&8>CIM$^9C2KL"31KBQ$J\66O3?,XW#+W)5(T! M==O>4FNDV!OKM$V42DBBUU$ -O0I,6B;,.H$7D>!P8VVQ79Q>R_7K+#F=:\J MM5=K4:_6XKZLM2/1*%5LEZJWN63*KK0&PS63!;M4KR@0S/-U_1-!,!(2O:: MG3J^W[76-)H5VT5K*_?>HIR!6@Z;$G(X]GR=,H!R V.- 5"AKN1C".4=N:5- MM]&LV"Y:]TOK>:1-/3E4=='360,P7\5&IPW :!#J&A:"J1H6NAW,&QF+K>), MI?;1BHH^LR4O6*G>G]/JZ$T]OBZZ,OG246O&@++QC?)JHD**Q[H[3)1*:(*- M-=?$X5#MA3K3;QY>J9?.R)G:Q)SG U/=#;>YM",+7%-%2&"7-= M/<-BR)@7!ETIT4A*;->4Y<;\=*$-C8A>\ M-XE(YV $ZG;!428X[["^?P%1NGJ+ -10&=/6Z1@TUE%F2:-LB5W91FFVD^"Q M\LV^I<917U5!E,G11($<(6-='!L92^PR]O?JW8C:IR7/2L:O6#VS!.([*:3: ML2I=#T^S7M5MK]:B7JW%?5EK!ZA1M\2N;KNGF:DNJ4>)0[&^CP209.P&5.TY M]50$;+I!$(SUXX?X')MMQHVZ)79U:YMVIL"DGA\$OEZ.I@"RBS-@LX/S&3;; MG!N)2^P2]ZRJOK=QHJH#**"J RBHJ@,P6U5OA"TY<4!;B7G%5\V9=?DB^?E0 MWFLWP(M.KR>VO5J+>K46]V6M'9Y&:!.[T/Z4%RS)TK]575CSK"P":)6DN:BV M7>7K$B6UP0"9HC<,=)EM[_N;_0ZH<>,H+>ZKS[8_&]%.3AT$S[-$B'29SI/Z MQL/BCYV0&Y9+4>U@*N^6J9_M%LKI:5XYNIP0)UT.'=_J'K>.[IL]#O3H&FJE MIR[;+YZ;70.UGS[71P:[)HUK!RO/IZ^G144BE=IY2;8G74R!8V5'WQ9.[2/Z MYA?)9I\N,5Z>]=5GV\O-%H#:MP#O>:'D8X[FNZ)@^?QK_7HC,U+\I(/-H^FA M$C*![F$31CS]=0]HBX;ZZU4 YAUUV'9(LV.@)\["3Y4UD#UPD(T=JA_4 3" M/7!V'NC[DAA =9,_NNUA5<*3:8MV2\V<3 !JR SJ.OKI+( :.[[^S@M #6GH M& E@PK":8?I[@='19:D-*U;5+36A0KS+97T3YO#KX2;<=77_2_O]!E],,?![ MA"_B^IY;8[Z^=OK*>3=6\2KJFVSU@^3;ZJK69RXEWU1?URQ9 ML*($J/\O.9>O#V4'A_N$DW\ 4$L#!!0 ( #>$"U6I*XN"1@, $+ 8 M >&PO=V]R:W-H965T&ULM59=0J3N-[3%.^ZR ;&B%Y$IRG/;7=P6$ZP_JF]ZZ+X#$GK.[1YK=[6V$ M_*I22C4\YHRKOI5JO;JR;16G-"?J0JPHQS\+(7.B<2F7MEI)2I("E#/;:;4\ M.R<9M_Q>L3>5?D^L-9X"#IHF\-VE>A9^P+@T\9W:BM;S"9W OQU2Q&2=]JF8 H MH[$V# 1?#W1(&3-$&,:WBM.J71K@]O<3^TV1.^9R3Q0="O8Y2W3:M]Y8D- % M63,]$YOWM,JG:_ABP53QA$UEV[(@7BLM\@J,$>09+]_DL=)A"X \S0"G CC[ M@,XO &X%<)_KH5,!.L_UT*T 1>IVF7LA7$ T\7M2;$ ::V0S'X7Z!1KURKBY M)Y&6^#=#G/:'DW$T^3@*!O,P@&B.K]MP/(]@<@.3:3@;S$=H (-Q ,/)[706 MO@_'T>A3"*,QKD,X^SB)HG,XFQ))N4ZISF+"SN$?N(L".'MY#B\AXS!/Q5H1 MGJB>K3%FX]F.J_BNR_B<7\3GPJU 8@4A3VC2@ ^.X[TC>!NUJ@5SG@2[=HX2 M?ECS"W!;K\%I.4Y#/,/GP]M-Z?R9]_!_>]\1PZUOCUOPN7_S]C1=BM)MI]FM MJ9U7:D5BVK>P."HJ'ZCEOWK1]EKOFD[DE&3!*5/W38=KO=78_AB3SN*-JM%>T>571&8T:4RA98!,LNF'S!"HY=52O MEE[JBP4Q9FLL1J8R5E+CELCI?RE>>N]N";"7_?!H?+^K]Z&[SM[YAB?RMZ.V M5ZOM'54;YP2< C@V28F])_X.6A*NV('RS[W/WN%]OO3V]#VT>=O9-0D::/9M MPD.;]IO+VJ94P][JZ3F5RV*84A"+-==E@:YWZWEM4(PI>_O7[:MANV$_P/FN M',?^I2^'PULBE^:B,KI 5ZV+2SQF60Y*,2J4QP/\+ M(?33PCBHIU[_)U!+ P04 " WA M5M(9W@"T( !T) & 'AL+W=O MZ <1*PIG+Q;(1'SP]^YP];;1Y,EJ=%_,!6 M3/]1W$JXFS2SK'G&M)1LZ89N'_]//N5-1Z,N8\5NQ#IGWRM MMV>C^0BMV28N4_V[>/R5U09%9KY$I,K^18^U;#!"2:FTR.K!H$'&\^I__+/> MB+T!,(][ *D'D.Z <& K0=0:VBEF37K,M;Q\E2*1R2--,QF+NS>V-%@#<^- M&U=:PJ\H._GW_>GVW0C=7Z.)\]2NZ^NWFSQ4: MHS]6E^C#+Q_1+XCGZ&XK2A7G:W4ZT:"#F6F2U.M]J=8C ^M-T7>1ZZU"7_,U M6Q^.GX#NC0'DV8 OQ#OAO\O\,Z+!)T0"0ASZ7+Q^./:H0YO]I'8^.K2?L=JB M*S@<"EU)D:&;@LE8\_P!G9N Y9HS=>+:MFK:T#VM.;UXRF#3A<95S M\S6*,R$U_Y]]X+*\FB[:\]F,SKN.=0@%>]X_T'36:#KS:GJ^IQ@2&R0D?^!Y MG"*N5,G0FJM$E+FV1JS9O:Z?)T)I9QZ;]72$V.O8T9>!-#(0G_/&COF;[.#Y M#F)5R">D-"O&9>%2=MY3!-,P[&CK7?>=<;1HK%J\$$<;)B6^A._9:=&N2EZ5

/R.1IN+%\RAX/91(B MX[OX/G4F[GJ] [/#[O%V"(UI,!]P#VF-(5YC@+V=2I+^ M<U(>W_/40LM50!^[G"^2N#+G3$$PEIUZ$.,1(.Y6/< M$@;L1=CEMSH#YJYQ";81(.:-<"-/8C]*UD1SC$L-1,'6[CK003OP0_J54\$2I VAHD,,&I/U%=LOI6GL'%D=1 M0!==];U:O-<;"( \6C681)USZ'G,<]+=R3MQ7\ M5U!S0#WY\LDB1P7R8\UVN LMD!,_D //3!A;5[02T'PGTIW9@P2BDFNTB1-/ M5B=]W [G0=!EE0XQ/)M&X4!B)RV^$S^^WTHH2G@!I2( 4M48L#W*MQGA@'>G M%2ZVX#.C)0+D)2+@,D,SF0%1CG.WUGV$'T=!T$L.#C%,I_,!7"(M%2!^*N#6 MF>>JE'"*&&1IEO$R0YOG4^4TPL$*R#SJ)6B'&"8D&K"AY07$SPMN*\VK;%QP M#<:D#%#&O>%]@!^37JYR">$!/5L.0/PE^)TIN9'EBI!?$Y'G=2O]D>LM8EF1 MBB?&D#)%,-*P_RJVO[OM<-3I4])CD'Z5WIF6: OX] 7 /TA+RK3ZUK$$UK;9 M0!6+6="--;]>[[6[Y0S4SQF:;LNSH<-M M+NK@!V2&NYS:O^![#6KI ?73@TMN&'<.G@3O:,GO2^VF.]1%!R+:\X]WN?>: ML_>2P O'[E+B0TU]/K;9[@7N4Z]R4"W,:-3S75\,"M3%WJ8( MKJIML>FV9J HJOI*%4$%CFTO#-'>Q2D;.ET.B.^U,1U"X4!-2EL.0/TG< MR_M795&DS _X/TE0$8J@+38TG*O)/B65V_: 4;=;_V.U).O;?T[.ORT)1C4 M3S"LW99?F&;S?J/?XJS3_CZ-(&&W<^80"H=B+VRY0>CG!EUM ?JAX'2^K'2T M^BGMO:P,>F\KY]%0>R]LH3S$[XVS:Y&/K15M-\>$"U5%&3'CK@H /Q< 8 >&PO=V]R:W-H965T&ULO5QM/A!Y)G//HB/.'O/A:KCFOT)^;-"LO9NNJ MVKZ9[OJC3)^,<"E;O-)BZ^O>9I_G QLV??O_B4W*VK^HOYY?DVON/7O/J\ M_5B(3_,CRBK9\*Q,\@P5_/9B]LI^R1RG+M!8_"OA#^7)-:IOY4N>?ZT_7*TN M9E;=(I[R955#Q.+//5_P-*V11#O^.(#.CG76!4^OOZ.SYN;%S7R)2[[(TW\G MJVI],?-G:,5OXUU:?%_D#*FIK@59?-'0UI44')UD]LJZK0OR:B'+5Y>+#^^L/ M;Z_"5S=1B*YOQ)]WT?N;:_2!H>LWKSY%;SZ\#:-/URCZ_?/5S7_0LS!B5XNK MF^?H#'V^#M&S7YZC7U"2H9MUOBOC;%6>SRO1K!I\OCPTX?6^";BO"?EF(\;8 M=94OOVI*+\RE7ZU623U&XQ1]C)/5V56&%O$VJ>)4@Q4.8"V7N\TNC2N^0A^J M-2^0:)N8L.MZ)MUS=)4M\PU';_-2=YO1>/"0WR;+I-* ,#/(3:[S9*M0M3K#OMNQBC16Q U<+)LQU5PO/1,COES'!2^?C^JQ?37.2>.P1WU"G,[-+HSMJ9\R+\MMO.07,S$J2U[< M\]GEW_]FN]8_=8,=$BR"!&- 8!*I]$@J;=!)#ZEB$HM'<,G%6L;W5\_K!:Q9 M?M9YNN)%^0\4_;%+JF_HOY_R-$7B$?80%ZO_Z9BE@-VR@ 0+(<$B2# &!":Q M[QS9=XQ3^KUPUI+],OXL%>OX > M27"-)(@))3R^3/@W1<&SY3=4%7%6BD=CXVNN_B_<'N&\5EI?PH@\E1M(L-!5 M%WF_TYL19(7,7*'$C'=DQIORQ./9JKY\%Q?'YYNM(\4;] @\I:TZCT"U.L.. MYW8Z46-%+"OP.R-7-;.=( CT'>0?.\B?VD$=9V"PL_RQSH"Q)5-')R18! G& M@, D.H,CG<'/\X.#P5$?C!KUJI7.#]98Z?Q@U:S?#[:M-DJTGL83/M0S8O2; M6S1U^(.B1:!H# I-YO9$ ;"?T"$^5 ;T@ 9%"T'1(E T!H4F#X)6#[#-@L H MO]B,,9E;2+00%"T"16,'-,D5(:[7XXK8K3QAF_6)'_&CS="3N005+D#1(E T M9JM:CD/\'B9;3<(V!KT]?O=ONTP\3:U^5_* :G)!#B9#/HC&[ P3W/$NHAXS MOU,KT]AA8KE]_=1&[[8Y?!]VOX?[3(UH^SP0T- =%"T"16-0:#*KK1Q@F_4 MDQ<^&$X=L(US0(V4M7- -=.%GSHS7?RIL3,$H'8;HMN38O1>7WRXY]0(N6\F M&%LT>29 HD6@: P*3>:V51=L_RE]<<@X?0&*%H*B1:!H# I-'@2M)F&;18EQ MOK@18S*WD&@A*%IDJY*&Z]M.=[4=L)*W25OA YN%CQ]QL\P'5N(EMC_(:-&8ZS[G'3/&<-78&SQF?;/A/ MVO%_C.>,U3"VQU\PMV7R6 4-[4'1&!2:S&JK .!'9BATM%@]GV1X#JC1KHT] MUW*[DT"U.[,#V^M. HT9\2Q'2>906^;[+K5Z)D$;9N-)8?8H&5O?=6I\2RC1 M3@7037U0M @4C8WI$YFW-NS'SA.ZQ1AT?Q\4+01%BT#1&!2:/ A:E0";58)1 M;K$98S*WH D"H&@1UL@0MF6[7<<8J_I(QT[FH]4AL%F'")/[9"7\B!*M^#(5 M:^=*2PAD>+X 10M!T2*LRU[PN@\$-F@FT]%*!]B*;;9I_XUSB"FV%?Z*/)4'#?:P&R[;=]<)"T#HC4#0V= =ROF\;[A-SN/\H MODZ]1VWVKQKX.KX5!$KR+VB$#XH6@:(Q*#29Y58S(&;-0&+Y(:G6:YZN4,'W MR?E5CC+A:C2$HI)753T+Q;$WN MX_IXH?BMK(I=/U&0:L4"%"TD&NT#6WZ7*%"]9:A.F:A6:R&34RPZF\E8RXXS M*"82-?/"IC3P_.Y#3+4+B-WM2]7HC :!VY$61NQ1A1F P?@R":0PDZ/5UC MI]/3=68Z/5W3,H.>3EK-@4PZ#?%X/9VH\7>/GFYNT>2I *I)@**Q,7TB\];* M$B1X0CV=@&H3H&@A*%H$BL:@T.1CL*W60-W^ZI?U%V/ MU5B?NH'O=1]GH'(%*!KKN84^YZ_5*J@YA>(G$S:TV4?51 .,'4O\ZU((JEN MHD6@: P*37Z!4ZM;.&;=8ES>F1ED\DN<0(4+4+3(4=-+SK"G'"P8-)/I:!4) MQZQ(3,D[,T--)D5S5,(CG4WX$+3."!2-#=V!3$DK+#AF8>%'1"(S]&2*0#,@ M'(T0@2W2W68%K90-5BJ3U(H:CEG4^/$-<7,%DZD"U3TB@*MDPW5 M*1/5:AG.)"UCK$SGJ&I!5Z;3F&AE.HV=1J;36>ED.EVM!IG..7FU(N3+&?2= MIE$P]#*=N2V3AROLBQ5!%8PQ?;)G;'[R'NCZO>#OXN).K"$HY;>BJ/7"$QC% M_E7;^P]5OFU>#?TEKZI\TURN>2Q6H-I _'Z;Y]7W#_7;IH\O/+_\"U!+ P04 M " WA M5_PG<]YH6 !T10 & 'AL+W=O3NH\0"4GH4 0;("UK MOOZ>!0!!6;+=Z9ZI._[6W:)KZ^<&!RQ=J M*=W U*J")S-CE[*!2SL_<+55LJ!%R_)@/!P>'RREKO9>OZ1[G^WKEZ9M2EVI MSU:X=KF4=GVN2K-ZM3?:"S=^U?-%@S<.7K^LY5Q=J^9K_=G"U4'V>CY^2&^3R_\4ZN52_X6B,G4F.]X<5F\VALB0*I4>8,[2/CO1EVH MLL2- (S?_9Y[\4A;TM&_8L7O3L9[(F]=8Y9^,4"PU!7_+V\]'9(%I\,="\9^P9C@YH,( MRC>RD:]?6K,2%M^&W? /0I56 W"Z0J9<-Q:>:EC7O+Z^?/_I\MWEQ=FG+^+L MXN+JZZB\]7'R\O+M]>OSQHX!!\]2#W&Y[SAN,=&QZ+7TS5+)QX6Q6J MZ*\_ . BA., X?GXW@T_M-5 3(:9& _'XWOVFT2,)[3?Y*_#F#<\W+XAJLUS M5\MV[>7-VYT[IX![?W=TUK_>VG<%^\ M4:5<20 Q-[8V#'4FIFHN*V$Z-, 2G-4 IQB-4:1&XP%![P',Q (LV^^MM(VR MJA"Z$A]D_MV9ZD:7I*5L (3X""RP M0)("FD)5<)4KL(Y-)F;:N@;>=[6I$ [<8XG[@I4%B.QW!7:;L)RV#J3!.4\0 MY6!#X-5\(4;'&[#7P$DX=*6;!>"%YWX=7 /#?U&W.C<9B$,ED0[TI-((Z3]@ M76&6(!J-+(&4[ZRLF %L*-.+S 2E;[.,K:R0< M0 -O#L1G0#W7-9X%PG\!\F)*X#;[#UAV+IVF1Y]Q4=7P$Z2LS'.6(*1='A<" M56:Z C)H$!,'[Q/+:(NFDSJQD#? '*4 :JL *I8\W-,62$-B UVW%0E2W0$Z M5X"E+,LU/E=UPVL3MEPWQ.DG>^_/SC[O/25$9%V7.I?34@G;XBYXTZIY6P8U M80"O50[BT&C_QMM;)/>< %]J1Y[YB5?'Z[<701UQ)VG13@ HH$AZF5 !$#06 MD6!. !YE2TQ7 <%-\F0D":N%023-JE*H/5.G"PT&)W"4E0:(R]#V6" =G/I[ MJY&NT[5 .@S$&5$7X$!1A<5K41A1F29"!#0-@.B*PY\@!S-C&GA5W=V7M!0D ML@5,95OH71+ ^MA6X9U IX=%9XNL(%08FVC&&[0 WF29(;+Z,Q[>.V4(HB^+ MWR $H6<9,$#G((1@82LD1NEE!@3$,J=%17XC$Y7*P-4:XA6E+X 3(-!AD! AV^:VM./Z+Y$A\T>CDA1-+0]8S MAUU!OE"-2T52PUQ\$!(0I3ZIF D%.9 ^*203(T4\X:>G?,$;$B6\41$-F%(G M<];-;H4J-<2$TNM\GMHK\/*-R;^+:U#T!IRU^- "=A!#C;*>Z5&S&1A81%<< M#?UAKPEH C64G70/6HR4B M@S)#3"'&V?AHF V'0V CR!C9 -AW"11RA(AL8'>P>SD%)C^-)X.CH0 WQN_W MO'AD;:50RDRN5 '>PYHE@8#.!/?P!ZV 4>*GP^/LV>FID#.@.N@E<&\%A@_^ M!J?BK1+"FD?#!QHQ4]XNJEM(DAP#_=,X.QD=B0S_9K3A#N*U C-42PW.QXA_ M2#S!B9_ELG[1V3F.J:3((V&KQH+98_OR35H+3/=KX8#6BHN%5C.PRZ"&F-X@ MPX!"EOD%#!\=I@Q+\'( -,B7=L0U,LE :K9W(*+F1ME], &&1!KBA6C[ZM:" M$Z!E<*, TP)/0"$FPS_!O@R],"12P9"D? -RI8*#JX^SX_')7\&KP_%$#,3; MI;)S/!H"UQ58B7#4-T7F#O#T/DZ%%^?\HN=3YAT?.AK("'75^> /[;(&4V$; M<07<.@_QUS7>:FL'7JA!0# 0[07,'Z[.K_%A<*E@$QQXO7P!=IBA MV?:W3@ M:%B E\N:K0.)^0UX1M.ZSMD&1^5M9^?^@;KL.NMV"O<\2IK,*O*,S'TCMF-. MWI?-%CET"+WH;31+: X:"!2]L<.U$(B!*5L9L5;2$@/NMG#.M2\"' X/8V@C[50",_:O;DMP_I$1PS$*(\2DB@+* MO#2.DB&@SMP'1UUXHZ+B(50@5S[MH!BKZMC2&9\>9$C\:2,QU@-DJ_VIKFA; M6=QH9\"&WH"#0_>^_1P!6,_!>"J*=F6^:!N4#8LAFG=-EYV.9@31=@D6.3QK MY'>%1T/@+^>DIH0"!!,%4AY=D.;0&NRZ*4CPF!FX(?&C4BL$RJH;-BQ=Q J< M0;=04.2C*>Z'=\BH@)59N?N S(5D VMF=V%-T9H891EZFTY1^"-$I88IY*[ M*XH12.17 ".I IT MND&1*^3[ 'J/_E:JB&Q\,D;"9N"Y86O MH,"DN-*;-U+>)2#"DHUA[&^8WL#&CZ 3 M%^(K'_S6 5$HU\%8@*-CF;@UIQZ!G]=/1+22K$:(W1)U0\4#2+\A@@E&E\E- M\'DM1[N+*"YC1@/O*^^92LV)?\BK4CLS(Z\/-,&3=ZWA4Q"-(&\[8^1=X 3 M5-6JOD\L./GOUA!O2-TQ8VI:2N!0E#'*14TJ-(9YT;ZYA$J#P(K]IX_P.01X3'+D.#*&>+X$XNF9#DZ#4KBX4XNA5/.(M.0= M!NS_E"5 _(N2R"(^*0DWP1"R"<.=YZWFE!U0/>OD^SHJ\84!DH'S;=+D^>RZ M2YZ_F!J$'B0[VWDX\NQ-E!GPE!^!J*48/1=74RQ DD[JJFX;+YJ@XVC#,.&D M/ 6(\GMKN+P$(1D7ER!E 6!SS.Q8[.!>*G7@ 8I0F2 UC+4E/G[\'-P-G%CYDH5'[2N:ZYBD:J MTE)^2Z0@)[^5R%,*K0U+_Q1TJ5]\0/>#$&W/=SIQUI5K;)NDHZX)12.B!YH9 MZ2":C#47S( U89NQ[=2=7<@\1X/:,.C)XEJN>27G&KS8+=D^GT5%,X-Z?$-Z M7+0J&"&J\((> 3O< JS>/LEF%8OOC'8 B2G%IH9L-)WIC94C[YT< VFAE9"H MK;T:H6_>X4R6;%D*]"K)#E14ZLH[5%YZ'EWN_]?_J<@1NDWQ[AL0I>44Y&4R MHB>C.^LN@@2'&XGI_B/OL +$RV ?^]?CC>O)CRX[(XGX\UR]Q%H5VBIL*@BW MDK5X\@E3E^.G\9V?Q'%V.ADFUV2VQB_^T!NC['AX\J?>^&___V.GNO_]ZO@X MP;G+Y!^[,SE]]B>>4ZK$U<+*<#H\4S8-[3==N6I6&(N6J&V]V-KI6['D-CDG MUWVS@Q8:K4:VOC35G!T&NM%>>2+Q0QR3=E8]P\R*FHC]Y5B;5%7H M>8)_BO5P+J15Z(HQCYV51C:QL1,YARF:J6#%0+PWIECIDML#5^1E@](Q5&R?FZ3+=+?"D+10"2Y4U@(ZR<@CXL-:FX7B(K""X ^+?A% 6MM:6 MPGDNXV-4"/>7D.E"K@(Y'F.G9P+3$>9=KFW>+C%HY%"UP"A=^=B4P5CBD ?F MOGP UNI35"!3PEC-!=?-'80$&,:5L]NKO#'L4R#YP$*-0A8Q=2,U^LAD$$Y+ M;.Q2^(W-6@,"R$WOV'*@:HFG%H2DBEB@&^Q8$_JE_JXH(H;H'#-YPJ\O)B33 M20;85KR^Q-HE+<2.W$;4-A#7&!'%P&4;J%@]" VFI \RU0..WD0R,H'Z,(<]-_90MUS/ MQXU2BT0&D;I&#*=?3?5_H P6UQAM580F),/OK1O@76*6'Z'?3#G.L;IV@4-IT"GJT;MP%PDHJ2P$RQT9@4.'T"1,Y&8F.XT]5P M#\N=:#"Q?96FM3U#.Q#GD(LQ)&S+0A='8%+"7 -*N^Y=3=M9T_D1*R84 <748-$&O<'!?H>+-M _.KK6K\R M@^)D2$=^2^XIU+]@DR4.3*WO-B;KQ=I1'28,Q_09&46@VPS,/+.I@K@D1_YK MYZ=W\#;-$7)%!HP!&T,O!BAOSL_DV!LJTH 03157M M."U',YE8A0VKLZ-$T M#C?S<"6=3CK;F=\D(D$B8L/"43%NNHZQ4XR'& @LVC ,79F. ?>5Q)V[)]ZO M.XB@\AW4+EP+)D2GDS-)=$&KNG$L$$>WT'6-PFNQ"P$\]$XV!9 Z7WD8/Z!F M!1++=R 4UR)JEKJPA,=UV%45JE;<^O$J@O#$.9C 5O"P1'F$BMR0J=)9#-X9 M6^]).2$':-& \WZ6&>CQX.) ;33;;!*_=-*@+W84'SH.#P-$-.:2-)P2J2;9 M"\BZ4,^E(BS:&\ 6Q(L&+ )!C*6>./.'I73=B0?%/N3.LU!"RT(=WN2::L*T M ^/:AQWKP@[-51?W!A1\50\C$Q_GTD08%D]\E0JB=U-S:7BK!";=ED[ZL(%. M39H^(.B$6KHI>;2UYG( MP%D#Y@3#'K.2MO!"SD,DGH8L@C$8V$KX@7C#U31L'%&UD/(N76&F5C5!YKQ# MH,XE!Q69C]UJ<*J49;#3C.T=:L(X;M!&N.0N T0NGZ:.N*T56A<@0T1TY@'7 MX'9)$"HB"WZ@?]_7!T>(8.TW9I]\6,J8S,?#K&D&_5K IV!D,C^P%<=*4Q:X M'Z%_1C*?0,FQ0KMLN; )'K;)%_MM[8?3=/02V#[NC041[5B73,JTQ-H-Q+?@ M9T)=M>?J"6=F&\]:[?(7/K'#0!BCJHP&4T+[-G0=,'.P*J$A!6#>.K=5I^B[ MO1*9Z'MPIAVG"L,HR+YOJ/TR$&>C_8@X#/[5I&+[,[W;8 \'0IWE_JHIDI>HO7>"R;N(&*1$!(('&>6_.1G MSPJB*H"1!E;@_$7(\[!OD#+ 4 T9V:+R&&AXA[C+63V7S#$N AJP* MQZ <^> $W$!<+*2=!RI@T!%FR$&Q"W(+-,2$/L(W-3N66=7UUOP %3,_M(#[ ML&S?/K:!-[>["VV0Z]USS_UIYV0"WX]FU58M\..>FYA*/$&%>$IC%R&@\T,) MCK(3-EPTZ+D->AX'"P$?^5\9)1 #@!AV^E&.)"XFMLJ(YZPM9]X3^U1TB;,B M35?V"_=I\SO1*H=IR?Q9'/Q38&3-FF;17'^6AV:ZF $D6,&S^C&;$*R0:(4P MF:U*6D*0-%O%'N>!16#^91/:M+PNBV,2S@>_/D*8IMU M6L.Z.RD5N%C:)+884NU(PLB*Y\K8FK6_C-&FR+$@V6J5OM M/R1"-X)#;>!7W()SL=0Y<,2.U@29L>'O^SGW)BYLKJD1G!R*Y8;P,4!=RCQ, MXOE4.&7B;IOP;V+5MO8G%66!O*&HDX1 6P )O5R/,)OJD VFN&UK^OH]>\A, M94E^G[Z_^S_0COFR@"2]]P%>UUD([USO[#V$-Z@'05W.[J]S-==516:V3\1U MT-1>"VX\F?2N1X?#_O.CX_YS>/_"!W4^5/+./@+5M6:>G!X]32Y.DHO1X>@I MZG02S.7];=DKA@6CXZ/X=]+\&1^==J\LB<'0+BV1N.CF^!L M.3W$Y@6>0TZ")^XPTC3XS8NF#" !/DM+.UU&VUC*1=?[/)O.&=3@/Z:FV]5V MNU+^F+I^NL/U3N0.L\/#H^3Z.#L=I==/CK*3\3!=,9IDQR?/'HW.MT>PGDVQRU)F.R6%V>GJ:G0PGV]YZ&Z4A"HB+WZ_] M^XTS?6^SSTY7#S\<5K? M%;"HY0]3^KS'^I_$<#":]"['/7F$Q[UQ@"%^.O)F RG:9?Q'=PF7[[QEN;\Q MGXE)-@+MPKXW9+H5>*>FD+=;_"YM=,RY^+NSZ_/P<=C9]5=ZLH_?9'P$DXV? ML?KQV,/Q4_SNVJEN>%-\@/@<=QOY.8K=9W\RC?@?H%V \M)_WO8 '& (Q;O8 M;+Y,J+DO+KCJBFZ[ W,R!IE+1G?IL^+>B^"JMNY(GV[$N3,X_=E.N)[MX[?L M/F[X(F^[XT\.AT^?@PO!=N-L';Q?0A9D?&]A7W!X2!*G]K=^CQ G!V*+H"N3 MT(B&3/PR9B96^W&(+FE.>O?&?UY"7PCPC'D_1:#>1?C^8[#MQQ4.DE_"P(\> MZ/<^:%2]:OA',>+=^),B9_Q+&MWK_'LDOTC\9@)SZQDL'0Y.CO:$Y=_XX(O& MU/2[&E/30-I/?R[HAP#P!7B.'PF'"SP@_M#*Z_\%4$L#!!0 ( #>$"U5+ MW>JBO @ %T@ 8 >&PO=V]R:W-H965T&UL[5II<]O( M$?TK4UQE:[<*)@&0%"GKJ)+E9%=;\A%+SGX> D-B8A"#G1F(8GY]7L\ ($12 ME[/9)!5_,7%T]_3=_02?K)3^8C(A++M;YH4Y[676EJ\' Y-D8LE-7Y6BP)NY MTDMN<:L7 U-JP5/'M,P'<1@>#I9<%KVS$_?LHSX[497-92$^:F:JY9+K]1N1 MJ]5I+^HU#S[)16;IP>#LI.0+<2WLY_*CQMV@E9+*I2B,5 738G[:.X]>OQD1 MO2/XFQ0KT[EF9,E,J2]T]D)22.0BL22!X^=67(@\)T%0X[=:9J\]DAB[ MUXWTOSC;87']Y?GPPL)-+S05)SO_'<\0/JZ+-A&+ XC.-'Y U;\X9.WO KS?/< MH_W<5!"O3D/ZG;X]QQGW4%L$\\ MY9J=)[]5TDB7\!\*]@LO*I0:BR+OT8!=\SG7,N=%&K"KJXN <;;*5)ZO7ZE5 M(5(4Y\S(5!*3FC.;"7:AEB4OU@%+<)$+"R)ZS)-$"ZHH7&W.!(]7Y$IP4&GV M5MY*5\#7?=W/^^PFN\^PXH9$J:H@P6@RC!ZP665@KS%TZ$P6G&C!K"S/N^RO MM,@Y,2;*6./8;?: 1BNA!3LXC"K3"89.XC#D=-!%DFE-23!,V@VB5H4 M\A^X32LMBX63:N0=6_IT%Y3N#,DJVF1MM$L4&E8JM%,Y8 7Z*DY+N,F\6C@C M<"<>1$?!\'#LE(["\$^-OP6([!H*62A,5LG"6^"=9W=/\4XD\W/T6/.:??_= M- Z'QT_^7I!6)9YJ,< G&RIN&40AP^2VAJD(\V3E.&F4VCDLVAR;*" L1V)I+/3LR1V M%_ Z8[0HE;;DV124GE!OG(<3.A[KLVODNF"JTL@LF+_K]8V2<(CPWD@%RMUI MNU J7X$Y*1C M(3_P-HI&D7XD@%:4A%P0H %:5BA&5E$B<30R-)NU@%GMR2[:=0YT;/4.%W<) M]4^\;LVZ7TWJ5KRH.)CTI:6I]4'=QO=]]E,3A2;I=]TO78?-*^*5/MT_:I56 M"0XV8D&Y4'?>.>UK>+@NA%[()N_3U,E!D'*QX,F:+3!L;>9>EEK-I?7ZKFN7 M4^U[-TES3Q&;:54M,B+C?K-$HU7H7BMDKO[2Y)W?O(1&B3^WF3[8%7>ZX4._ MYWX..C<+>>MJ8=-2XV XFK#+XA:^4IH\L\T?!^,PA%^%:^GDB,+L(3N0CF+LI*=&MZFB\( <&&3 M,3M'!O'TJ)GS6WFY8^XX.)P.-UXK^?J>R]HS@R@.V5N!PB4QEM_=2^\]7AQ- M2:JN1/H$910>LBM5+%ZA2I?HD;-=SXPQ5+T]^VIJU_YA-&7OA7W0^IULNJ3V M5!0UREE)5,560PBZXV4C$1TBQYJ%YJX)NAAJ4ZYRVPED-9HYE06:;U,1OM52 M[\ID63?ETI2;XQ MNVF\LMX-=XU(G5B"D,[27%]X*L0 MG;-MI@@;IE^!C1L='*%V\7+M'M6$ 5,J0R%_KV@,OA)WTKCY?-]7[K&;CW9% MR]6]K$34_=C \"6Y:G>L^?=8-411^=E-:W^C/0W2W&\^3XZ:G1&Z,SZW,4JA M+*,]3-.^!.5H?:)>KW*9NC2E 5\D]-98/'#;39]=K#'JEV(;E[WC:S;ZXR!9 MH\5-ISX#-(XD8!1$NO$$=>,J\G%H:0B&3+^[Y7'._"#>DAL\%QAI5 M&QGN5*/\+M=0*,. 3:C]84.&,+Y<5H7WYK^$7\]?BER;&#CLBM5%^+1_'(D& MM""738!>CDN'F*N3T;-P::W?OQ>9#B?8:Z9/(=/I MXN\,$IOB^@83_T,P<5\ _K^!XE9S^CJ@.,0B&C\*%+$F'J&C/HD4X_'X>4@Q M"I\+%*,HF(31,Y#BU*W3CP#%PU'T3* X @*,)L\!BN'T14!Q=#1Y%E",@O%D M6GLR;^'BH[*GTQ>@QG$P&@V?0(U;J?6[HL;.\O<--[X4-PY1BR_%C&/MR!$GE^8W_*#C[)U!+ P04 " WA M5\)L3\P<% M #-#0 &0 'AL+W=ODL$95(C:3B>K]^1\IZ"9JX U:@7R3Q M>/?PN1=2Q[.=5%]T 6#(UZH4^MPKC*E/IU.=%E Q/9$U")S92E4Q@T.53W6M M@&7.J"JG- B2:<6X\%9G3G:G5F>R,247<*>(;JJ*J?TEE')W[H5>)[CG>6&L M8+HZJUD.#V ^U7<*1],>)>,5",VE( JVY]Y%>'H96WVG\)G#3H^^B?5D(^47 M.[C.SKW $H(24F,1&+Z>8 UE:8&0QM\'3*]?TAJ.OSOTWYSOZ,N&:5C+\B^> MF>+<6W@D@RUK2G,O=[_#P9^9Q4MEJ=V3[%I=&G@D;;21U<$8&51&;8Z4W)'E-5&-/OA7'762(X+FY0'HW"6HYU9W5]] MOKKY=$7NK]:W'VZN'Z]O;\ZF!H'M]#0]@%RV(/05D(1\E,(4FER)#++G]E,D MU+.B':M+>A3PCT9,2!3XA :4'L&+>B\CAQ?]/R];D/AE$+L]3G7-4CCWL/XU MJ"?P5F_?A$GP[@C%N*<8'T/_KQ2/@T03\@(.>2R ;&6)&Y"+G!BV*4&3C&N6 MYPIR9H (W/Z:6?%F3]*""0$E82(C.>!?OZ-A*\H^PM'7I\G#A&AC V%]+F7*T/L<1,HQ(K^P7WOK M$Y(D?AS3L2!&P7(D"&GL1\GLF23R%S0A:UE5H%*.Z-UD&/H1G??#N3];A@-7 MBD##,%SZ<12U;+>0@1JS[)10)UX,)H$?+Y)A.$? @3Q-_&"^)-?"@!+,GI(C M9G3ISX+!%&,8Q$$_G"7^C X^SJ@?1#&Y-06H834$6(Y&R^5@@/HC\\B?X^BF M+\)1Z,*%3R/Z3!+[LU%43C!,U$^BQ3/)S ^60UAM"J]%6C89@K.R).^Y-HIO M&O=G>+[FSW[_F#(_6NZ"&[1YL 4_CO5B@6E(Q@*,-!U'.L3J#\-H+)E'?I , MDA]72Z_%YT?51/=>8QP5-@?D3\XVO.3&[J9>6(Z$3 'V(:E4-N(,QR2552T% M"$/DEDA7_&.#70'B\!,'I=&VXH:D3!>D9GOL;(PF'!N3[(F)%"P$(MA#HF9B MCU5IN-[N[8E=@W+ME]/:E#QW\;7X/"T6T;TZ"TEKRE9K"/FAQS M*FM2M'5\+8>7%R1<#PL=@>/M3LN<OI@,]++?!*[4[?Q[2*':8%:B MT$GQB7_N&EPK6.[Q;PE/()HVK;G@_R!\UBCWET2&QFU%"Z1?W7!NK:V2%6&5 M;-J4#NZG+\;(L?V&&]GAQ GUL5!;Y^8^#9-O&=M6VS*\&R7I=E05%]\&PR<[ M( 6S 5OX$1[#J*!ZH%?*RS_45^]/YZ IL,AV'(_1C4WVD^2V>"SE41C1^:X* M07&9Z8EK0[Z[JJN@DE?NB)*BW&/>4::8R*'=,F[YREY8;(ZP T<\5Y[H%!LB MWF">%+EX6)-'6?.4) '&LLNW2UA7P+B1N"G(NMNH+W5STU&+C3JYNTC8FL6( MM-UV+^WO*A=MBSZHMQ>=CTSE'!TM88NFP60^\XAJ+P_MP,C:->P;:9"0^RSP MO@7**N#\5DK3#>P"_0UN]2]02P,$% @ -X0+5&ULO57;3N,P$/V544 \A>;62RAM M)]0_JSMIK*!E MR6F)7%'!0>)B[)U%PVG7QKN 1XIKM3,'F\EY+@@-=,SL?Z&FWQZ MEB\33+DOK)O8*/$@JY46Y09L%)24-R-YV9S##B -OP#$&T#L=#<;.9471)/) M2(HU2!MMV.S$I>K01ASE]E+NM32KU.#TY/KV\?+VXV(JQ&'XBR,>:6L+TE(#R'"\RPG!N&)'+>: A'!VD<)J?_ M;7POZH,@N** C.R-D6I45+"E#L155<5LV>\#4P&?MP;O)F1'T?IARP.8=#W^TFX MX^@G_LF@C?SLSPMVRK]$N71-3IFKK+EN.D'K;?OH6=,^WL*;)GQ#Y))R!0P7 M!AIV!CT/9-/8&D.+RC63N="F-;EI8=X"E#; K"^$T%O#;M"^+I,_4$L#!!0 M ( #>$"U7X\$'0N@8 $X5 9 >&PO=V]R:W-H965TCTV,[]T&>'HM65[R!#Y*H MMJZ9?#J'2CR@/RX^2!Q->BLEKZ%17#1$PO1D M=!:\.H^,O!7XG<.#&CP3$\F]$)_-X*H\&?G&(:B@T,8"P]L7N("J,H;0C3\[ MFZ/^DT9Q^+RT_HN-'6.Y9PHN1/6)EWI^,LI&I(0I:RM](QY^A2Z>V-@K1*7L ME3PXV3 =D:)56M2=,GI0\\;=V6.7AX%"YN]0H)T"M7Z[#UDO+YEFI\=2/!!I MI-&:>;"A6FUTCC>F*+=:XEN.>OKTS?OWEY^NWKXE9]>7Y/W=KZ]OR-7UW=GU MFZOSMZ_)V>WMZ[O;XXG&+QGY2=%9/7=6Z0ZK"7DG&CU7Y'530KFN/T$/>S?I MTLUSNM?@;VUS1$+?(]2G=(^]L \[M/;"[QRVLQIMMVH ]$HM6 $G(T2( OD% M1J<__A D_L][?(YZGZ-]UO^QS_NMQD?D6PR3-T*4#[RJR-TS(AF M]Q5TD.9_@2(:7Q=SULSPF3=DME3#_F'?Z;D$(*PIB>*/I';+!,PR(5ADZ(O\ MBOSX0T;]\.=_[?Y!BK(MM"*77&G)[UO;)NZ$9A4Y9Q5K"O#()110WX,D86#] M"GKU Y*$7A(E@PGJ)<%PG"0>32BY8263V'_^;+GB]B//74F\- BV.AK03<>= M-#8E;#D--@DIH2F>B):L415SS:[\ WL'-D\,;ZDVCI+P<*=Q][:/^QV3Q7P9 M-!W&E'M9'NT).J5>'/A;@JZ!J5:"<8HL0')1#MS<"'(<47KXS2EQTA=/K&IK M^$JJD^@EJ3;2+TYU[U;JOR0(*]V78 T.PP3'7A0$^RJ0>3Y-^XDW4BBU J*! M'BN*MFXQ $0=KQ>,2UN#"@41M@],D8,L1JO42A^D7HQ#W(/5 NPN6CUY!(7$ M])F33CK$%9)_57,#64?DJM'8.+CI*&?H"29T,,/YOX K9S M<4E :5[;I+4*IFU%*HQ('9&+SA=<%B60AM6=?3O&QO@9R:)?*6SHM5,I !7%K@K@UP?LBJ]V5N=@.K56C06CG?H8/XSCVTBP_Q$?,=!#D M!!O4W1)53[U*@ IQ0L9!X 4T.B21EX649.3. ,7A9M5YHYR2<>BE(>Y+U$OC MG$3D6C0_%:)&N.#JG$F ];Z;IRD9X^6P[['11E0')/!S+PQ#XW<:> D-K=\I M[JK^AO15CZ9]F=OB?Y!Z49+V?G3#@3E'- 9>T<3+?'_=*\QKD*8O7G3?Z[Z; M_?R/G^^ GS3R_#0;3(QC)$]A8BI/ R^.Z"X>G&2&,>3U,MH;!W'5K"%8?US("$'2Z,5 MD-QP'Y P*S3RU[V**)*F>,,K\S-S@9E@S1-6"5F"^0]96QCPN(!&@=GF#JBU M:XD-15SFSWYJ=O_,6!V#G^=4"*TZ9G 0A$O+V ,, ^,-06EB&CN3F;%LVE@K[_^'ZL!VEC+PP3UV0^)AL\,)!,K(N&6&>_:>28=;+ MB@5N72A&?8U_\0U"M?J".38S/&J01W36Y,ZS$@T\:A1O)7D")CM6:7@X:9MH]UQ M5S_;'Q:>N3.RE;@[:<1_VQG'A5#!%%7]HS0>.>:]'&BQL"=F]T)C [>/<\#& M)(T OI\*H9<#\X'^"/7T;U!+ P04 " WA M5\!P$GI9%TN$@+OOA%\M MC?WF9DJ5XFZ>%^[UWJPL%R\.#UTZ4W/I>F:A"OPR,78N2SS:Z:%;6"4S/C3/ M#X?]_LGA7.IB[\TK7OMLW[PR59GK0GVVPE7SN;2K"Y6;Y>N]P5Z]<*VGLY(6 M#M^\6LBINE'EU\5GBZ?#""733UWOG@Q<6(]O.&?VFU=*WO@C@9 M&_.-'CYDK_?Z1)#*55H2!(F/6W6I\IP @8S? LR]B)(.MK_7T-\S[^!E+)VZ M-/DO.BMGK_?.]D2F)K+*RVNS_%$%?HX)7FIRQW_%TN\='.V)M'*EF8?#H&"N M"_\I[X(<6@?.^CL.#,.!(=/M$3&5;V4IW[RR9BDL[08T^L*L\FD0IPM2RDUI M\:O&N?+-VW<77UX=EH!$SX=I.'7A3PUWG#H1/YNBG#GQKLA4UCU_" HB&<.: MC(OAO0!_JHJ>..HG8M@?#N^!=Q39.F)X1]_)EC\UVGZ*'."%6\A4O=Z#A3ME M;]7>FW_\,#CIO[R'IE&D:70?])TTW7_JI"?HH/@R4^+2S!>R6/WCA[/AX/2E M@_6-2Z&=D$Y,3 [_OF'/Z$1%34BWJI4SR94IIO>1?ZUN37X+CML_#(8O-YZ_ M;)(V.DJ.3T:MYS-^_E3.6O".^R?WP@[4CD9)_[3?6?'0OA9R3@+Z767>$#+M M4E-!;K+(:M-P%6L@-:YT$<;!(#D;GCQMGH=)?W3V5'PQIC=2/%VJB]-AB>TMKQEK5&K(/!67+R MO$_B#>0U/V&;U]T6H;84==PUI8](F9=69;H4[V6J"5NY 2&E.-8(JZN+A.*>F-C$80ABC:1 M%V%Q.X&$-E6VA+Y$9N8*Y*6PTK'3F09\Q19"!VHPC&A:2<2RTL!&VJC^&9<; M9"ED!):HX@ JB\")LB,3DZI@&Z[83.0FGP.EN)#%MT1\E!2/85WGSIE4\Y,X"("PK1$"1"8SE"O0OI6$%8P"<%)[F' * ML96BC2)Y(']9,Q+X6=/4X>+*@XF$MR6TG.ET MUE$I9/VTMIU,[*. 9;^L5=,DF[:N.L**]%['M_JL#QT4QG)5EB0>V&1M,, 9<<1]CH,MU0Y,N'O:(?TZ(F_3 MWQ/O) 03S#VR%U74/04>R\JJ=7-$>0+/@M%P7M\H$[R2R,8:^%;]5FF45X(Z MC*S*H8+?X$?@$V!CW()[(K]5]!7[82G@>- ;'C\1"\ /!VKBC=5338:Y+;]X M,!M\)MZ2:&TL<\X?604[+3VG4$V/<]DV!Z&B*X0$I1"/?C5PU=P'EV#9Y&9C MME_11 G!T0O1YE?X(G%41R+D.+4@=T+ZI7.JW AH4<$MNKH1Y:;&0CL_0T%3U>*=%F5]V.^Y M <'ERLWTHMF'Q$WFE4$9&<6#0$4[A?1\-A-+^E.8J' TC\10*UYNL4(RG>F.YKJ WD8>UY>Y,TT,ZS@6&$'\HN2.D*A+ MWCY1'#-I7U541&:[K9GY>-TZX'KP)N*K"Z(E_+$JETH5D/_@%.&0Y-B/@3&( MCQ:I,21:_W;A @%-1?F%])26<@--=8YR#%]2VDI@J#D\O3*"8+=/%0+>"XH MD--#:FX5:LJ2M5[GREQ#/ $:U5H9"/'%"17B8]!?*(<3F;[5&:J#@,1P#9%1 M7:+'58BXH,NN?+5%)2BE47;[<>6TAU)Y,V1=+:Q)$?6QFLJ%)A&INP4P:,J/ M6"4'M3HE"=;9K%FLZY7,-K,DHLL"$-5#4GE)3DA^3:B0"WWNK$TEU1:F3GD\#7WFEHJK%3]BMF&KY,Q. M-:"RFJK'%%;ES1[D*\[LX!E!G+I1BAHH#I@)2E>/4@,*.U_!]UNR8?-@3B?: MI3@8&':=80HDUB+H4?X38[#W.6(O3*V]['Q(510]#'!P@(1("E,\"SY-1V(Y MG31%"!&L*';<:I/+.J=UHC4B365ENJ(?'LH!$ZB;.@P(9"Z_*1&Q0_! %8@. M80^0%EZC252IC^U1<]T\,$8':ZM%F?J*59.B0&A:RR5I#OY:95,?RWA8P!'2 M_16 @'L:YU6#7%J%;419$!%8TR!\#K)E:'*0]+0-DJ-1Q--'3:% MT!0E=&W0,+3T0/LZ12IU>P_5CMR>*@K[J$FM+\A##Q :9_!6Y1RB%,\O0F;2 M=K/C<+6W[,I:F^T%>D19R$Q#*EL&3I_2TE (&8SJ&/JSRIZ] W,_FCSCTO/K MU:7O17!LHE.:!:'?$)^MR:H4-'PHTEZRM:")B-LCGL[LJ#O1B?LC/]UV?]L4 M*@Z'MD.*]-C=#LQ[@Q:8YQM\+M[X@C$MVFMEB/@"1KX:%"/M^'1 MPO;!CQ>B%!2 M45Q$@Y )CWB9M]JC+M]^NF[\UW6*Q_O1\+@,5;W->) 5R]4=8O_O]?ULQ-ND M^J>-!CR&MYVU^]URLZ/?XANAMZ>N@H,_G>9UU?(=8[T'=?IW#"+6Z^;'SB4> MGCFT=L2LT;POXH+U&\DO5(6^$J1HD]WZSH=J8T,1]1;QM+:\Q)>0',MA68ZJ MZ^\83FSQ#!X%*+33Q#[/#"8A[8:C+-.F:WG(&[&;BY.V"O_?QOQOM3&[C&.S MD^FA^ ^*Y#QRLY0+:@A:LXDPF%%KKYN+Q@0X23F<;+V/I1*(WWQP4R0=A5&^ M0Y"OU@XV%Q@*OL P 3<\->)?27L[7D& I)GTS5+3Y-]+5+O2(TXWB[L_?@/H M'4J3,&!VA,W,;X9P!>K*FFLVY5S-=P?$7?[YV='HLG$=G7 MJ'(J=6*8Z?+&D@IOTAMI^V08[';PC'43JH$#V* U=YI\ 70<]4Y.GVS++"B% MWZ*[A=3YG71S2\2/MW:_,4)ZNT]/SL>3$>FG)X6OBB8H2%9(X-J6RJM9@1VZ3T MUKM.4;"%$'2S4'Y6\RIGR#Z$H>1!J)S1#?L2E92)U1<(VW+8)5,/E9<$&^F"2UA6#R M2M6WC=;XUZY=9%UQ@45O!A<5C:M_4;XMHMI*9ZQ/@F&61=V06NV^Q0E(>RT( MC@?ORM+E!KIKLH1T8IE?V^%#1"+D,:'TRP(E'H(_I*CN5%J1)=*0$'FAM'[< M'T;P3,H26IRM.(GXK% 8MCPV3J\,<*5O?;D3[NMQ#FK \74#)"U2-?MC96&/ MRDMGK% [8)%(V^(@+>Y7=<\GHHU6^826_-S)C',]#2G6YP6"*9N0P'FWP;@, M[\A8/^P$[?Q2AZ6UC,4!+FB&"63AL>]N)L-)Q1<@UIS#A6MFCO+IF'CQED87 MB^;L# _;7+$Y/*ZO)/#-7NA0_C6W/!_ZO&B34;\W<@]>#O4W'=-PCS.4@WY8D=4T7KEKYB(?&_/%1,G3G ML<%:)Y !3@N^^1GKQ2X8!&8S5_$F),Q?^5[F_AS'=K;__.S4,SY*^B>C+D.Q MR:.-T KO&XQ.NF&=\\_C$@+%'"5MP:W[]]*[3MO6*JM;"^S#^&"AE#ONZ"0W MQQ2&_@@#ZQE,T'O%YH;I8!AXZ&V[1G[8NKW/?13]CX+SL=)?Y(^K\=\@SOWM M_V:[_Q^*GWF,0S/8"8[V>Z?'>\@^_'\)_J$T"_Y?@+$IT4[QUYF2B*ZT ;]/ M##JO\$ (XC^'O/DW4$L#!!0 ( #>$"U62/^K1CPT /(A 9 >&PO M=V]R:W-H965T@"JN-''MV^ -=I M[Z:W28HFW7ZF)';U_7 M/P5/&S="@U%7X5]Y% M/PPVO'AJPS1NF++>X2#6\DQZ^?:U-5MA:36DT0;/.WAG+F_U3 M]@9Q1X^+HY1YZ6J9JC<'R FG[$8=O/WME\G)^-4/E#WJE#WZD?3_7=D?BSL= MB1]*%)_42A;BLS6I4IFN5DZ<5^)"VG1-[D<0_%J)A2EK6=T+I[PO5"8D4BL# M,K7S5E**"56!+%*%U/6<=4B^7-/2Y3U+^#JZ'HD/*E,6I]U8F;'04CO.]&>_ M_?)B.AV_^G"SX$^35[\C^PN(KE;"F_9\>C6$DX42)A=(V+^:1'SZM*!5 M\SN(>E]Y96NKG8(AZ:@332\[V=NULDI7K!G.%+(HU K*^K7T_! $& V3*ZO8 M+"=2P!R4AW65J9ZGT$EY+*C"=V<*G6HOV?;:FHTFTYS ,1MMBO <.E]';CJF M+ZS 4UZ9ISX1T@F)XY%9B9@=K*7!3RWO^4B,F+ MD;@);NC]CUO:F87RE46N5P%18YOX,8A$55WTWT M]1 E05.$J?=5 D=NV:"X/F]\8U6P,=/D9^B@U*TH3:4\"HK(9(DZXAX[>T1( M_BBKAM8]Q#+)9,2L908+7*K)0P]T&HG/C76-A,:P11(('(.\Q04+POK:.&QO M7QN+H,)>@%&1.=@;,X'Q5F5#71)X5(#UE)A,DH&JM!18:"CCQ)E*62/>?,7B M99JJ.N0("PM'SSO-GM'CB'_>T2; 2'RM2 "]YQ=[KB$)&=E+#B]-IO/@+TH: M!X@K7MX[;0!W-BUL9.N#[22U0KEVNM2%M,,-6^W7' B$>Z,[%I:WZ%^CR88N%I6*0=T9669]"8+75+(2&-AEH5>A0R% MLAE!7R\;,M,$\"$5(B0S;9%LQ@9+39[K5.$+:1-\\G>#%8$PHEJ[F(@.LJHV MEL #?!9()R0&&!/)=*\DY&%%BP!T0XVE( _,8:<]D#T25X0C2)N,DT<@'QA9 M>^)XA$:7XB_\/]=XN.AE?VDURW@WVK[<$T+V,#IA2\*36*N3P0ES-NRA7"2Y MDB@N"%WT55EHT^HO-",#L!9U]Q=\H&28@ [/.7*P(6PG^\.%';P M195)FSG.W6L0EBJ7B//#^)94_P@['[2%QNA)LB9MR^:929N05=NU!G[Z8LS5 M*.M>2^5*I"UXZDY,Q;LJJR)49F&^WOHV]%):GFB'K(^M6 [BW! MET"K_)8$/TX\#=*RZ'A^CH).?O"A#YI[$$BE[J%=E14M?^.ZX2F'SV,.4XX] MF0"4.Q16HHV6#Q$-784[6[@^]0T427'-\CO0%<]IR6D/B1S@X.'AR0$!*F/M MKL!_,8)0\-)LNH &3D"EZI_L6E!S3,F"7N<^="@H-5!,R1QU3HT-#S-%6(I! M)Z.B QQ[P-4HCF#B/1BXIJX+CMJN:R@"$*]1/:AU0;-#+0("M%)/N&5H0V9 M'53?UI(;7^J)=AP/W4MY2YVA4"A@3=?Z<93!N$R"=Z@^!#2H7QL/'3641-]Z M2WY8(6$"+J#D !@[Z0/?7LM<6E14XFITP2A6")Y!/7ENMI0;B+G3F2;S=FMD M,@33]P;O-PI' AYR&\_^]30Y'H\#@87^3^?Y#JHD);J+P&,A*2[+.]UUO['M ML3=0V#0N0L$+$,M2%TA D09^;%NY/=M"F]K+:P_H;BZ)N("3SN0&C>*?\E:C MV.N6G+*]M:&849(=4>F:'%.(+4>2^T[-6_'?GM59&V)"Q,8STEA*6R MN5LKS@M(-!J!?R_;2A(Z(([KOB4[KJ.H7G^;W[3=1J_(6?.9,(N#*_CO>DW5 M/.]8Z(J7]_5L<7W5%Y"=*P^S0Y['7A61U+ K"UV'#,T/?51WRJ9TLT(>4NQ" MZ2:Y%(W &M2HYFA9E+A1Z;HRA5F19L:OFDJ\8_(D43?_OA+P-Y)TBP*3J;HP M]WRQ1#,IG6/%0CPD$LZ$MJDP6V6?YP5]!W@Y1JEL7% SMW+%# UDDN-O!R[L M?+*4Z2WQ3%,PB*%V0"[:?.XZ(^\PF"W=F=@'5)1B?B21EQ!JF@0I2SZS31%! MM0?:[MP+$^[$..)CDP4]Z5Z&JW;+QI_DMHO5QXNK3WVSCJZN8]D7R>.I/VB] M0"S^.1R M"SY6$>9D!9-%ARU0XMT4A+7L7K4IH?-H>,OM:<<"LWE'-6RP)VQ M[?>&OJBHCWS*_I\^)O2=Z%8,LU !IFIO4414T76(6RXWAOTVR).=Y)==%WVS MUC8+[1=G6ZPSZJ$3O2ZI]^E]"9ZG'"(FJ&L%;0U-1]!@GP07!'5;-CEM_=++ M?2B2AJL4B"6R+ ?N.D9;0^/9&,W+/6M..[C2!V7#^GC?[\5O=5&$2H3J^V!K M3?[CRU;6YKK&?V07&CS/5T"4*:&[C"LR#G9J 0#D3W M;*A[,,6&R;2K=P4/VG"WK!NOXNV1ZD1\40\F)I#-R/OK4?G2#J@!<;%VC8PL5 M&QCE^"194J6A QX)5^O8'X:).2_P;S\!"@V.8V3]@\#J%/E_E85_U1U=F^B\ M 2; Q9;J;H!0UPI*,D0%3LNP!)8I%%5J )ZZ)E0T-ZO6LIT4]# MS8P.HXY >I M-Q(L2.$DI>+YG7;4-7B&6PP_'>;\*$P_JO8&.V=DZ9UG:=LE M;Q5=BI.'R9?LW*D8'X,;0R2B>!MX+/:[YPVCVTFZ8-G;WIJ0H^*9 M:\(@Y?QF_N7W.#)NN+W27 :V$SFK''3)>N,AU(_$)$=FCSB(\"BTN_(X#UL!N-_R- M(SGR*/_X$IW#DWC"48!!]"/.#_)&%-TH&B[4%$H";8 FGJC4Q\*8M'1:T46N M>(1,D0V!<5J)+0S1**HM32(LEUQHARIY144IK%OAO>4I7^0R45+_^9Q&?6$S M0\!W U3E4AGA@SK0L"$WAMHU2QE >E=.[06+VRKZCLY9*1J1TX]R//)D>MX&DRF^X) M'HD//-VG7SAUV93!6>C^[]MA0)P._E2@VVG/AJA MV!$6QFO+GO;PUE(A=+M MLKRIP@2VL[@7,; ="_O^MU)W-(=!N,/H-@Y]XMR4>P*:4A2XO;B7/'4:SU[] MUW^_\+E9N!JP<]LWOPIX\_@%/9QU#X^2Z>D)/3KJ'LV2\>DI/3KN'DV2DPEO M/.D>GO4"^6\5$T1?$?/=8(,X]P2&R5PW ME7@TZNTN=BG/&P?H:^L.86]X&O(2[0;U.?4Z@<6\>CT^,#E%W^"X/PQ9N: M?]5?&N]-R1_7"F7/T@*\SPV8.'ZA [H_\WC['U!+ P04 " WA M5DM<5 M%90$ #B"@ &0 'AL+W=O:BW[?YA74W*:Z 84GI38U=[@TB[YM#/ B M"-6RGPT&I_V:"Y7,IF'OP$&I"0@I/'28B:=2A+<_=ZB_QIL1UOFW,*-EG^)PE67 MR21A!93<2_>H5[]!:\\)X>5:VO#+5O'N<)2PW%NGZU88&=1"Q7^^;OVP(S 9 M_$ @:P6RP#LJ"BQON>.SJ=$K9N@VHM%',#5((SFA*"A/SN"I0#DW^_3'S>?[ M._;EZN^[IVG?(2+M]_-6^CI*9S^0/F7W6KG*LCM50+$OWT*."-_J=Y47I\6)H*XL(V/(?+!#/>@EE",OOP;G@Z M^'B$V[CC-CZ&_E-NQZ4G*=L%8%\J8#>Z;KC:,*X*)IS%2IM;40AN!%A6"@E, MJ%S7P!Q?8T4Y;Y3%+>90]FOZE+(2"C!<]M@29;1'!,<=!#RI5-L*1<2OA*F2_PGLY-"V16^2E M%D&U%6M6QU0%2M7OZ6E<(>E#+&^XXNA#M>_-7*M<>D+"DUURB$*N)X+H<=1O MR4\!N0%T:JMZV(MFNLIHOZC8+>10S\&P43PYPQ/N,$@6VPMJ07Z''FYQ9:+BA*+\U=!.BD'MC M,#)RPSRZSKP)1;4C^@A+4![8U0)4OL$4Q;YK+5B[#00^'%+\P^?(W&V( '90 M0/PBAA3O.KN7+>0U>GLL4GWQW#@PR 267/K.X:L*4,*@XYFP&&M-2[C?:1#G#N)3;J'UTKVK*$L+['O.;TGE;=5AA $>*ORV-;,A6 MJ"X[2OZ^1Q781&BYB>UO/$X'\WBH[WF$[-/F3*/GOS<_HD M_!_Q62$0#;.L-+IFF)JAB7NGL9P#"" MA8"SGPT!2P\]>/V=N:,&LPC3%?5&;$-Q!.EVNP'N*LXMK]?C]'?/S4)@2Y)0 MHN@@/3M)F(D355PXW80I9JX=SD3AL\(A% Q=P/-2:[==D()NK)W]"U!+ P04 M " WA M5C)*GR7D' !T% &0 'AL+W=O- M.6A=DF'WND'_E>>._XO M-G'LY&(@TLH'6]3&&$&A3/R53W4>.@:+\1&#:6TPY;BC(X[R%QGD]:6S&^%H M-*+1!4^5K3$X96A1'H+#MPKMPO7=Q_?W;S\\W'Q^]_&#N/_CYL/#Y2@@+KT= MI37&;<28'L$X$^^M";D7;TT&6=]^A/&T04V;H&ZG+P+^7IFAF(T3,1U/IR_@ MS=I)SAAO]K87#]XP^3L_&;%R(\;2,\?0G] M&R-\$>-PA!=#\1Q;_&'-^N0SN$*\,RD8*@QQKZ7!6_%>NC2GS$\2$7(0=[8H MI=D*9510,D FI$BEST^H&#*A"2H0E&JA2H0:BK<2<>1&NDRLG31D62%!'*/2 M$.%SJ;58@@"MUFJI000K'L$'Q,)1#O#-7Y740AI#/\KX@!:H"<$+^XA04I3@ ME,V$7=4&J34>THKCL 9.MB =#6+]P@AK Y]@H85< 79P8U 4,=-L2BS1B!^ MJ"6&ELEM.Z@LM4HE!?[<0X)"M_R"XD.3XM%IKN 1NEZZ5@4$IU(OT"4B*BSI M3"RW/&QI*1BTR91#0.N\0+/]$.HD/8]DR&N(0BI9".&)K@$E5?-R3LIIK>(E0Y4Z0+K%-HZ98M(&V1?"2RW>IM$I/E\$2\F MR70Q;D&]>OI>2(QX*#XV?+V(%CW*_OC#8CHY?^,/Y0_SYI!!&8]/;8%!"!3; M]*OP$()N5XD80)0G.OAFV8YS_O/AU9+:V[[+514J!WO.*M-WAU70#6V(.INI M%2YWW=!26QGF)ZV:L2&R@>Q]7-(TEV8-&$@67Z]6S$?R+Y43CU)7T&,\ED7# M>2RD3)$C?%:OEE9RJ;0*6Y%B*?A=*#T(K/RGI@)[Q&.%^=R1%-HT!/SS?4F! MUCSMFC,_B3@I.+(24)3:;@'\L(OZXJI3@.AADIS.9LE\/!8_>3-S_7$D?/D)^LN21,.+PRJXKI3$2M M6) 9%I62$HQ:BN2B%/>2-4=8G'ZN\%' />R.2)1N:GH-$^,2,M8RYE49 MG@D1W5B>@\(LQ1#4ZM@\1%Y+@$V1:T2V)2 $>9;4LP(,Q;OCUDMD0X&I1(5: M4C-)CHA$':ZM=,;QDGAJZPDMJF>)/:P=W=1YW3ZI<]+OMX7 J4H/-:[6/9:U M71OU'RJT$&?*V?[NKE"POM82W6VD;7UBX6 ?8N73.DZ'V:,:'3S*LUI.ODWG MAK03DUGC\\@FH-=1^JV$GA3RBW6DUIT^QGI4W\3%W&LR JF6\R8-V4K!)C6/ M4=[PI(-FBBJQ[BQD?* 56%PE/ 'B3@;3AGF(GE;.%IT>@GJ%NSN\&HH;Z@#1 M05(O0K^S1("6VW9O@:/2R"B%S/8][KZ:SH:G M!^N(\S)-)A@/NL:3,IXHUHE8@T&]T5&J,M0CY0/ISR,T'*[CZBU4E)@_S?]R MVMMUPCX9X_9SDLPG9R3,#9&?.WK@M=L[O7QWW31(_5^ MK-D%?'JX:3+"$5JY"E._OV.E*W80V,4W;Y( MY/&>YY[CR]UX:]VCKQ )GFMM_"2IB)JK-/6RPEKX@6W0\$II72V(IVZ3^L:A M*"*HUFF>99=I+91)IN-HNW/3L6U)*X-W#GQ;U\*]S%';[209)GO#O=I4% SI M=-R(#:Z0OC5WCF=ISU*H&HU7UH##(U:!R*6\?>.,^E#!N#A>,_^*>;.N:R%QVNK_U(%59/D M0P(%EJ+5=&^WGW&7ST7@DU;[^(5MYSMZGX!L/=EZ!V8%M3+=7SSO]N$ \"%[ M Y#O 'G4W06**F\$B>G8V2VXX,UL81!3C6@6ITPXE!4Y7E6,H^ELM5H\K&#V MQPW<+F?SY>WR8;E8P>?%[0U\^GH/J]GM8IP21PK^J=RQSCO6_ W62_AB#54> M%J; XAB?LL)>9KZ7.<]/$O[6F@&,LC/(LSP_P3?JTQY%OM'_G';'>OY]UO" MKGPC)$X2?B$>W1,FTU]_&5YF'T]H/N\UGY]B_VG-IUF'V0!^A!F6!KY*LFMT MX1"&9T 5PK6M&V%>^!UXM3&"L #;.K@13VC(O9S!M]^A%%)I12\@/%2H"^!2 M EYHY,!26E]F%:E5TB#V]PWA]#($ 3PS"C9+@*U42*!.AZ];SAG@_ M@ =+0O^W_=BB0WB77PPC_MTPNX0S%N$;C#4S'$Y8$.RU$\9\+"0<]6L&;%L+ M+8Q$Z/H)9VE+X*>+_=,--MDZ%W/K)!_O+KH;%D:#9X?Y& Z]I*-R';Q%*^ML2- M(0XK[L3H@@.OE];2?A("]+U]^@]02P,$% @ -X0+54&K )RC P #@D M !D !X;"]W;W)K&ULS5;K;]LV$/]7#DH1;(!A M/>R\;0..DV'9^@@<;\4^TM3)(DJ1*DG%]G^_(V6K;M&X*; / RR+C[O?O>\T M6FOSR9:(#C:55'88D5LWU=HZ*;0IN*.=J:56QK@RP/3)6,LR0Y MCRLF5#09A;-',QGIQDFA\-& ;:J*F>TM2KT>1VFT/YB+5>G\03P9U6R%3^C^ MJA\-[>(.)1<5*BNT H/%.)JFU[=#3Q\(_A:XM@=K\)8LM?[D-P_Y.$J\0BB1 M.X_ Z/6,,Y32 Y$:GW>842?2,QZN]^B_!=O)EB6S.-/RH\A=.8XN(\BQ8(UT M<[W^'7?VG'D\KJ4-_[!N:;.+"'ACG:YVS*1!)53[9IN='PX8+I,7&+(=0Q;T M;@4%+>^88Y.1T6LPGIK0_"*8&KA).:%\4)Z-TOO@' M%O/I^Z?I;/'PX?W3*':$[ZEBOL.Z;;&R%[#.X9U6KK1PKW+,O^:/2:].N6RO MW&UV%/"/1O5AD/0@2[+L"-Z@,W80\ ;_B;$MUO#[6+Y8KFW-.(XCJ@:+YAFC MR>E)>I[<'-%TV&DZ/(;^DYH>QTK3/KR,!XL28::KFJDM2*0$MS"$7%AGQ+() ME;-F!DO=^!NF&4H(6R@%N MJ*-8I(UDC@Z=!E>2!_?2=0%OTC0+LMZDPPRH]7@*>@PB5&V.H<\QH S!+D," M!RW2'F';&D/!RVVO1BGN&P\K% =6.KTY#)++VXL<*VLEB(/'-;1BQJA"[ZA?FR8CTL;#4Z<%![?)I\]'.T1 M?I':VE_[<-<8H5:OL+1WJ 7UEQS#0:$E=6T/4;-MJP%9^2?)16/AE%7US9ZI M!P^*]\G702./0C8X0P D:[F%C\Q0]/>\/="-@5DIL(#[#?+&>Q8^%(6@5+J& MTY.K\XNK&PI_+TF2$"U?871IOW$WM?7/C; B)"IY9[9ELJFP!^M2\/+_$(/. MENR'MGRK@:6Z43G-2I)9H _E"W;E@DK,=52DD'7[8MV5'EM1@=H#FMIHCIA[ M(&!Y'CS()+E&!$C.:N%H_QKG+)EDBE..^3%DH?^]!A@?S*@*S2I,8H_3*->. MJ^ZT&_;3=L9](6^_%-XQLR);J,X*8DWZ%V<1F';ZMANGZS#QEMK1_ S+DCY8 MT'@"NB^T=ON-%]!] DW^!5!+ P04 " WA M5G_.XFK@# !2"@ &0 M 'AL+W=ONX5QFS.@T!G!59<#^4&:]I9255Q0TNU#O1&(<\=J"H#%H:3 MH.*B]A8SY[M7BYEL3"EJO%>@FZKBZML5EG(W]R+OZ'@0Z\)81["8;?@:']'\ MMKE7M HZEEQ46&LA:U"XFGN7T?G5R)YW!WX7N-,]&VPF2RF?[>)S/O="*PA+ MS(QEX/2SQ6LL2TM$,OX\<'I=2 OLVT?V7USNE,N2:[R6Y1\B-\7<2SW(<<6; MTCS(W2<\Y#.V?)DLM?L/N_9L%'N0-=K(Z@ F!96HVU^^/]Q##Y"&KP#8 <"< M[C:04WG##5_,E-R!LJ>)S1HN58(9SCRI>H]JBM_CP+IJ$%V]H&W7:1F^Q M_U#;V^B(#:'/ %\;!=2KBMMJU\ 50B:KC1(:\P:VZ0D=R4R M5#X)WMH^=.S+1M,=:.T[.DVBMJA='"NQAZKM3;2]"=19V'76?Z9_0*J!3)0V_Q^=[>JK7UOPV6"EX2P:P),TO(0O M=,6:EW2-[R%*QSYC,5FCQ$_9B(RS*/1'X71 )F/,G\0I7$MM;&&OIJLI;:>)3?ZE M#TS0^\Y7J-9NFK&OXZ8V[2>_\W8#TV4[)_Q]O)VV[KA:"WHQEK@B:#A,QAZH M=H)I%T9NW-2PE(9F$&<6-/2AL@=H?R6E.2YL@&Z,7/P%4$L#!!0 ( #>$ M"U67>8)78Q< (Y+ 9 >&PO=V]R:W-H965TKJZDBI9U^,I993O'.)..4^UD4OL1(B$)'8I@ Z1ESU^_[P! M4);D'-.[._LEL2@">'C'[QUXT/.5L5_=0JE&W"[+RKW86S1-_?3@P.4+M91N M8&I5P3R@8]V?N!JJV1!@Y;EP7@X/#Y82EWMO7Q.SS[:E\]-VY2Z4A^M M<.UR*>W=N2K-ZL7>:"\\^%W/%PT^.'CYO)9S=:V:S_5'"Y\.XBR%7JK*:5,) MJV8O]LY&3\]'1SB WOBG5BN7_"UP*U-CON*'R^+%WA I4J7*&YQ"PG\WZD*5 M)Z)0,]F6S>]F]7?E M-T0$YJ9T]*]8\;M'AWLB;UUCEGXP4+#4%?\O;STCD@&GPRT#QG[ F.CFA8C* M5[*1+Y];LQ(6WX;9\ _:*HT&XG2%4KEN+'RK85SS\OKR[8?+-Y<79Q\^B;.+ MBZO/'SY=?G@K/EZ]O[RX?'TM'GTTI,O__FUT/'RV@]S#2.[AKME??I!-:Y4P M,W%5*RM1J]TF&K]_%G$A"WCV=U,6NIJ[3%Q6^2 3KP[.#\[$IX42UW(FK2YE M58BWUK2U>-3 TU__=CH>#Y]=F&4MJSOZ-'J6Q<E,;J0F9".UAS7IJI+$4)8Y3%EY>R:F< M(ZT%)A&QA7:-U=.VP0=.SE1S1\]=:V_TC9SJ4L.3VIJBS1M'7QE@G 4\*V4# M),2O %\%LA2V*50%GW(%V-=D8J:M:^!]5YL*Z< YEC@O8"A09+\J0&7:Y;1U M(&KG/$.4@PE!5O.%&!VOT5Z#)&'1E6X6L"]<]_/@&@3^F[K5NPQ+33=#X"\W)=([5@/A>@<0".A63W @N?2Z?IJX^X M;-70-YLL]"]8AE1 YCFK.@HYCP-!?#-=@;PTZ+.#]TFW:(JF,P^QD#>@14H! M>ZT"]K&)X)RV0&&3OM#GMB*-KSM"YPK$(8-B+K&IR+G)9*V!9GP8=6S=LRV#,3>*URT-M&^S=>WZ)>S(GPI784(#SR MN'']^B+@!LXD+0(:D (6KY<)%V"#QN(F6&5@'V5+VJG"!M?9DY'*KA8&-VE6 ME4(SGSI=:$#&H'ILW!#K0I&'PG"B,J MTT2*@*>!$%UQ%!;T8&9, Z^J^_,2G(#IM+!3V19ZFP8P<+15>"?PZ6'5V: K M2!5&2)KW#>8*;[+.$%O]&@_/G0H$MR^+/R 0HN\R$(#.00G!%53(C-+K#"B( M94F+BAQ<)BJ5 QHB3"(W9E+;3AQE/>13LQDX(N2V.!KN X_V1SL( M/XF$G^Q>6P$O"N3Z%$XN+^31'' #X>Q)HP%^; ! MI6, 0EO2-$ TB #%.!L?#;/A< BZ#(9&0 CS+D%-'+%3-C [@'].8>0OX\G@ M:"@@Z.#W>S%7U.]*H:F97*D"?+TU2R(!73_.X1=:@;:*7PZ/LR>GIT+.0/4 MG$"%5X#^\#>$ !Z:D=8\HC_ PDQYYZ!N(6%U3/0OX^QD="0R_)NW#4]P7RO MXEIJ"!6,^(?$%9SX52[K9QW84&[$H5!TR?5V"^M<^]+0X? P MAIK23B4(8__JMH1@+ IB.$:[@&1&42:2E\91%@WK M%/-6G5@Z'.Q1ALR?-A)C;]ALM3_5%4TKBQOM#,#Y#00<&&YM7D? KN> XXK2 M))DOV@9UPV+([$.%RPXN,J)HLP:+'+YKY%>%2T/&*.>$&+0%".X*Y#R&!)IS M,G QIB#%8V'@A"2/2JV0**MN&..Z# (D@QZJH$A44\(([Q"^ >"MW"[B@$T% MI-%W+.["XR*"G;+,O0WK"'Q0PA#C5/)T13$;J?P*:"13H!4 )F] ]3K-'J#] M4^Q#E456/GDC85)P I!LWBB?.?2VX]4K&# 9KO1(2\:[A(VP9F-:\0?FQ3#Q M-W .X9Q=Z1+L5L,_@#<_9;SDP*T"02KV; ^'P0GU-(T-*,*,9@^4$I&:Z_9- M O\J^#L/ $6<[>TJQ&YH!$C?SCS_270A3W8B_V9K>*C%VPXD,:<8:LB-T)H> M3QT%-\DRD,!;"2GUG3'8Q595:&7 /Q3/+[ADF>%KAC3_%EI9!//(:/D,(,U%8P8B%U! M?=+*,]H9U+\UIECIDH_$KLA5@ZK(B@N"#%L;(_R?G[87V6/!S8EY.DQW [S8 M"X6,I*(H<(X**A",8IE4 VL@ZH/ $Q3C)H39,+6VE WQB1A&K/!\:4"S9I@B M,^?U3& VQWJ5:YNW2PQH.8PN,(-0/FYF,I;8M85E"UX C[W2K4"BB7&D"V$% M'\8EQ/!>N3!QE3>&_1WD;EAC4Z@^+/G(C?YF,@CU)39S4&J #1H&C(,;7>+I M'16Z/+<@7%8D MU@EPIMO]1?%47KD#E@$8;VUU=ALK$^./UN_V7:UR3 B]L ?BXNDZ![L4HF/T0TSM']=%_9)8 =^''+/N5&5-S7PL2_U ]**N M;@R5&_TIE=6NJS0^('O0J1YQ]":RD1G4ISG,N3:'NN53(9PH14L":SI[9#K] M:#I% LY@792WK8IPGL_T>^2%?9=8)(G4;U@[,BD6_.\C/E46PGOTF1+1=)[[ M.]XZ^AX+P_93DOMS+D^ M.$506'=8N+9NW!K!29I,"C/%,_ND-NV3,W*$$GLL.EL-S[!2C8")AZ!IRMT# MVH$XASR1*6$L"V>!"M-Y4BMV@&EEP&WLBJ!>2QSM]Y^^^M/@["WE; M/]CWS[*F")8<92ADPG:6V*YY=_^@O5[<.:I6A=:\ODI%9>PF X?#"E-!]):C M)FKG>P?Q,;4H<]T*8(EAV2LD:K[S'8'VADI9H,Y3Q<[A8@JWQ'0!;4!S'3:#I?$.32J:P8%PW +7==H1A:/LD"&WMVG!-+Q:1YZ MBNC$"YGEC[$45VQJUO\PA'OPV&D6JE9\?NB-%>F)S6U!K.#KB?-(%3E$4Z4- M5CPSMI(D19<Y#ZI>U#?;6C*-IQ$!THHMZUY-0R MT6K2O;!9%PKS5$U'Y(/=@GI1UU1@B+'4X\'R82V]Z]2#HC *++)0:,S"@8K) M-17W:0;>:Y]V+/ [!,XN.PA;\+5/C)%\-D#]J%AB\K4\R'%,S37^C1J8'-EU MVH<-(732UR<$PP$VLE1[#$Y(95'P0:@%2PUR;B#O8.<#J.Y[?W+L;D&BJ8WC M89$/Q!MC-^VZ'^)L@!1V NQS:M#N)82T)G$IB.=4]L9*8.'3+XS,^#U-Q\(I MZY#8 HN"#6@GY;#2<08$. M$=-9!ERIW*9!:(BL^('__:@CN&0D:[\Q^^1-4\%D/C)G2S/H8<-^"MY,YKLP M8U-[*@+W(_S/2.<3*CEJ:9ICEX">Q!Z;6[$.[8EDPHM M0;N!^!+\3*@^]X(.VC.+C1LHM_D+GV)B2([Q74:-5J$'()S-8 YC5<)#"@4] M.K=59^C;O1)!](X]TXQ3A0&=@QR)#JD&XHS30FH22,X];1=6]$U7ELX$9\T[ M[VAF1VU5T]K*^5L)+E=E*2N%/49Y*?72]QUU4$T]T.C_@CP\#1Y3^Y*)> "V M#R$9A2TV&)'WHST*>,T^*O)1A/.G6\">;@OWA_JHIDI>HO'>"R;N(.XB820P M./;@^7;N'@JB*0!(@RBPB2=DG'BZDC^@A_.MV)S*KN!-(W M!++PPUE^GY;-T\?S_/7I[E,;]'K[98;^%8;D_H]O-:RM6N#%P9N8U#Q"@WA, MO3LAH/.=+8[R) 8NZM[>1#VW-X: C_ROC!J( 4 ,.WT_4!(7DUAEW.>L+6?> M$_ND>(D-1TU7' W/:?)[T2J':4D_96QD50"RYHYZ*UV_(8P: UD I%C!L_I> MK1"LD&J%,)E1)2UF2&K08X_SP"" ?]F$PVP>E\5^%^>#7Y^M$;J3=2TQ6?U7 M#' 0QO1,W8]4/ZU-Q+;%ZH2W?2A\\Q$XSUQ ([7A]AU1%WTBK:>=/Y[=&U7 M_MA=4!SMO%#X\J-7@R\4"3<;NUB_3J/B2&S?7(6)HF=C M7"G4C(!,5[[XQN4^O)4+TZ)A 4!VHWVS"'HS;- $]^86G!*F/HH3!P0UU(FU ML*-?A%C?"WL-.K5/%L7Z2[AH5)\7=,5!X MYWKK05%X@PZ,Z$BZ^^M3'J?1X?#_O='Q_WOX?T+ M'UOZB,W'')&H[ASMT>G1X^3#2?)A=#AZ+#[V8LJ\/RT[YS!@='P4_TY.ZL9' MI]TK1V-DY3=O_7!\LK;UPX>^WP6&W?7GT0,WEQ6>JB060Y<6KO'2PD93)8R7^>Z:Q-<*UI"UL2%**I!($LQ7NK9.96I-I4QJY;: M)9+K&O[^1MM0MR_.EIR'!F?KNUGPZ.J5+EMN5=Q!I"SSEN,=((1KH=2IO4[. MAM5#!E/@.N1*N<$4XW&#U_TTY4D)\5E: .OR_L92QGZWSS=2.,\<_"^CRF;, M^#$T^7!/ZIU%'&:'AT?)Y^/L=)1^?G24G8R'Z8C1)#L^>?+-V_GR#:+DDFQQUR#8YS$Y/3[.3X6336Z^C-D0%.,4V_I==CW_-DX7WBP37A\#%X_'PQ_G]7T% MBU;^,*?/>Z+_10P'HTGOX[BGC_!UK[5DB!?&7JUMBF89?^\LX>,;CRR[FSPR M,IBJ7V&_J3_3PM&,5"N\8 M3>U'M?8-B9+0G4_RTF+,8*WO)8Y+.TPW 6M#0$1')KL8,=K=,=+]GL%H]R\- M_$X-*VG+]C8N-;O7GIA1G>%,']K/]C3P<'7,EY_!E> O"_@6\,/Q8_S-#J>Z!F7Q#M(:G&WD>X6VK_W!-.*_ M0*:!RDM_V?8!.@"@Q9O8M'"92'E?7'#-',.)CLS)&&PA:4^G7WKHO0@N=.., M='LK]E;"ZD^VTO5D'W\'Q<&P]NPM>.6$+*F1O8%^A MN1$8+^YLO)(4.U#B 4]7Y*)6'YG$"YC06>W;:KJ21](#8OP-,[HDQ%<]^ID5 MG3R%*V ;,^^#Y">2\-X3_1 4W1BI&OZUI/@T_MC4&?_$4O(/\'U\K\! M4$L#!!0 ( #>$"U6N,+W;?@0 )H1 9 >&PO=V]R:W-H965T%9N)A=I6 M3I*3]M\?):>.TV99V@)7W+W8HD12)$52I+I++FYE"J#(79X5LF>E2LV/6RT9 MIY!3><3G4.#*E(N<*@3%K"7G FABB/*LY3E.U,HI*ZQ^U\Q=BWZ7ERIC!5P+ M(LL\I^+^##*^[%FN]3#QGZ)I MU5MJPN;X@?NET1UUF5 ) Y[]8HE*>U;'(@E,:9FI[WSY!5;ZA)I?S#-IOF2Y MPG4L$I=2\7Q%C!+DK*C^]&YEAWT(O!6!9^2N-C)2GE-%^UW!ET1H;.2F!T95 M0XW"L4(?RE@)7&5(I_KCX>?1\'(X.!W=D-/!X-N/TJ%22BR*!9).^A5+6HGH/HIYY.QG^ M519'Q'=LXCF>MX.?7ZON&W[^RU3?IG'%,-C.4,?/L9S3&'H6!H@$L0"K_^&= M&SDG.\0-:G=S[XRIL")^2*66"+&A6 DD9""KB])Y@@!(J)2A):)&0C-$) MRYAB($D.5)8"$D)5DU8'!0967 K!BIEV;B:W:;U;K@_O.I[CGY#_ZQ_=#FJW MJV?/(89\ H+XKEEQG] -J!#WVJX/$Y?:\C^-Y9^#0W->%JH&KV !&7$?P=XC MV'\IV:GQH.-76VU8*, 84$10!40NZ9PO[ZCF0>ULD\W#>9QRDM9IBD M64%4"EBFQ*+$5+W$U$ +D[YU.A>0H3T2$G.IMB;IW?N]]:G>I )@HR!8Y]4' MG#&[(WF% =LQ3 8VR78].H,9*PJ=0Q]9[I[ '9:N$AH'Z-J>[V_ ;N!LKH?1 MYCKB#_""!,RE-WS0"SMKE-#3IMQ;]IZ$HQ=/T"6Q-6Q#P'HVX0/0KOM.4T*U[>C]J>]U?FUQ]E] M-!5E7-/XH>U[CNV[:[?SVG;0\6T_7 >A']B=3L=N._XVK(OI%-LY[3T)RTK= MT!&I"]A_Z?(;*Q[??M1=(&J.P9;()RA^U+%])]K*XG=%QZ[Y_2QMK(%(#5M' M:,7(HU>O%E^IP/M'D@RF2.H M%M5+0 4H/C?=]X0K[.7-, 6:@- (N#[E6-RL +U!_1S3_P=02P,$% @ M-X0+55^..YRI! P1( !D !X;"]W;W)K&UL MU5AM;]LV$/XKA%L4+:!%[Y:OF!*CH>"KXF0L]&-'U3AEI:HW,L MTUFY5@+?,K13X[/)G[?3Z^G-],OG:_+VALX2D.^&ID)H/<&,-C#G%8QS *9/ M/O%,+27Y-8LA?FQOHDNU7\[6KW.G%?"/(CLAKF40QW*<%CRWCM,M\;P#>%M]BU->[917HKL=R&_RS7L!W_S: M-[^5L&NL_[A(@/ Y45S1A$0<:S$&074Y-;G;#OCF5>A8[GMR[#JA =N=GWT2 9MK7MQ-?$'AANWV_A MIE]STV_GIFIA#]3DA8B6V!M(+E@$C[T@-(MQ'!*&Y:NMYI0)LJ)) 82FO,B4 MQ/86\47&_L&XL-$2*B7@:!VK1D@8G;&$*092OR_2IV56Y:#=\:XY.$CFEL2C M"&=15(<&;*7[RDXF',/U C+-5I I+G1(3^T=P[^'Z1C]T'UC+Z?TCRNHU#=NQR >8@] PBMX] MVA@-+'JA1A4%Q$=FVE:?7/!L\8L"D:*PS?:9\;$6JW@:=F-#_*X=DL^@#D;? MH22#NB2#SNVJ7H<]S6%3Q;3C=JV88]>/@DM)SE9830L@MQ+F14(NV!S(I!1Y MW,'8(LI*DTN6RQV.D"+<9GL[P2T3:#;!7A\=$.G2]3B+M8B<,O#9Z=CYM[?^K3!_Q_"?H=,7C M#^JTBZW':=5I; P#3/Y1H79\OYM0VU97G;9M([#L#D(=E@VT1:?[GMU1IST4 M8#OHHM-6^"R=]@9!)YVV#3\(-TPFM5JW8H?A,T3;-SS//2+:QTO4>2A1YX5D M^PCP?T"W7:R,Y^JV:W17[K !?8I_O^2 ME#N_.F"H1^OSF;/J5.)A>G6X\XF*!4CTHGI=G%#.N MD-3R=@D8N= 3\/V<<[5]T O4IU;C?P%02P,$% @ -X0+50$N6=%8 P MB@D !D !X;"]W;W)K&ULQ59=;]LZ#/TK@C<, M&R#$MOP1ITL"K%VVY0)KBZ;=?59LQC9F2YFD+.V_'V4GM@.TN?>AP%XBD>8Y M.J2H2-.]5#]U 6#(8UT)/7,*8[87KJO3 FJN1W(+ K]LI*JY05/EKMXJX%D# MJBN7>5[LUKP4SGS:^&[5?"IWIBH%W"JB=W7-U=,E5'(_5/:RRS MF>-905!!:BP#Q^$W7$%562*4\>O Z71+6N!P?F3_TN2.N:RYABM9_5MFII@Y MB4,RV/!=9>[D_AL<\HDL7RHKW?R2?1L;APY)=]K(^@!&!74IVI$_'NHP "3> M"P!V +!&=[M0H_(S-WP^57)/E(U&-CMI4FW0**X4=E-61N'7$G%F?K?XL;A^ M6)"[Q=7-U^OE_?+FFKR_Y^L*](>I:W %&^>F![;+EHV]P!:3[U*80I.%R" [ MQ;NHK)/'CO(NV5G"?W9B1 */$N8Q=H8OZ-(-&K[@_Z?[7)8M2?@\B3TG%WK+ M4Y@Y>! TJ-_@S-^]\6/OXQF)82QAM!H1;;B!ID:53#E6*P>1EEC!]_Q#AWY+XIB& M(1LZ0G1,!@Z?A32(HQ-/0!,6DRM9UZ#2$MF/'WV?!FS*T.BWO0G M- R"5NT&,E!#E<<@C F3'N+1,(E[%#SYA6@22IWPK179>?M'AJ?VONU#V]?*=^YRDNA204;A'JC<>00 MU=[\K6'DMKEMU]+@W=U,"WPL@;(!^'TCI3D:=H'N^37_ U!+ P04 " W MA M5USZ$!Y8" "!@ &0 'AL+W=O>XN]G/#6LA752!J>"L95R.GT+JZ\#R5%5@2=28JY.9D(61)M#'E MTE.51)(WH))YH>\/O))0[J3#QO.FP(DN/4IC>1U+3DODB@H.$A+7&)!\YOBT(&6;:,A"SK/$:&;-$IHP?&TZG2VF!N_LM^UW3N^EE3A1>"_9" M8+=1L;FXS92FE1;L#&+BEO5_*V^0\[ M@,3_ !!N &%3=YNHJ?*&:)(.I:A!VFC#9C=-JPW:%$>YO929EN:4&IQ.)P_/ MMP]/WZ:3VQE\>B)SANKST-.&V9Y[V89EW+*$'[ ,X%YP72BXY3GF?^(]4U%7 M5K@M:QP>)/RZXF<0^2Z$?A@>X(NZ-J.&+_IWF_NZ:\&]_6"KBPM5D0Q'CGGX M"N4:G?3D*!CXEP=*ZW6E]0ZQI[-6#B 60/D:N1:2H@*EB<8\+UH2M<%]7A_.>'"6A'UW"_UK-E6)WI7"#&99STU<4-)X M[BBGYAWGL!0B5QWLV&)ZY^&.(TSZ_=Q MLN\E>#NZ+%$NF^FCS#VNN&XEVGF[ 7?5ZOH]O)V.]T0N*5? <&&@_EG<=T"V M$Z9\(83>&C9!-_;3WU!+ P04 " WA M5 ME_82,?<$ "H$ &0 'AL+W=O'JK196L"5)J;,PL<>O],4J,_4O63=K@V! MXM)8E6^$$4&>%DTKOV_\T!$(G3T"?"/ :]S-1C7*4VGEY%"K-='5:M16=6I3 M:VD$EQ;5H=Q8C5]3E+.3=Q\_GGX^O[@@T\M3\G'V_NR:G%_.II?OSH\OSLCT MYN9L=D.&,WF;@1D=CBUN60F.XXWZXT8]WZ->D ^JL$M#SHH$DH?R8X3:XN5; MO,>\5^&O9?&:N XEW.&\1Y_;VN_6^MQ_8/\NLQNMWFZM%9,.S$K&<#1 JAC0 MWV P>?6"">=-#V:OQ>SU:9_<- 0B:D[BI2P68$A:D(52R3K-LEUH^_6]>A%R MQWU#?E9[I552QM:0T]18G=Z6-1]GRLJ,',M,%C%0<@HQY+>@BLEH7)9!-5DM^1I!BET+RMV- 3[FBO\N9K:_<'J>/EUFC>M2FB8>3U M&!UPZC-GA]$Y2%-JJ$"1%>A4)1V8CXP<>IR/GNR29O7)G[NH45.,\QHE[='@'&%&AC2M?!/O48ZSN!D#H\Z&&TWS+:?RJCT\(BI5., MMT0: ];LXG.OMGW1Y^>2?%^[V[G/;3_7V1629PM.X[C,2[Q!3Y"=?@.-#Y%' M\^^T,H^OG,R5MND?^&< MU-D?(Z*&A@%FF:[N<;PDH4\C)\3.T/=I$$8C[**G&8L(7ML9Q,M"96IQUXHP M%/ %&3)&&?=&Q*.ARTE(9EHF4,@<[K4+ZD6<#%T:N!BM. W\B'CD4A6_Q"I? M 5HB%QK@(1NC("!#_!FUS/,>6?62,">BKNM6N -&!7=KW '&6N?1ZG-\-OS8 MWP?CQB-4'#('!J%X8A$D4."/2P*W(I%7"#=L'&>P")& M'1=Y5#?]3(IU-J_^U-I9#'U".L00';KLLH!&.<.K^='U\4D35E-].N7A-635U__; EXC J[D$ M+,3G%K=IC\O#XX]VW)4FP.XZ@'&G>D2Z+.H:V9!8E85M"LEVMBW#ITWU>;^\ MJ>'Q,;M("T,RF*.H\SK AXINZN)F8-6JKD5OE45NUMTEX)W3U0+\/E?*;@?5 M!NV?$Y,_ 5!+ P04 " WA M5F@H#!P$$ !["P &0 'AL+W=O5=RO12M MKAB'*TE46]=4/FR@$KN5$SB/C&M6E-HPO/6RH07<@/[27$FDO $E8S5PQ00G M$O*5D MD48T\\>&:K71.<9-46ZTQ%.&>GI]?K&Y)>]OZ;8"=;3T-$*: R_MU3>=>OB" M>D(^"ZY+12YX!MF^OH>N#/Z$C_YLPDG WUI^3&:^2T(_#"?P9D-\,XLWFXCO M4%B=5G18R]R$$]70%%8.MKH">0?.^MV;(/%/)WR*!I^B*?3U#=ZLK*V B)RD MHFXH?_A982MM]2%/I['>O5F$_NR4_.@7\PY#WLDYI%!O09)98#D!N2F%U+]H MD+5U].09P"57K:0\!8(9JUE;DYQQI!DO!IFW9(90(\H-YA'YV$H)7),&+9B+ MBEFQ=BI!^2 <^*[O^R^13Y!XL&\CZ(S\+G@QY?XUW(GJ#B,>'P3AZ3/Z]KEK MT+&?3&+WWD:1Z\_]/4Z']H73VB3H'\AL""1C*A4MYHWR MGL.4:FT%4J&T&C#>!^XB3(Z>Z-#UH\41N16:5AC*.#$NX?@0C*V';AA%>YS$ MC8-DXAK$PS6(IZ]!]PZ8>M.BD%!0;9J'8<\TZ%A#'W#X8QQXON_DH5LR;>JU MM^ :S#N68=G0J+T);TEL.PV)V7^[#WG1F!>$<\.+#_">:A\$"S?YX)-;; Z@ MN1ZU2(!B75$.9&%4@=CVR$0%DJ$"R:L'T25'5T!I(DT9U(XVZE">IP%_= I= MY#G89YIDQHL_A!D(F 5L?=/IG]@]=K]U\ 8:W8\HOQ]1NI2B+4H<9=4#"6=N MEW+>4Q^FLC;?,C;_-5YRRF3Y(Y6;9 M=T,K.R:ZK8^F=HRH[SX!W3Q+^VE-E8*]M@S=((A']..0Z]2>B4?N?$\\D,6'0_7T1@M1#;*P:Y\B-M!N-QJXPV9YUBU4 M3^+=6OJ9RH)Q12K(4=4_GN.DD=VJUQ%:-':]V@J-RYK]6^)V#-((X'DNA'XD MC(%AWU[_"U!+ P04 " WA M5GF2^'H<" # !0 &0 'AL+W=OW]L[[LFV5,;AIZ,:;V$%ZD=])[3E.Y:<5, DX0P)*,;> M5?]B$IMX&_"3P$Z^V2-3R8;S!V/,\[$7&$% (5.& >OE":9 J2'2,AX[3L^E M-,"W^SW[C:U=U[+!$J:<_B*Y*L?>N8=R*'!#U3W??8.NGH'ARSB5]HMV76S@ MH:R1BE<=6"NH"&M7_-S=P[\ P@X06MUM(JOR&BNUR/5]^G2VG\]D*?5SC#07Y:>0K MG%>Z"0\2OB]86P$M/3_I)<'E$;.S$QL?8 MTU7;,H@7J&A4(\#\"J1J*D1!_Y*HQB^Z4934;?+8$ $Y:O2U"\0X^YQAE@$U M[XAT*PNL"-NV,'FHS.-"3D_.PR"Z1'];[\$,!"-!2S8OYDX^H+ 7#WI5 MTP]UHH,_E/^FJRH06SL[),IXPU3;8,[KQM-5VY6OX>UL6V"Q)4QJ%86&!F?# M@8=$.R]:0_':]NB&*]WQ=EOJ$0O"!.CS@G.U-TP"-[33WU!+ P04 " W MA M5UJIIN^^R DZ "SFRGZ?[]SB9A3$FS M2ONP?@GG\]USS\4//@8K(9_5G',-KU59JZ$SUWIQZGDJF_.*J1.QX#7N3(6L MF,:EG'EJ(3G+;5)5>I20OE>QHG9& ^M[D*.!6.JRJ/F#!+6L*B9_7O!2K(:. M[VP2U*7E2\5H6H0?+IT#GW3R]"$V\#OA5\ MI3HVF$XF0CR;Q6T^=(@AQ$N>:8/ \/'"+WE9&B"D\6.-Z;0E36+7WJ!_LKUC M+Q.F^*4HOQ>YG@^=Q(&<3]FRU(]B]9FO^XD,7B9*97]AU<32T(%LJ;2HULG( MH"KJYLE>U_]#)R$A;R30=0*UO)M"EN45TVPTD&(%TD0CFC%LJS8;R16U.92Q MEKA;8)X>C:]O[J[OG^#J_.D%W0O8!?EO4)!,0%2BC=@Q>T?086+WA'G[O::[+#W=GF MS3A5"Y;QH8/25UR^<&=T=.#WR=D>;F'++=R'/AHW+P2(*2@^0\5KR/$L=]'< M#W1TD% 2G,'_>HZ+5Z@:'7"C \!3Y.TI_C/\(\]$G178]>ROL0]2Y,M,*[@J ME);%9&GO@%O-*P7'?@^>A&8EW..MIQA*'@[!3R*7T@"M,'83&J)Q[!,W)&D/ M34JIVP\2N!1*FX.:"9$K4*+,MTK[/G5)/][R![$;Q82D[BR '9C,UFH<7"CJJ)T#CXK#G'+PTN30#N3X70FX4IT'Z[C'X! M4$L#!!0 ( #>$"U7LS$EY=P4 #LH 9 >&PO=V]R:W-H965TB6 =V= M -G2]H!>&=#;#3@_$- O _H[ ;9](, I YR\[XO.RGO:Q0*/AHQN$%-W2YHZ MR.7*HV4'1ZD:60O!Y-5(QHG18OI]-O6GDZO9#;J:3.:WLYOI[#NZGO\]G4R] M!?J*KL(P4H, QVB:%D-9#8DO+A$XBOGOZ!,R$%]A1CB*4G2;1H*?R$)Y?+.B M:X[3D \-(=NJ:C2"LEUNT2[[0+LL](.F8L61EX8D;(GW]/&.)MZ0?51UE/W2 M46-;"_QSG9XBJW>";-.VT>W"15\^-9Z]^&MIZ>0-8//\'6#W-7!\BKI6#K;: M>O -[>J:9;LB09(6AO]VAOGR;!HQNM6H[>;<[@'N#(LU(X@NT3PC+!^0',F! MAL:81UR57\LN(ZG(+[6T>USP>^U\]3J_X!D.R&4G4R#V2#JCS[]9COFM36!( MF L)\R!A/A"LH7BO4KRGHX]FZ^2.,*5L@M/U4GZ0UBQ*[U$6XU1P]-^A 3K6 M8H\5&A+F0L*\ M;/82J;>!Q9SM!XW)8/J+Z&?/U*OKYVPBX$#1[0(HLCT292 M'U(D2)@+"?,@83X0K"&G4\GI:&=C(2=7;FX6A)2E)*G3"[R6Q<'8VU-QVI?P)RM-Z9MFCOO M3!>R1@\2YK_2_(96EEDOG4W]5Y $- TQ>T;SY9*H=+1-!SWD6"% :2XHS0.E M^5"TIKA;OHCUD3=K&0VE*B3-!:5YH#0?BM94U:Y5M=^XC'QQK#A?DU"N'P^Z M+&,]\FBI[;WDT[;[YO[;%+1:#Y3F0]&:*M;NCZ6U&D93)1K*6!00J5QME;6J M!^KTE+3!MGK=T_ZN=* >#BC-AZ(UI:MM'.L5'X<(*1P-" DY6C*:(+$BB..8 MU).R5490'Z>D;2<$/>=\,-C5$=2B :7Y4+2FCK6?8VG]!=!,55_5T=KV]Y.] M,VMOBH(:.Z T'XK6E+;V=BR]N3-_).SK51Q3D9!4H'EVR$/7: T'XK65+4V@BRM,?&^S':PEXMVS?U4 M=**O^F@10;T?4)H/16N*6-L_EM[_.2JQ/7]#*CK15WBT=* 6#RC-AZ(U=P?4 M9I"M-X/>F]B6V.UTQ7'LLQT9]94?*R,HS0.E^5"TIHRU[6-K#0C0O+:LJK'* ML+N[RH):/Z T#Y3F0]$*98VM/4\)8??Y[C2.3E0%U7[!T?]02P,$% @ -X0+58?208 ' P ^PL !D !X M;"]W;W)K&ULK99K;YLP%(;_BL6JJ976;T MD[D)<_HT%@&)8,(0C\,0LZ=+".ANH)G:\\24K-9"3>A.?X-7, -QOYDP.=)S MEP4)(>*$1HC!] MO1_?>>-K-+F]\5SOVPR=HR'G(#C"T0(%!,])0 0!CD+ /&:P0%B@)28,;7$0 M U(G(X_7CQDCT4IEF'!T.@*!2<#/I-TT7SM'7B2 1=HB@6@V0YOY.3];(1. M3\[0"2(1NEO3F,M'\[XN)*V*6?%C4,:1Z*,I]) ?<\]OL$^##3YP7)@ M6]"9J;;X)V8K$G$4P%*JC(NV/'"6 M=IKI0-!-TJS-J9"M7W*[EMTY,+5!KB\I%<\#U?_E_;[S#U!+ P04 " W MA M5[QC*)GH" #R!0 &0 'AL+W=O^'%4DC7.43^4,VEV?LN2T@*YHH*#Q&SHC3J#I&?C7< /BENUMP;K9"G$ MH]U,TJ$76$'(<*4M S&O#2;(F"4R,GXUG%Z;T@+WUSOV:^?=>%D2A8E@/VFJ M\Z'WV8,4,U(Q?2^V7['Q\]'RK013[@G;)C;P8%4I+8H&;!04E-=O\M3480]@ M> X#P@80O@;TW@!T&T#7&:V5.5N71),XDF(+TD8;-KMPM7%HXX9R^Q7G6II; M:G ZGD]NII/K23*:+F"4)'@.SN^^39'(UAP^PD(2K#*4"D0%1"K59 M26"4+"FCFJ*"TTO4A#)U9L(?YI=P>G(&)T Y+')1*<)3%?G:B+4I_54C;%P+ M"]\0UH=;P76NX(JGF+[$^\9DZS3<.1V'1PF_5?P"NL$YA$$8'M"3_#V\_?=?K!ET-N_Q/9"^^] MUGOO&'O\_$LM46\1.62$2M@05B$42%0ET4P*#0PWR-0YD$)47!^J29VH[Q+9 MB;6)@\C?[!L]%E&K]_?:IT"Y=E-%P MAK=$KBE7QE!F*(.+3V8D2Z%-R[ME;H8R2AM@[C,A]&YC$[1C M/OX#4$L#!!0 ( #>$"U76$6(>20, /$* 9 >&PO=V]R:W-H965T M5;6U0<<-: RL+V'">R2TRH%8^;LQ6/QZR6!:&P MXDC498GYTPP*MI]8KO5\\(UL++.)Y>B H(!4:@:L_G:00%%H(A7&GQVG MU;O4P,/U,_O'1KO2\H %)*SX@V0RGUC7%LI@@^M"?F/[7Z'3$VJ^E!6B^47[ MSM:Q4%H+R@@Z0'"IA[ # M--+M5GN3N#F6.!YSMD=<6RLVO6BRWZ!5O@C5?;*67'TE"B?C]?+3[?+C,IG> MWJ%IDGR]O[U;WGY"JZ^?E\ERL48?T#1->0T9VF/.,94$!,(T4SU28*F.4R:D M0&_G(#$IQ#L%N%_/T=LW[] ;1"BZRUDME+T8VU*%JYW::1?:K W->R$T'WUA M5.8"+6@&F0$_/X^/SN!ME:8^5]YSKF;>6<+?:GJ%?.<]\AS/,\237 YW37+^ MG_?%?_9^E R_;QR_X?-?X$MR3+>J%U2-90XH866%Z=-/JCDNZ!=3,[3N K,[ M?5W>B JG,+'4?2B [\"*?_S!C9Q?3)5X3;+Y:Y(M7HGLJ&9!7[/@''L\@RVA ME-#ML$A/"![5RR/ 5)B6,VHX];.SBUW/]\?V[C#A!B,W<(Z-YB:F,#HV6IB8 M#MP="0][X>%9X4G-.5")*N"$J1XL,"F-3=C2A ?.O9\'2D]-/ER' Z$FF]% MI\'RSSJC7&9W5N>)L1YHG7$T0ZODX4BUP 4;1T4DD;C10E)S:7 \2,S\U M\<+K@6B#J] S:Q[UFD=G-:O;_=]V].BTQ0)O4)_$8.0&P4#S)4R+?V!J5=L' M;W@)?-L,3T)=ES65[:W/7W_3M,/@%:19IFKF12X-E#?-XS)YXUVT$^Y\5]0 M2P,$% @ -X0+5&ULK5EM\PRSL;'E?'=KFBS= MPCQAUV0'L?AE36B>SH9D8)G",-[ M"EB1YPG]=PHSLA\;MO$V\( V6RX'S,EHEVS@$O*GW3T53V:#LD(YQ P1#"A< MCXT[^S:V ^E06OR-X)X=W0.9RC,A/^7#?#4V+/E&,(,IEQ")N+S & MXY\:U&AB2L?C^S?TSV7R(IGGA,$9R7Z@%=^.C= *[A.BHP_D/U76"?D2[R4 M9*S\"_:UK66 M&"(,J:O-9$'#D('+6#4SLX70?OC(-;.[B71O!J M!^_2"'[M4*9N5KF7Q$4)3R8C2O: 2FN!)F]*]DMOP1?"4BA+3L6O2/CQR7+^ M93'_/)_=+1[!W6SV_6GQ.%]\ ???_YK/YO$2#,"/DFNX LD+I$([@&T3"AD0 MJF,\P2N$-T!< !:J1C@E.017&6'L(]A!6AF#JPCR!&5B; ">EA&X^O 1? #F M&Q3"X DCSCZ)07'_N"4%$Y!L9'*1HGQ1,ZW3F5;I.&?2<<$W@OF6@1BOX$KA M'_7[!SW^IJ"VX==YXW?J] +^6>!KX%J?@&,YCN)]9I>[VZIT_E_T^)>CM\AP M&[&Y)9Y[!F]1Y$)"G% @.IS\OE%:2F>%LD(J#"84"SFQ@W)N51*H@GCJ(+*S MWK)=DL*Q(5HG@_0%&I/??[,#ZP\5_SK!(IU@L2:P5J6\IE)>'_IDT?V8576H M(((20DY(+Q//\_R1^7+,[ZE1$-H=H^C4:. /':MM%9]:V6XPO&FL6IGZ3:9^ MKR8O:&]*$?HZ1:@3+-()%FL":Y4F:$H3](KPDIEG4+41584JQV)GAHZ0R]T7;\CP$B!Z(5A.+3V6ZY"3].9"K5:'4?4+5ZY;P M5#M!Z%I!1XN]H=Y+L4ZP6!-8B^*;AN(;#9V@7D:HV+]1]((@#(/N'#,[-3S3 M"Q2(ZEYP 6*+$]LZ+-VM_N74^16WLA?4<)J:@5:T2"M:K NM79BC/97=*]?I MN2FI]@N/Q&!=VQW%S)163G?-I+ :"+!.0XF58/X9Z3F'#)W>#*/SGUKMV:HLCK-\=1*F:,*[%R.A\V*W;O"GMQAC@;-/(LPXU3L7S!G +ZF6:'>7T[[ M0=_]D;DGW:/;B+0&C'L#MHD\["7L_LW$ Q34H53V[W*N5-+6"_%NVG2B15K1 M8EUH[6("3/QC% @ S@@ !D M !X;"]W;W)K&ULS99M3]LP$,>_BI6A":25I"E] M8FFD4IXZC5)1NKUVDTMKX=B9[;3P[7=.0^A$6Z$))-XDMG/WS^\N=W:"E50/ M>@%@R&/*A>XY"V.R4]?5T0)2JH]E!@*?)%*EU.!4S5V=*:!QX91RU_>\EIM2 M)IPP*-;&*@QD;C@3,%9$YVE*U=,9<+GJ.77G>>&.S1?&+KAAD-$Y3,!,L['" MF5NIQ"P%H9D41$'2<_KUT[.NM2\,?C%8Z8TQL9',I'RPDV'<2_66P6/:?CD!@2FG-S)U?7 M4,;3M'J1Y+JXDE5IZSDDRK61:>F,!"D3ZSM]+/.PX>#[.QS\TL$ON-C8:7PT%_=$_Z@\'M='0_ M'%V1\>W/X6!X,2$UTH]E9B F_2B2N3!,S,E828'C"/#K&')X#H8RKH^L\8O1 MQ% 14Q5K,LUB:H#X7KU5\WQR0)@@]PN9:S30@6LP# OC1B7RV1K9WX'\@XIC MXM6_H:#OD^GDG!P>'/TKXV(6JE3X52K\0O=DA^X-$RS-TVU >QUMWYSJC$;0 M<[ Q-*@E..'7+_66]WT/5J/":A3JC1U8=Q#9+.]*_]8$-CZ ]Z3B/=F;Q@MM M&'8+5HRR'5&322W70*C6N,7DF>U$6U&V)65"!/8M?0E-ET5#<+LA5(B<%N8:I%6 V-UG&=;]AN<%[G(+?[/B;[Z1GP.V.^&,SAAGYNF=X=<4S;?! MMRKXUOX:IH^[:GBOXW_61+O":K][#;<_@+=3\78^2PUW7I=!P]]5!MV*O_LI M:KC[N@&WP+L;QY,]Z6^HFC.AD2U!/^^XC=&K]>FYGAB9%2?63!H\_XKA G\X M0%D#?)Y(:9XG]A"L?F'"OU!+ P04 " WA M5]8 M!DB%;AK3NG6EW5Z[R4&L)G9J.]!]^]E.&D(;LE&Q-V [N?_=SSX[Y^&:\0<1 M 4CTE,14C*Q(RG1@VR*((,'BG*5 U9,%XPF6JLN7MD@YX- 8);'M.8YO)YA0 M:SPT8]=\/&29C F%:XY$EB28_YY S-8CR[6>!V[(,I)ZP!X/4[R$.&G1V M&+0* S-S=AZ9P;K$$H^'G*T1UV\K-=TPAGGDJNG1-G)\<7TQ]UL M/KN=??\V1V=HGJ^F:MW@$'-T? D2DUBOYAGRKSEU)EOA=,JI[1E]%H[]&Z9Q#$*F$KU$#C6V7J*J-J1;($"+"*5 MNH\9X1 .:F*=Y-KM>FV]J0R[6J>2G[W7KL[-7(O4:D2YVP:BC.LBX.FM0F'%"ETA&@%+@A(5UG(U> M]N7LO=J'GM.NY^R7G/U&SFO@ 5"IZHOR$*W#R$7Z%<]NZ3>/K='-&_//=3;? M7.<_?B$*\0.MTJ'4MJ>B4GZXC2LZU;@I)K7K6-ANIU"OW7ZQF,TNWHK@;1"\ M1H2O(,1@>]UJ8;Q7^_[,;7?[+V$:G;T59E.[N(TUP5Y?[4*JNCQNO^5W7A(= MM JQ*[5N GQIK@!"19Q1F9>]Y6AYS;@PQ;6]>3V_HUQAOB14H!@6RM0Y[ZJU MX7G9GW#Z!?5\P9A\[F@'Y>5K_ =02P,$% @ M-X0+59NSC+OE!0 G"L !D !X;"]W;W)K&UL MQ9KON[V)#=;SD=!7$H^^T>+ Q==B2ZE$CVF2%5>CK93YV_&XB+8T)<4; MGM-,_;+F(B5278K-N,@%)7$5E"9C;%G>."4L&RT7U;V56"[X3B8LHRN!BEV: M$O']AB;\<#6R1T\W/K+-5I8WQLM%3C;TGLK/^4JHJW%+B5E*LX+Q# FZOAI= MVV]#/"D#JA)?&#T41]]1^2@/G'\M+^[BJY%5MH@F-)(E@JB//;VE25*25#N^ M-=!16V<9>/S]B1Y6#Z\>YH$4])8G?[-8;J]&LQ&*Z9KL$OF1'WZGS0.Y)2_B M25']18>FK#5"T:Z0/&V"50M2EM6?Y+'IB*, >W(F #$^!5?5]W5M73/I%DN1#\@$196M'*+Y5<5;3J8):5(^M> M"O4K4W%R>7W[U^>[^[M/=Q_>WZ/7:+43T58)A5:"113=]XYG<%BC(8AH/Q/OF>,\0/U9=U/83?NJG&VP$_D&R-\BV M7R%L83ST/#\(WZEPQSH;[O^W\, <_HX(%7Z^\:$YW*=1&VX;^M)IQYQ3\9PS MO$]<\H$T V*@2":2K-6Y7F_WO> M.(=4$!+F0\("2%@(!-/&A&UU&U@++'-L4,?SQ9X[GJO/F%MSC9<*!TH+0&DA M%$W7[LA\L(W:74=1.RDIVY.'A [*9OJ&>NZ6#5(6@!*"Z%HNFJX M4PT;5;O+]C237# ZY.S<--&:6JYEG:IEK.-BM2!I 2@MA*+I:G5FBVWY6#TF\[EJ=* MOD'=^D:%8[G.J7"0#HH/2@M :2$431>N,V5LLRMSETF2;9C*/4QSS>MI9ENX M_U8#-5] :0$H+82BZ:)U!HQM] .,UF,3JJV+>#8_E0K45P&E!:"T$(JF2]5Y M*[;97*DW:/740B12*Z,8WGLW'#UQ]&:]A1'2T/!!:0$H+82BZ<)U=HMMW+EW MN[.5^I-J %V); MWJEJH%X(*"T I850-%VUS@O!9B_D3YYM7DLJ4A33A\%L'_?M$'4_E<])(W#^%,63RFRN[6#908P24%D+1:MG&1X<-4RHVU;'0 E6I M8GWNL+W;'CV]K@Y2Y]71Q0?RZ:*LH#V0N_P74$L#!!0 ( #>$"U60&06)! , M &$+ 9 >&PO=V]R:W-H965T#;D0JXZ=V0;:?S\[H8&IP:WH]D)LQ^?<<^/C MR^UMA+Q3*8!&]QGCJN^E6N>7OJ_F*61$78@Y!)(4H(SY M81!$?D8H]^)>L78CXYY8:48YW$BD5EE&Y,,5,+'I>]A[7+BERU3;!3_NY60) M8]#3_$::F5^Q)#0#KJC@2,*B[PWPY16.+*#8\9/"1NV-D4UE)L2=G8R2OA=8 M1E5,"]P?/[)_*)(WRVFQZ:KY06V19L%&24ET]RO_T0>X P/ ( MMX"PT%T&*E1>$TWBGA0;).UNPV8'1:H%VHBCW)[*6$OSEAJ#09 M??\V1N=HQ#7A2SIC@ 9*@59F[98D1*+3:]"$,O6N6CE!E*-)*E:*\$3U?&WD M6%)_O@U]588.#X3^3/@%PO@,A4$8HNGX&IV>O/N;QC?95"F%54IAP=MX04IU MJDITLQYM;\&ERLD<^IZQN0*Y!B]^^P9'P7N'MD:EK>%BCS]*H6H_50F+"IB] M2>L8!^9F]?QU3;1F%:WICB9$LJ&,G2$N^'D"RY1OI*Y4%"K MJ*1N[2F*PDZW7E"K$M1R"AH6A@9I[C,C]E:JE.:UT9T\1QY25*F,7F6@Z#]H M:U?:VL<9J/W$0-W&(?]TJF =9[#!&J0IS6BJ8+%BZ M=0%UH-PENH0<@4CF2 M[U9ZNDZJ"F%>"L;.*OM0YS[#@X%GKX%WEQ>[2.Y$D,1V-Z79JE3C!QQ[/KE#CYNO&ULM9AKM^C\R )3I8'QK^+%$"BGWE&QLE!FA<,.1*/,< M\\=+R-AA9;G64\<7LD^E[K#7RP+O80ORKKCAJF6W+@G)@0K"*.*P6UD7[B)R M/2VH1GPE8 -9)EV4O/XT9A:;4PM M[%X_N7^HDE?)W&,!&Y9](XE,5];,0@GL<)G)+^SP%S0)!=HO9IFH_J)#/394 M@^-22)8W8C6#G-#Z%_]L0'0$KG]$X#4"[Z4@."+P&X'_;P631C"IR-2I5!PB M+/%ZR=D!<3U:N>F+"F:E5ND3JI_[5G)UERB=7%]L_KF[VE[=7GW^M$5G:%L_ M?G6U><19F0-Z$X'$)!-O5=_=-D)O7K]%KQ&AZ#9EI< T$4M;JHEH.SMN@F[J MH-Z1H#ZZ9E2F KVG"20#^LBL#PUZ6P%H*7A/%"X]H^$U?D3.Y!WR',\;2L>L M_KNDY\AWCLJC_RSO)>.WC]2O_/PC?K=,X@S%3.W-!#C6V^L=HNH(83L48Y&J MO?:C)!R2QL#"%EAHW)_=(W>(6C@FM3'-HI',>M2F+;6I<9E=Z$-+$+WS MSCAD6$*B]J.00KV+XI*KXPPE)2=TCV0*J !.V-";Y=(8Y52ZT]\VE.?X8;N? M:FH#@WQG.KSI9BV-F9'&#? 8J%1?9NUI/I1L;3+OA';[D]L8PYRZ/D8RZQ&9 MMT3F_^-;;S[FJAC3+!K)K,?4=9Z_#AWSX:[)%9@,KJY&VUW9_C1P9B^6F#G$ MJ3S&HC$&.QG-2&Y]--XS&F^T M;Z3&JK=T@G#Z&Q]CQ)/YC.16\[$[15<.?%\5KT+E7U)9UU]M;UL@7U1EH?T\ MO*ZNKS'?$RI0!CLE= Z!0 @2$ !D !X;"]W;W)K M&ULQ9I=MMDNZU#+*M*2 J9#O97[_B(V ,5NJ=,[,W,6"=5])SCH7>P'C/Q?=L0ZE$ M3W&49-?&1LKTRC2S8$-CDEWPE";JFQ47,9'J5*S-+!64A$50')G8L@9F3%AB M3,;%M868C/E61BRA"X&R;1P3\7Q+([Z_-FSCY<)7MM[(_((Y&:=D3>^I?$P7 M0IV9M4K(8IIDC"=(T-6U<6-?^1CG 46+;XSNLX-CE$]ER?GW_&0>7AM6/B(: MT4#F$D1][.B41E&NI,;QHQ(UZC[SP,/C%_6/Q>359)8DHU,>_B0"G"G". ]P3 6X5X/YL@%<%%%,WR[D7X&9$DLE8\#T2>6NEEA\4 M](MHQ8LE>:'<2Z&^92I.3FZF?SW.[^CNCDK H>Z>N/=[/T-LW[] ;Q!+TL.'; M3(5E8U.JP>9=FD$UL&DY,'QB8 -TQQ.YR9"?A#1LQYMJDO5,\O=2Y4N'TRW->'SVA0A]L:%DZ==:?08#B;72Z-9I='7J M51I;>7N/$BK[TJ%5.C<=I=B@$,MO1;N)YUG.Y=C<'7*&[-('$FMQ]FK.GI;S M)\[#/8NB/J[:R'.Y>AVNPY&%AT=<>UIAS[;:K?QNJ\$ #W#=JD5B4),8:$E4 M*WX?"&W@N2 @Q6:08CZ06(O^L*8__-^7[2%D&B'%9I!B/I!8*XVC.HTCL&5[ MU/D5.]Y@Z+9_ZU-M?^=RAA3S@<1:G"]KSI=:SC=!4%<\93NRC'H7KE+$.T3L M6/B(L+:G)[L:"*Y8+1OCW];11_"M:U+:W1$5]_) MN7A!U7PHM3;@ W]F:P$O!$T)"Q%]2I4]/T'9[E#&GG?,6-O/V8PAU7PHM39C MW##&6L9?Y(8*Y;:%4+6,2)91V<\9]U3S,69M5V=CAE3SH=3:F!O3:6O-D"IE MGE(AGXM-"OVQ96FL>/>"=KJ@[:%E'[,&M86@:CZ46IMUXPQMO36<)Y(D:Z9N M>;IZ=CN81X[5J6A('S<#5?.AU-J4&U]H_W=C6(4>PAT,W$X)0_K'&:B:#Z76 MAMM835OO-? (.J9B73S[SU"QK2B?1M=7Z_<+;HJGZF;3O'PY MX8Z(-4LR%-&5"K4NAJJ:1?F\OSR1/"T>:"^YE#PN#C>4A%3D#=3W*\[ERTG> M0?W6Q>1?4$L#!!0 ( #>$"U5XEF&PO=V]R:W-H M965TX>?+]=?"_F@8@"-'A/&U<")M4XO M75?-8TB(.A%N[I,M9VP0W[*5G"&/0TO9-FYE8L$4V *RHXDK 8 M.%?X\AIW+"#?\8O"6NV,D4UE)L2#G8RB@>-91Z.G]@_Y\F;9&9$P5"PWS32\<#I.2B"!REA+\Y8:G ZOAC^GH_%H,OKQ?8S.T(AKPI=TQ@!=*05:F;7A MAK L 71\ YI0IDYVUHX0Y6@2BTP1'JF^JXTD2^S.R_#717A_3_A;LD%>^Q3Y MGN^CZ?@&'1^=/&=Q34)55GZ5E9_3MMZ059VH MVN1]N+<*E2,H>!8YRN0*[ M"3]^P('WJ4%;J]+6:F(/OTBA:O^I A;D,'N95F&OY7E]=U43K%T%:S<'$R): M4\9.$1?\+((H,[? GJZYSTB31Y1F,A4*:@45U)T=04'0QO6".I6@3J.@86YI MD.9&,V+OI8II6AN]D>? ,PHJE<&[_!/\!VW=2EOW,/]T7_BG=;'//[TJ6*\Q MV-4*I"G.:*I@D3'TC2Z@+G0S">Z@#1"I&I*_J/1<-%)-8!YSP<1R4R>C$7O@ ML6!O6TF]=YFFA/]C>3N%'A_FFQ+WS#C!/N/@;0G&C57TK=9YA05[KWH';RLO M;BZ]$TDBT]28AJ=622/XT//95FK&ULK9EM_BH;>=.YFVH#$@TUJ>^9BN#:= MN2237*ZO%2P;YD!R0;8OW[[B(=B 0AZZ;Q+ __U)J]4N7FMV$/F/(F9,HI]9 MRHNY$4NY/3?-(HI91HLSL654:ENLTW9K'-&5U51EEJ$LORS(PFW%C, MJFW":;6)8/S,5L2S?LCLG[[4VN M[LR6LDHRQHM$<)2S]=SXC,]#[)<&E>)[P@[%R34J77D0XD=Y<[F:&U8Y(Y:R M2)8(JO[MV9*E:4E2\_BW@1KMF*7AZ?43_4OEO'+F@19L*=)_DI6,Y\;40"NV MIKM4WHK#7ZQQR"UYD4B+ZB\Z-%K+0-&ND")KC-4,LH37_^G/9B%.#!1';T : M ](W<)XQL!L#^[4C.(V!\]H1W,:@5&M?F6M MUBOAY4:YD[GZ-%%V$11 M3#EG*:)\A39,;'*ZC1_1QX!)FJ3%)R6_OPO0QP^?T >4 MZT)<0QP]I*Q[Y\661FQNJ,)6L'S/C,6OOV#/^D.WOI"P !(6 L$ZD7#:2#AC M]$6;GKKUKTV]RK1\3>P7&$^)K3;0_G1E=3+']7!7%@QEA!#/GG9EH4[F6OZD ME77\=%L_W5$_[\_NSE AJ615\4E%1%49VC >)7K?1W%OW7N0L 2%@+!.C'Q MVIAX$%7 @XP$)"R A(5 L$XD)FTD)N^O K6I>Y*0GNKD46<;R**&ISLU1V[=N,TA8 D+@6"= /AM M 'R(A/SFMD$]?OO_#4#>F[]BV/N?Q25>"7W[SK]F*Y2^\\<($(@R MT%"@X@%)"T!I(12M&X]C,X9'.XP72H$]2$O?<:;]2C!48OU2H)%-;(_T M2\%01CQKXC]3"HZ]#AYO=BZY9#FGY8;3?P<8MW_SEH.D!:"T$(K6C<2Q&\,N M2 D [<) :0$H+82B=>-Q[,3P:'OQ0@GPANGHNY;7KP%#F6U9CM6O 4.9Z[FD MWP+H9,2RG6=JP+'3P>.MSK6,6:[UG*AJ M+\V39>9!1="(;R4^\I-KH%RYI_2[6JR*A0/5B7"%TNJ?LA"[A3-U0($WJ*G$FA[_QIU# MD=++:<7U+SAV6.B O.&"UAU9GJ N2?N/'KI G!"DCIG@=P1_3 B?( 0=(7BN MA; CA,^U$'4$[;K;^JX#ER*!DCFC1\ 46JJI"QU]S9;Q*HDJE%O!Y-U2\D2R MSKYEUW<96&?++Q^O5U]77Z[!.[ B>=44F -452 MN6#E?:,3RU$EMU^G6*"R MXF\D]NXV!:]?O0&O0$G UQUM."(%G[M"GD[9O9B MZX-@!'V=!%HO>*I.\ &3!H,USNF6E*H63"EN14*SB'KH7?(]RO'"D4\UCMD! M.\F??W@Q_,L47YMBJ4VQS)+8(!-AGXGPG'IR+=\>N@M-\6^IL::J=\0A\;RI M'\@".IQ&U@0+H]@;PM)?8;[OQ\%T",M,L C.)CULX&?4^QF=]?-.5ADNP*U MPNSK6?KOUII-L=2F6&9);)"#N,]!;*/K8YN9L"F6VA3++(D-,C'I,S%Y>=>W MU.BD :?3B1^/FMZ "B-_W/._HKPX]KQ@U/,&V"2 <6#N^6GOY?2LERLB,"-( MU1FJ+DRNGN7_;JG9%$MMBF66Q 9)F/5)F-EH^IG-3-@42VV*99;$!IGPX,^O M<_CRMN^X@Q?O+(+COC? @A#.&I\ RR*(S\:-;X)YL,@'#6^>S*2U)AM]2S( M04X;(MJOSGZWGS??ZREKM'_E72X]PWZJYE,] OV4;X?;SXAM2\)!A3?2%+R8 MR*<4:^?%=B'H7@]$]U3(\4I?[N2,C9D"R/L;2L7C0AGHI_;D!U!+ P04 M" WA M55(&/([(" #=!P &0 'AL+W=O^!'HR5=P"68Z^6%PIU?LZ0L!Z&9%$3!?.P==0[COK5W!C<,UGIK M3:R26RGO[.8D'7N!#0@X),8R4/RL8 *<6R(,XU?%Z=4N+7![O6'_XK2CEENJ M82+Y3Y::;.Q]\D@*:5'3K5^WZ_BZKW_=IC_?=0;! MYZ8$O259_$9DCY+7JY/7:V./ZB+@#T6PAS6I% C3E,:2;N#H;+M=18-PB/^" MU79Z7F,4/S?J! >]@]KJD9Y^K:??JF<&*Q %8+-.Y$*P/Y"2N9(YH;DLA-%8 MR0DOL(IL22<-VILD]Y\%&H9A_XGDYT;#L#-X(KDU]G]]:7^K(>:@%FZP:%2% M0LO>6)_6L^O(M6S_P;P&ULQ99;3]LP%,>_RE&&)I"@N91> MUT;BTFU,&E0ML(=I#VYRVE@D=F:[%_;I9SLE=%(:) 3:2^/;^?MWCL^I/5AS M\2 31 6;+&5RZ"1*Y7W7E5&"&9$-GB/3,W,N,J)T5RQSS'EZZ'C.T\#$[I(E!EPPT%.%CA%=9>/ MA>ZYI4I,,V22<@8"YT/GS.^?^YXQL"ON*:[E3AN,*S/.'TSG*AXZGB'"%"-E M)(C^K/ "T]0H:8[?6U&GW-,8[K:?U#];Y[4S,R+Q@J<_:*R2H=-U(,8Y6:9J MPM=?<>M0R^A%/)7V%];;M9X#T5(JGFV--4%&6?$EFVT@=@R"8(]!L#4(+'>Q MD:6\)(J$ \'7(,QJK68:UE5KK>$H,Z M%]L&>[;]MF0-:'K'$'A! '?32S@\./I7QM6>E.X$I3N!U6WN.SG2)8H5.^/&#W_8^U2 V2\1FG;I&-,5"V0)R M%#:V+$+@LY0N;)0KHUE(MJVD*;15Z'>;O=; 7560G)8DI[4D8Q01,J6+#_A< ME]@+7(";7-<2**[7VO#^P2K68M/>#JO7:#>K45LE:NN%H-ES/8;GZ(UW*&]* MRF,864J,X99F9IUV;:JGY)Q$Q8*I(D*!KA:$GV<;*G_U;1:>>)T3SZ]RJ!;M ME=G2+AUOOT5"M]\!L5,B=FK/I@RX*@,N=P)>A5LOZ >0<:8260/7+>&Z_SEQ MFOL3IQ;ME:?2*QWOO47B]-X!T?>>+Q_OK5/G!<4 'I&(RLQQ=VY)\^+X3L2" MZK^U%.=:RFMT=)V+XA(O.HKG]N*<<:6O8=M,],,'A5F@Y^>.N8O+IU3X M%U!+ P04 " WA M5)%== 88" #!!@ &0 'AL+W=O]I+XVO<X%2;,R89V[E9D0[Y2E#"X%4BNJ@J+ MUTN@O!DYOO,V,2/+4ID)-QO6> ES4/?UK="1V[$4I (F"6=(P&+D?/,OQHG) MMPD/!!JY-4;&R1/GSR:8%B/',X* 0JX, ]:O-8R!4D.D9?S><#K=E@:X/7YC MO[;>M9=/?N)][7/VG\C> M^0P[G^$A]NR:,*)_B@(M.>\_MA:?6+PI]746>M&Y/J+UMH?]K&"0>FF7]4Y< MU(F+#HI[U(5]2MAI+7@.LE==2Q!O[3L8#/P='_=KB3EM\4-L,-[J\ M% B"J43ZG]?]K:XI@5Z9\9Z", WB=$=G3Y8?^(-^H4DG-#DH=,K6P!07K^@& M5)^V9._HTB0)O1UM^UE)>)[N:G.W&HQI[C^Q6!(F$86%QGEGJ38GVH;9!HK7 MMN<\<:4[F!V6^HX!81+T^H)S]1:8-M;=6MD?4$L#!!0 ( #>$"U7I^GFT M(@4 ,0B 9 >&PO=V]R:W-H965T=V<:V -98 :B;)N=O":DV\^*+GKBO"%4FQ.&%K0M4W"\93+-4E M7[IBS0F.+9^,V$8F,26W'(A-FF+^-",)VXX=WWF^ M<1R1E)DHQ)Y?&])'6J,3/@[N=G]K_R MXE4Q#UB0,Y9\C2.Y&CL#!T1D@3>)O&/;SZ0LJ)?QA2P1^5^P+6,]!X0;(5E: M@E4&:4R+__A'*<0.0/$T V )@/N [@N 3@GHO':$;@GHYLH4I>0Z("SQ9,39 M%O L6K%E'W(Q<[0J/Z;9O,\E5]_&"B+RTLPO4;@YO[S^1VXN+Z? M7G^ZF%V>@^E\?GX_!Q_!O'@L %N <(7ID@@04[!D+-K&20+>(R)QG(@/*O3+ M'('W[SZ =UG$_8IM!*:1&+E299N-Z89E9K,B,_A"9AUPQ:A<"7!.(Q(UX)$9 M'QCPKE*ID@H^2S6#1L*_-_0$=+P_ /0@;,CGS R_PES!_1?AZ,VC:]5TJHGO MY'R=%_C,,]HT705?MYDOZT^G8HU#,G94 Q*$/Q)G\OMO?N#]V:2533)DB4S3 ML5OIV#6Q3V8XP30D $OP0)8QI3%=9J*N"8]9TV,[*_B"G"]KRX^3/NSYWLA] MW!7H,"H(8 #U*-06I974JTKJ&4M2#56U2ZK:#^>$AD] O-&..;YS4H%(@>.VD$AJ9IS,X**8_\&!_ MK^2&J,-)1VU<6C']JIB^L9A;SJ)-V#Q=1N2Q:]HF&;)$IBDVJ!0;6.Z- YLZ MVB1#EL@T'8>5CD/+O7%XL ""X6#8W5M,#5&=H!OL+::V**TDWZL-D_?+NF-) MW=(>FZ(.^Z,YS3?.K+_C&WUK+;*DTOI:K^O[^W4?AC7,/FIETRN"=4706!&* MA>3QPR:;R,8JC/!C%[E5-F2+39>N]I*^;3/I6W635MF0+39=S-I0^K8=94FX MNR)@X ?[R^LU4:@M2B^JMI2^V5,>U2X._6%3.:^)0FU1>CFU/_3-!O$.1Y@W MYF[$'?UGRU;X6^I:[%#0: MY:/%M,F&;+'I8M:6&IHM]4]UJ9*[I4N9,SA:KU_AHV'MHZ'16K9U,S/ZZ">M M<[AY>-C-;(VI*U*;86@VPV=/.-FDI%$-(_)H-6RR(5MLNFJUVX8]VTW,TG9K M*:9--F2+31>S]OK0[/7;%N7AIFT0=/?W-LQC'*W(KW#RL';RT+RC7"[*-I-A MU;U;94.VV'0!:_<.;6\P0ZL[S%;9D"TV73\E?)D?DQ @9!LJBY^OJ[O548QI?@!A[_[,/STK#E34-,7YCBO,ES$5 M("$+1>F=]%4[X\61B>)"LG5^B."!2-[P^FTGS3 W?43 M^V?K77NY)Q(GG-W11*4C9^! @FM2,G7#JPML_/0,7\R9M$^HFES/@;B4BF<- M6"O(:%Z_R6-3AQV WWT%$#2 X&\!80,(K=%:F;4U)8I$0\$K$"9;LYF%K8U% M:SX5$*?4HU3T>SZ>GHWO[R$\=44KE<7YS9;;MPH.JL5!:\H^E+F'0B]#Q!X0; '/GD;/L58PWT+]Y_#75V;MD!!6Z# M\H7_4*!])FO6[GY6TYNGLB QCAS=?!+%%IWH_3N_[WW:9_D_D3TK0-@6('R+ M/9H)+B5LFBO?9[7&]RW>3(UM-.CU?7UWVUT/+[..P\')29OU3%RW%==]4]PX MCLNL9$1A O37/\JT9-S[[W5?JN@->K])_4-2K=3=:3HS\+X2L:&Y!(9K#?,Z MQST'1#U$ZD#QPO;A/5>ZJ^TRU7,7A4G0YVO.U5-@6KN=Y-%/4$L#!!0 ( M #>$"U6F#&80:P4 %(? 9 >&PO=V]R:W-H965T<&93K9D3>=4?-_>%_+,:5"6249SGK <%'1U-IK! MCQ?8+Q.JB'\2^LP/CD$IY9&QG^7)]?)LY):,:$H7HH0@\N^)7M T+9$DCW]K MT%'SS#+Q\/@%_5,E7HIY))Q>L/1'LA2;LU$T DNZ(KM4?&//7V@MJ"*X8"FO M?L%S'>N.P&+'!OL:Y*.3=1.:)Z>>[N\L?USX> MOEQ] ]>W#[/;S]?G-U=@-I]?/"/CP,.&[3C)EWSB",FU?**SJ'F=[WFA'EX!^,IRL>'@ M*E_2I2;_PIP/D0' D8W4M!1Z::ES9$3\>Y=_ -A]#Y"+D(Z0.?V2+F0ZK-*A M@0YN7ARN\' /GNF-Z)I[C^;ITC60UX+1XHJ/IGW_ P/U+)]42 M6$NXUPCW3.BR(5=)G@@*4MG_EP?B^7OPN6!=!KV3_$/R(U#&*!C M#9JP((R0KQ<1-"*"P2)NJ=#Q#3I$RW[?!]? M'=6P0P*B('*/N6K"H(L\5T\V:LA&@\GV-F[4H>+[, R/"'>C/.3!GD\A;OC& M1KX/!5G2G&3ZIC3FGEIG+(&U9$)7#8VNU1);PUG2;@NM+?[ %T"K7:B&:W6. MT N.OTA=6!"$GOZ3A$C11?8[D1GSY!>&3I*F!GIH'$ZG%Y4+I(5TS6DU./!- MLM6_ ZN#O"VTMFPUS$//;N\SVH:3Q5M":XM7E@$.]PR])@=VA_[(C]WHN MV MPT+/#:.>[U0Y!#C<(ISBZ*%G'V#[YRN=BFX25942]<,!R'X M34FA^\@N!J6V92FC 5]Q&G2QR5G*UK^U(JQ:#5MH[;FE\AK(KM= 5KV&+;2V M>.4UD-EK#*IV-69K3N?'?G#4Y71A,.ZK=D@9#F0V'+:J'>JZAC&$$'G'.G1Q M;ASU"5'V IGMQ8!J5R,>MJD7873,N!L5QSUS):1L 3)/_T\M=:_ 1?V5[I7, M\-5"A]1PC\S#O7E*94X^N:];0FM+52X!!78+G=%TG"S>$EI;O'(6:+BSZ"]T M7=,0>'&GM^FB0MS3W92S0.;QW%J9ZRY%C''868#3AJ&@9PZ%E)- 9B.3A.%D1OK^6)E![!QQ#VYRKT"Y_57N2&9;5%JF,?F8?Z6Y>,%R[94 MO@>R+BC-:-ZS6&T$.GFUVA):6[9R"AC97:FWNBIA"ZTM_F"78KB[Z*UX6.,< M.FN;FB#HXK"GYRE_@8=O+YQ2\'!W+V&L$:&),JA0A@*;#<7)]<,,9ZH? S+W MHIR#7#!=OE8K^!V5QM-HQGU3:IH\+WN\U?2;%.<@Y2NI*I[H=0 MDBKV&[C[$\&VU1[H(Q."9=7AADK/590!\OZ*,?%R4CZ@V4:?_@]02P,$% M @ -X0+5?WDE9/> @ ]0@ !D !X;"]W;W)K&ULK59K3]LP%/TK5H8FD#;R;(&NC=0V 3KQ$BWCLTG><<^\]=GS373+^+#*$)'C)"14]*Y-RWK%MD60HA^*8S1%53Z:, MYU"J*9_98LX13 TI)[;G.&T[AYA:8=>LW?&PRPI),$5W'(@BSR'_-4"$+7N6 M:ZT6[O$LDWK!#KMS.$-C)!_F=US-[%HEQ3FB C,*.)KVK+[;B5L:;P _,%J* MM3'0E3PQ]JPGH[1G.3HA1% BM0)4?PLT1(1H(97&STK3JD-JXOIXI7YN:E>U M/$&!AHP\XE1F/>O4 BF:PH+(>[:\1%4])L&$$6%^P;+".A9("B%97I%5!CFF MY3]\J7Q8(RB=9H)7$;QM0O *P:\(_ELC!!4A>&N$5D4PI=ME[<:X"$H8=CE; M J[12DT/C/N&K?S"5)^3L>3J*58\&5[3KW-AQ&2$!-QI" /XP@<'AR! X4 DXP5 M M)4=&VILM2Q[*3*:%!FY+V2D0^N&969 #%-4=K C_;SVWOXMG*GMLA;633P M]@I^+^@Q\)TOP',\KR&?X=OI;E,Y[XL>_W?T#3/\^KSX1L]_QWEIVO-2-6A6 MU9=A1\QA@GJ6NNT$X@MDA9\_N6WG6Y/A'RD6?:18_$%B&UL3U%L3[%,/^SGC M$O\NWTSTHCJ)0$U;4:JTC8IN(XO0\P*G:R_6+6X N2=GFZ!H%Q3X9R>;H+@) MU&[5H(U26W6IK7\N55T["2G4*Z_OGX0)"=@4S!A+!1",-%TD@]9.:JZ_;<0N M1K7@+1\:=$ZW,/$NQC\[W7+!7KO'<\1GIH$*54Q!9?F*UJMUC^Z;UK2U/G [ M0[=A/5(]O6S!?^7+#X)KR&>8"D#05(5RCD]4OKQLLN5$LKGI(D],JIYDAIGZ M+D%< ]3S*6-R-=$!ZB^=\ ]02P,$% @ -X0+5?M/LDOU @ XPD !D M !X;"]W;W)K&ULK99K;YLP%(;_BL6JJ976D M2Y!RZ253UU9)NGYVPB%8!9S93M+MU\\&RM*$T"G:%[#AO*^?.$9HA!U-5ZYN6@K>+S@!\$-GRKC50F,TI?5&<4=C5# 4$"UEH9"B/ J$6.Z MN84R'U?YS6G"\RO:E+&&AN8K+FA:BB5!2K+BCE_+.FP)3.> P"H%UK\*[%)@ MYXD69'E:0RQPT&%T@YB*EFZJD=K= M#]'#]/9JC$;WT][]S:A_=X5ZD\G5=(+.42^E3)#?."\]O,HUQ ')-80BDA$! M*)%S$2*2"9PMR"P!A#D'P='I$ 0F"3^3'D^3(3H].4,G,@Y-8[KB. MY1Q33!\W%^G\0)'J*E ,Z=0/J;[L2[[$<^AJ\M/EP-:@!9\_F9[Q MM:X>_\GL777LJCIVDWLP!O4K"8$A&AV:L'YAX>46ZK>S#AS+]SOZ>CN+QG&. MS,*ILG :LY#@=AUXH7*WP/VVBGP'WFA])+A;@;L?@3MUX.X>N&M8[1WP1NLC MP;T*W/L(W*T#]_; ;<,W=\ ;K8\$]RMP_R-PKP[(*]\K MS_:,?Q4YQA)\*PLJYDXNY>[6=46:XQ*):[;#5#W9,%XBJ89\ZXH=QRBK067A M^IX7N24BU$EF];U[GLQ8)0M"\3T'HBI+Q+_?X8+MYPYTGF]\(=M;4P/[U\_LO];FE9DU$GC!BK]()O.Y M$SL@PQM4%?(+V_^&6T,3S9>R0M3_P;Z)C6X*?"'E=+\/;-._ & M$ H>@\![#WS/]PWPA1V^Q*F"PQH. MAW!7^>\6P>\6P:_Y@I-\:VDRT:!",TIOL%NQ0RF>.VH'"&(*H)]-Y_2J 7Z-5]ZILP1 5P&G91 M W5AIRZTJOO,Z-8NKL%/^M.&H3?UCM29PN))=$+>I),WL($!6B*59[1TCC?IB\D'8%8S\Z,F"(\KTP-NN/.OV15?\# MDZ@ Q6"1WP.*C2L=&9;0]\/P2*@I+)K R*QTVBF=VI5J>05#U*3,"CUW,XY$ M-G 9=R[CB[YMXC$-CD0V,'C3&;SYG_OYQI ^07^C-B9,8:?W,_0.-<^S"OQ# MYIA?&\N6%7CN2QB+;6BS5]KA18G6PL8R.1+;T.2A=$-KX7Q%LK4$_32:>,?? MO/99+G5QJ,_07J _4E'QNH(H^I)4)=@0JL:$;HV6K&QGO\&1V(;>#]4?AI>E MJ;5K.-OD2&Q#DX<> MJ;B%=T8/!E]7_9@)F"3C9@\- B0'N/L*@XQZJCV>E& M1YVNU#% VHJQG>[L=S,2V]#\H>N T\L2<-268RRVHCV#J7Z%X'?$=\2*D"!-PKG74]5#O/FD-T,)-O5Y]0UD^K46U_F M&&68ZP#U?,.8?![HHV_W4T?R+U!+ P04 " WA M51[9Y97\" #2!@ M&0 'AL+W=OX+TNW-.RTG;!3Y.&E+ "_=C<23/S MARPYK8$K*CB24,R]+\'U8F;/MP=^4=BIO3&R3M9"/-G)]WSN82L(&&3:9B#F MMH4;8,PF,C+^]#F] 6D#]\>OV6];[\;+FBBX$>PWS74U]Z8>RJ$@&Z;OQ>X; M]'XBFR\33+57M.O/8@]E&Z5%W0<;!37EW9T\]\]A+R ,CP2$?4#8ZNY K48;PE!#7LR+T':;"5Y>:I"U\;[6Z'P)FE"F+M 9HAP]5&*C",]5XFNC MSC+\K%>RZ)2$1Y3\V/ K-,*?4(C#$#VNENC\[.+?-+XQ-S@,!X=AFW=TPJ%+ M31;+WD(.T3M7Y= M KL4<9O"UM8VC3#&B;]U@,<#>'P2;%@C%ZN+BO98 3X*BP98]!YL[()%#E@0 M3MRP>(#%[\$B%RS^']AD@$W>@\4NV.00%DSCV9'G.!UHTY.TAPI,ORU,T;F8 MTT.F%><"S@;@[#10:%OT;\O?6=2S@Z\TB,9X\M:RO]>B;+?_261)N4(,"A.( MKR;&@.PZ:#?1HFF[UEIHTP/;865^.B#M ;-?"*%?)[81#K^Q]"]02P,$% M @ -X0+549[!^&ULM9S_;^(V&,;_%8N=ID[:('$"M+<6J=0^[:;=[M3VMI_38""Z?.$20WO2 M_O@Y(<4X!+=!3_M#"9#WX_AYD]=^R)?+QRS_5BR%D.0IB=/BJK>40WN[-LO _>5G^H>J\ZHS#T$A;K+XWV@FEU>]\QZ9B7FP MCN5M]OB'J#LT+'EA%A?5?_*X77?H]4BX+F26U,%J"Y(HW;X&3[40>P&N?R2 MU@&T$4#ID0"O#O!>&^#7 ?YK X9U0-7UP;;OE7 LD,'D,L\>25ZNK6CE0J5^ M%:WTBM)R1[F3N?HV4G%RPOCTGOQ&_E89OI$+H78%2KQKMOTN=M3:@5^#F6?..ZOA#J4MO7''LY$V"?>-MPE7^\8.7OW2UNW[)@_ MUZG".-NML&"X'7.]7O05PK8UADC>;M_P*JYWM)*EV%R#>B-_GY)W?D_-XF-!+&D# .@AG2^SOI?1M]\GDM"ZF.M2A=D(W FUHY79.QA8TJ6#G$;":N?SX<^9>#S;[,;:OYSM@Q5^.@33,$'.X$ M'%H%;"MH;?)9*5WE0\(8$L9!,",5HUTJ1B>5D1%2>B2,(6$4QJ TCJ*9J=GS<>Y)HVP=ADH DL:@-(ZBF0F@.@'4>FS<9$D2 MR>J(^"!$:RJL@,ZI0-)837-=HY0YCML<03BJ75-F[4E=J^\Z6H*"IZ,E".I7 MH30&I7$4S4R-]JRN?UH)@GI4*(U!:1Q%,Q.@/:]K-[VO*$%0OPNEL9KFTD8) M:GH%CFK65%G;6==JV3K-\&M48U;>Z-"-O<'..D+M*XIFBJT-K&MWL$?*_;2< M^=\&4KPP^X0Z62B-06D<13/3I$VO>WY:Z8=:7"B-06D<13,3H-VP:[?#UZM5 M'(7!0RQ($N0+98K/@H($9"7R4!TR;6<5IG9DY^0@::RF'0P&!V/!6QABJ@TQ M/4*U:LJNS3(]R2S_]7'Z^=8^<[*#.XL/-G@!SY4JZ;LVDM3NY<^4IINQ2:+-^456>'VRWD01G$D?_1; M\P UUU :@](XBF9>HZ@MN.><5*4\J+F&TAB4QE$T,P':7'M6[SBIAVI]G2() M ]6<.C!:TP*UW% :@])X33,NDW3*OUVU,P779MJSF^G77QQJ!W46FQYTJ'') M)WMY%8[:)E.\O6N:[9;X>A-$<36DOG)_Q5[MC+W92&T2J(29!D:W6,J&D^^;X.S]3DWS;MM[?2 M.5]04US3#GZ1.)CWHYHU4Z']KF<_U]QA7(4Z8"B-06F\I@WW4D=MDQCM;3V[ MMSWV^X^0Y>Z>S6N3U:H^U.)":0Q*XRB:F2-MA+V+TP8'J+>%TAB4QE$T\R8P M[6U]^^GE;M;*#NM\+QC4\4)IO*;M5R5W>+0H^=K*^G8KNS\"Q%4E*NRER,[K M+#G4S?J'_I/2"]J\2>\M3@S[VLOZ=B][9!BXJW;V$"U4!0W6\*P4 +LK 9 >&PO=V]R:W-H965T:Q^F8ADHA)=9HL[72=<.;G05%H8\<9V!$+8FLRRJ\])I.1V,@P MB/EC@M)-%+'DUY2'8C>V7.OMPE.P7,GL@CT9K=F2/W/YLGY,U)E=4?P@XG$: MB!@E?#&V[MQ;BJ^S@/R.'P'?I7O'*&O*7(B?V^7(VM:POY?,$VH7P2NS]Y MV:!^QO-$F.;_T:Z\U[&0MTFEB,I@58,HB(M/]EH*L1> \9$ 7 ;@&= [-Z!?!N1-MXNVY\(1)MEDE(@=2K*[%2T[R-7/HY5>09P-E&>9J&\# M%2?#LY'ME05S8JSO;)2TZ)2^$BE!NA!Q'*5(AK[W-?C;=7 JI7XK953; 3^ MM8D[J.M\0MC!&+T\$W3UX6-#O69F#.&>PK@YQC5@B!GSS9,=Y/9.8F@;S.RN M :.)U:V&1#?G]HYP'X(XB#914[<9 [.<=INNFH]558"/3')T;_( M\'ICA+0=^9 P @FC0#"M)URG-AS.16FG# -2'Y1&0&D4BJ9WP)[CFX=<&R0- I%TV7'M>SX_!QT_,7'3&G] M&$#2""B-0M'T_JA=KMN]+ ^!FEQ0&@&E42B:W@&UT76-9NZR/-1KS$/NNSP$ MZG!!:12*ILM>FUS7['*_?IE^>S*_!YD)K1\!4/,+2J-0-+TO:O_K#B[+0:#V M%Y1&0&D4BJ9W0&V!7:/-NRP'#<_,0:#>%Y1&H6BZ[+7]=BVLH/2*!1-E[VVP=AL@Y_X5H3;(%XBKUC.7)3+F9U&P2&MZ R41D!I%(JF M=TMMDS&^*!UA4%\,2B.@- I%TSN@]L7XQ/)O,2>CN4A4;/Y\,%6<>C :NP74 M+8/2""B-EK3!7L9U'?5795Q=[]H&XQ,V.!*;6"*QD:EDL:\$;]2Y]ZYTYS#7 MG[R%F*O26I'_P\CBVLCB$\NUZT4BE'+WG#8%VJ]<2IX@L2CGR$:=0;TJ*(V TB@43>^,VJOBR]9K,>B"+2B-@-(H%$WO M@-JU8K-K;3DS@AI84!HI:?M317=_*BOE!C6F]MXFQ8@GRWQW:(J\;/8K=O)5 M5ZL=J'?YOLN#Z\2]I<4^TAI3;&M]R.U3BD*^4$BG,U39,REVBA8G4JSSK9!S M(:6(\L,59SY/LAO4]PLAY-M)5D"U7W?R'U!+ P04 " WA M5>EWTF$$" M P!0 &0 'AL+W=O][GA-\ M'-5"OJD<0*-CP;A:>+G6Y9WOJR2'@JB1*(&;G4S(@F@SE7M?E1)(ZD0%\T., M9WY!*/?BR*VM91R)2C/*82V1JHJ"R#]+8*)>>(%W6MC0?:[M@A]')=G#%O1+ MN99FYG2BJE1=&*#4%!>?,FQ_9_Z G"\(P@; 6AXVX2.

3EF+9 M4(1G*+Y7?(3&^!,*<1BBE^T*75_=O+?Q36%==6%77>A\QV=\_T<=A&M,)L,F MMBWN5$D26'CFW"N0!_#BCQ^"&?YR 7'<(8XON<<_A3V=A"%2B(KK(;S&8.8, M;),=X@#;)_(/ XDG7>+)Q<0/] BI^\9#.1MM$/22XA'&M_,I[CW!,,*T0YA> M1'@EDI*=.77G*!IY$+ZG&,_F_^3U>PU@[Y(?1.XI5XA!9H1X-#=&LNG/9J)% MZ7IB)[3I,#?,S94&T@:8_4P(?9K8-NLNR?@O4$L#!!0 ( #>$"U5U XQ? M.P0 )84 9 >&PO=V]R:W-H965TG7KNNBE/(J;H22^#X9"YD3C4NY<)5 M2PDT*4%YY@:>%[HY9=R93.[VQO/+)% MJLT-=S99T@4\@?Z^?)"X=D!0 X)S ;T:T#L&]%\ ]&M OU2F"J74(:*:SB92K(DTULAF+DHQ M2S2&S[C9]R>0-*"O^O&AQUX%\5H% FVBMP&G82?"WY%>MY[$GA!T.;/_X-'W? ( M8H3[)=SOB*;7[&^OY.N]P'?/-4A0FCQ2#>0)][-UCRJ2?CN)Z3W7:DECF#K8 M7!3(%3BS7W_Q0^^W-H%LDD66R [$ZS?B];O89W=%7F34-":RP!;ZGG!LQ%@A MFFY,SS.]"Q*3_S2.*U-<"IV")+'(T:'4-$A$,XYK(!>94.JR3?_*C[#TP[3J MU6S@![V)N]K7]1RCZ-1H[.]L#F08-#(,.F7X'6/'>&.QX.R?*N"7@VR+KJ(? M[/LT&AX%=VK3]\+^47"=?KXQ&<)&A;!3A9M<%-@#48>,*L7F#)682Y'_Y^:; M32=:$*"2,[YHK;_P)'I_<"10BTD_/-*G,X(WZC-L]!F^39^;KW?WF!RH -LV M(]C@W*( WW4ZQ6SBL-%$KR%#M?*RF[=I-#P1(/!-CSQ0Z1RCJ#.0-\HT:F0: M=U=HY5 M5%L=# BA-VP?_?S=".QWS\ W<2P+?)5GC#ZSC&D&[8G0R?+J1+#)%MEB.U1P M-SW[ RNE9&FXK16TR1;98CM4<#=Y^]VC]UXI;=/P9ZN$EN;?6D*;;%'-ME_$ MO='XJ#K=O8.<'.2B/!!3^'\")^OJ3*>YVQRZW91'3>[.O#JQ^T+E@G%%,I@C MU+L:XA;*ZA"L6FBQ+(^%GH76(B\O4Z )2&. S^="Z.W"_$!S%#G[%U!+ P04 M " WA M5\LKD,J " "A!P &0 'AL+W=O3G!"KB9W9!MI_ M/]N!C&XA4JM]27PY[YOSV,HY_3T7CS)%5/"49TP.G%2IXL9U991B3F2+%\CT M3L)%3I2>BHTK"X$DMJ(\

O@Z52?-,+3\=']BV77 M+&LB<<2SGS16Z<"Y=B#&A&PS=<_WW_# TS5^$<^D?<+^$.LY$&VEXOE!K#/( M*2O?Y.EP#B<"OW-&$!P$P=^"[AE!^R!H6] R,XLU)HJ$?<'W($RT=C,#>S96 MK6DH,[>X5$+O4JU3X>AN-INN9I/Y:@G#^1A&=_/5=/YU,A]-)TOX!-]Q0S)8 M"!XAQI1M)%R.41&:R0]Z]V$YALN+#W !E,$JY5M)6"S[KM*9&7\W.F0Q*K,( MSF3APXPSE4J8L!CCEWI7$U58P1'K-F@T'!:B!?[U1PB\(*C+IUF^Q*(%;<_* M_89TVM4IMZU?^RVG7)/>;6G7J;R+^N=D2M5'_6M32K&?-3 ';A5==S^N[NQJ$;H70 M;428;_,U"N )Q.19@N*0T$PCZ2(F"\XDPEI03.K8FHW;GG6LXV@4OO'*>A5O M[ZV\1?9?J.#$?J+IR M^!M02P,$% @ -X0+51/N7!>3 @ SP< !D !X;"]W;W)K&ULK55M;YLP$/XK%JNF5MK*:],I(T@-L"W3DD9-NGUVX1)0 MP6:V2;I_/]L0FG8TBKI^ =_YGN?QG:T[?TO9/<\ !'HH"\)'1B9$-31-GF10 M8GY.*R!R9T59B84TV=KD%0.<:E!9F(YE#%V6 MF/T90T&W(\,V=HZ;?)T)Y3 #O\)K6("XK>9,6F;'DN8E$)Y3@ABL1L:5/8P] M%:\#?N:PY7MKI#*YH_1>&9-T9%CJ0%! (A0#EK\-A% 4BD@>XW?+:722"KB_ MWK%_T;G+7.XPAY 6O_)49"/CDX%26.&Z$#=T^PW:?"X47T(+KK]HV\1>>@9* M:BYHV8+E" UY2<%N >ZR"UP*\8Q4N6H!.W6QR MUX6+L,"!S^@6,14MV=1"5U^C9;URHM[)0C"YFTN<",+KZ72RG,:SY0)=S2(4 M7L^6D]G7>!9.X@7ZB'Z O 6.3B,0."_XF73=+B)T>G*&3E!.T#*C-<E&7H:N'L:C%V#A)^K\DY M>^YF'T779#Y_73J78WY!5. M8&3(?L:!;< (WK^S!];GODJ_)5GTEF3Q&Y$]N1.ONQ/O$'NPI (7LCL3@>!! M3@H.?1?1< PTAQH3F\"6;\(W-_L%[@FR+R^>!D7_!CG>RV>IG)B0M,!+E0S"] @ )0< !D !X;"]W;W)K&ULA971;MHP%(9?Q16F@WID&K0K=KDQR(U<1.;0?: MMY_MI!$;AMXDMN/S?^>WX^/ACO%GD0%(]%KD5(R<3,KRRG5%DD&!Q24K@:HO M:\8++%67;UQ1\T"TPH4X\-&,//!ZR2N:$P@-'HBH*S-]N(&>[ MD=-QW@<>R2:3>L"-AR7>P +D4_G 5<]M55)2 !6$4<1A/7*N.UD,ALY?0>EL,95+A_9[@/!/A-@&_RKD$FRPF6.!YRMD-SV_ER@:[G$S2^GR^G\^^W\_'T=H$NT%TE*PZ:3(JJ0#FH M%4 E?E/[(H7:E9>*<$A115/@B#)ZD6":0(Y7.2#UYW L"=W480)AFJ($ET3B MO%'"&PY0:YU/0&*2BR_H#!&*EAFKA H00U_".>?E;T$@7> M5^1[OH^>%A-T?O;E7QE7+5.[5GZ[5K[1#8[HWK=^?AD_MLQJA:Y=09^P*U'B M!$:..D("^!:<^/.G3NA].Y%?T.87G%*/'T&?0KT1;&V\VQ*L)4(CH4_L-O:# M7G_H;BW@;@ONG@0K5F!CU5&]/5;7CT([J]>R>A^QNC96[X 5>%%D9X4M*_R( MU;.QP@-6)^P<6<.H944?L4(;*SI@A<' CNJWJ/Y)U#(#5;_7$K@-V#\TYW7M MP$$+')P&,GWB[37$EL+@X!_M^%[D_Y>$NU?U] 4RPWQ#J%#Z:Q7G74;* Z^+ MH+ZO&9/O'5U;VYLQ_@M02P,$% @ -X0+ M52H7(Y:K @ Y0@ !D !X;"]W;W)K&ULK59K M;]HP%/TK5E9-K;21)ZQE$*F05.ND;E5INWUUDPN)FMB9[4#W[^='2 &EB&U\ M(;9SSSGW'A-?CU:4/?,,0*"7LB!\;&5"5$/;YDD&)>8]6@&1;^:4E5C(*5O8 MO&* 4PTJ"]MSG(%=XIQ8X4BOW;)P1&M1Y 1N&>)U66+V>P(%78TMUUHOW.6+ M3*@%.QQ5> $S$ _5+9,SNV5)\Q((SRE!#.9CZ](=QGT5KP,>LU_IVF4M3YC#E!8_ M\E1D8^O<0BG,<5V(.[KZ DT].L&$%ES_HI6)#61P4G-!RP8L,RAS8I[XI?%A M R!YN@%> _!V <$; +\!^(CTY R= MH)R@^XS6').4CVPA11743AJ!B1'PWA#PT0TE(N,H)BFD'?AH/WZP!V_+8MN* MO77%$V\OX=>:])#O?$">XWD=^4P/A[M=Y?R?>OS/ZEMF^.WV^YK//V#[>UV; M:^!!-UP=8D->X03&ECRE.+ E6.'[=^[ ^=SE[#')HF.2Q41AU.S^L'.]9UAPTNML,B$W:Q%17L<,6= M7+[S&F;*M3?.[1+80C=,CA):$V&^X7:U[ M7 !N,%ODA*,"YE+*Z7V2*3/35,U$T$IWC20X"I /E^3JE83Y1 M>[,)_P!02P,$% @ -X0+58:;;%97 P "@T !D !X;"]W;W)K&ULK5=M;],P$/XKIS AD-CRUH9IM)&V-A5#;%1TP&*[3!$5W.>4R:F5*E6< MV;:,4\R)/.$%,OUES45.E.Z*C2T+@22I0#FU/<<)[)QDS HGU=A2A!->*IHQ M7 J099X3\?,"*=].+==Z&/B<;5)E!NQP4I -KE!]*99"]^R6)[8(C'UE\#7#K=QI@UG)+>??3>BVW1.*,TV]9HM*I=6I!@FM24O69;]]CLYZQX8LYE=43 MMHVM8T%<2L7S!JP]R#-6O\E]$X<=@!<\ ? :@/<8X#T!\!N ?RA@U !&AP+& M#6!\*"!H )68=AVL*M)SHD@X$7P+PEAK-M.HY*K0.L 9,QMKI83^FFF<"F>? MKI;1]>K\YO+3-2P_GE^OX!@^+/[;F[VX^^W>]"M>_ZF]R7.=/R6I4I#96EV;Z:+F&'5SF+Q\ M)@L2X]32B5>BN$,K?/G"#9QW7>H-238?DBP:DFPQ$-F>JJ-6U5$?>WA=YK -D2D4C8",(4)E#JU"M I0@QD>FQN?L3H.;& M4.;&R-H;H]#'NDOG?@=\^(E$=-XMO<#GRC\D630DV6(@LCWY@U;^H#?Z>WD9 M[TT;=9%)B5%>\4-EUX?]J$OZWLF?F]!KLF G7[AO1_L98_ZWC>^=[MM$?]N, MQX]L%AUS>:=.:U3'VMZIU7(4FZJJEA#SDJGZ:FQ'V\+]O*I7'XW/W+.YVS$> MZ4*_KLO_T-=_";J.V>CT"A37>BKGY*W>1**NO.N.XD55*=YRI>O.JIGJGQ44 MQD!_7W.N'CIF@O;W)_P-4$L#!!0 ( #>$"U63=EX?H , , - 9 M>&PO=V]R:W-H965T].YFTFPL8% M"LP02-O<-#GFN+2?%7O!GM@2E61(__VM9,?% =S0XPM(MO;=U;/26AINA7Q6 M,:*&ERSE:N3$6J^O75>%,69,M<0:.;U9"IDQ35VY M2^JYE4J49,A5(CA(7(Z<2?MZ-C#C[8 _$]RJG3:8F3P)\6PZ=]'(\4Q F&*H MC0*COPU.,4V-$(7Q=ZGI5"Z-X6[[5?U7.W>:RQ-3.!7I7TFDXY'3=R#")P@5\:^&\- M.D<,@M(@>*]!IS3H6#+%5"R'&=-L/)1B"]*,)C73L#"M-4T_X2;M"RWI;4)V M>CS]8#Y'Y.'!5S"[0N&NX2WA,1VKH:IJ+B<@-R[AO MBKC](W'WX%YP'2NXY1%&=7N7&%0@_%<0-WZCX.>]XOA_B<4VQV)K$:NT[%KM.D/I[A$J7$J+ZH)U(ROD*J>)JVJ([A MCD?))HEREE[41]Z^F#8> EXX[EG'IB!OQNUVM]T;NIM=DHWAG4KR3&(UDMV* M9+>1Y$.>/:$$L02V93)2L"*&FLCFM&DEA$S%EZ9H1X!5)0EW4:YIY1[B6+CM M[G+L!$'7\]Z0; SO5))G$JN1[%4D>XTD?S/@(&(:8U8WN3^5YM;=%>H&_MT-F9_)9 M ]JO@/;?#?3 XOS_(!O=G@JROP>R[[6]/9!G\ED#.:A #AI!+FP-*%#5 .'Q M3]%@[U/D^^V] MKH]]1=>2:Q I&[<^;-4*[LW4'1]'.NB^-O];2ZGDSLJ=S] M=WAQMZ'#URKA"E)&ULM99M;YLP$,>_BL6FJ96V\)0'TA&D/FZ5UC1J MMNZU T=B%3"S36BE??C9AE*V$5*MZQNPP??W[\YGG_V2LCN^ 1#H/DTR/C,V M0N1'ILG##:28#V@.F?P34Y9B(;ML;?*< 8ZT49J8CF6-S123S A\_6W! I\6 M(B$9+!CB19IB]G ""2UGAFT\?K@AZXU0'\S S_$:EB"^Y0LF>V:C$I$4,DYH MAAC$,^/8/CJQ'66@1]P2*'FKC90K*TKO5. :*(,9%(FYH^1EJAT9*+Z0) MUT]4UF,M X4%%S2MC25!2K+JC>_K0+0,7&>'@5,;Z$"8U42:\@P+'/B,EHBI MT5)--;2KVEK"D4RMRE(P^9=(.Q&<7E\MSN?+XZ^7UW.T^'(\7Z(/:"EH>(Z@ MM\A$?(,9\/KUNZ IO6M<=!H7'3W#<,<,-\ %(Z& J.+N8NQ54#OCB.R+<\WMQTDHX9DU$MR*]>29&N4 R,TZIJV MW]Y%#X!97U:-&Y)QK](G%0(480$HQH2A+4X*0 <2K(K)H0S.4S9WD5;Z7BM MCCL8CKH#-&FP)KU8US]<)DWR.P/]OM5IVP>[7.[W/"L*ZD/3S] M&K:U'^CI5+?[C_67;\!Z@O8.' \FSA_+9K:*J[JHR(*U)C(Q$HBEF368R(5G M5>VO.H+FNMZNJ)#56SDC@5?2.2,KLP31%$F!!QQC),U9T9XPF1 M:LKGIL@XDK );'I6%;'3 A-#;=77+OG;H_E,J8IWG,0>9(0_GJ),5OV#=M8 M77B@\TCJ"Z;;R\@D<3M<;8$KJL5FQX4V11HY8:F^BGZ MDJN[5.&D._#]T:,/@UL/)N/!Y7@R?AR/?+@933RXNGL ?S 9P;&'DM!8G, I M//D>'!^=P!'0%!XCE@N2AJ)G2B5&4YI!M?!EN;"S8^&O>7H&3:L!CN4X6^## M_7 / P6W"[B]"3=5!'4.3IV#4_ U=^4@!$H!R@M,*)G2F$J* FXP#D'M%?!) MC-M,EJRM[:QZ"UZ(C 38-]0>$\@7:+B?/]D=Z\LVRPUI<8YKVLVQ+9JL:V]8CVR4/KX M:P.>OL$5";3P5_@-'A494UKAFK,\:Q2/[U3I/]7Z&W#+I"X)6"IIFF,(=QER MHE\G6QMXKX;W/ML#D6W$U:[C:G](<[$"U508I/"S@, %\4 9 >&PO=V]R:W-H965T@C8IKTTR0-82VQF M.Z65[H\_.PDY:$,&)[\IL>/OY[']?&.['NP9_R&V !(])3$50VLKY:YOVR+< M0H+%#=L!56_6C"=8JB+?V&+' 4>9*(EMUW$Z=H()M4:#K&[&1P.6RIA0F'$D MTB3!_/D.8K8?6@WK4#$GFZW4%?9HL,,;6(#\LIMQ5;)+2D02H((PBCBLA]:X MT0]ZNGW6X"N!O3AZ1GHD*\9^Z,)]-+0-GP;3* MD%IX_'R@3[.QJ[&LL( )B[^12&Z'UJV%(ECC-)9SMO\=BO&T-2]DL MMM.R4)@*R9)"K'J0$)K_XJ=B'HX$KGM&X!8"]U)!LQ T+Q6T"D'KA:!Y3M N M!.U+(W0*0>=20;<0=+-DY;.;I<;#$H\&G.T1UZT533]D^<]"9@PK@U$R_ M@LLQ3C7F)(G-TKK-C-L\9UV(L80(S3"7SVC),14X6]^J''J7LUK5++W>]\4. MAS"TU((N@#^"-7KWIM%Q/E79PB3,,PGS3<*F)F&!(=B)55JE55IU]-%#FJR M([9&$1&2DU6:[8/EMR&06MC4QJK7.Z367-4#]$_MIW-7&_!:/YF$>29A?@YK M9S!]JGD[3VC"DAVFSQ_1/0VKTE#+NC8-)F&>29AO$C8U"0L,P4ZL MTBVMTC5X"NB:M(I)F&<2YIN$34W" D.P$ZOL4DS#/),PW"9N:A 6WK_K$ ;W2 ;U:!WB$0RC5.7 - MG-#-^>SW7F^0Q\'SK-;&NC:K)F&^2=C4)"SXQ<3F6;6/[C,2X)OLJDJH;*54 MYO\?EK7E;=@XNP1Z43]I]+U&1;W?Z ?Y9==_^/SJ[3/F&T*%.O2M52CGIJN. M03R_SLH+DNVRVY05DY(EV>,6L#JMZ ;J_9HQ>2CH .6=XNA?4$L#!!0 ( M #>$"U6PTXFQ#P( (4$ 9 >&PO=V]R:W-H965T>V=V!G8==TH_F@K HJ=:2)/@RMIF28C)*JB9F:@&I#LIE*Z9=:$N MB6DTL#R :D%H%"U(S;C$:1SV]CJ-56L%E[#7R+1US?3O-0C5)7B*SQOWO*RL MWR!IW+ 2#F"_-WOM(C*RY+P&:;B22$.1X-5TN9[[_)#P@T-G+M;(.SDJ]>B# MKWF"(R\(!&36,S#W.L$M".&)G(Q? R<>2WK@Y?K,_BEX=UZ.S,"M$C]Y;JL$ M?\ HAX*UPMZK[@L,?FX\7Z:$"4_4];FS"*.L-5;5 ]@IJ+GLW^QI^ X7 $I? M - !0(/NOE!0N6&6I;%6'=(^V['Y1; :T$X-8]#WV!9X%V2MK*H*W,(?\73YRF41@]"UO3 MJX3?6CE!L^@=HA&ER$#I.L%>X9V-AF>!=_8?AI^SV:/GSZ/]B"Q-PS)(L)L! M _H$.'W]:KJ(/E[1-A^US:^QIW=M?02-5.':O5':LJ. LW7SG-B>[B;0^?$[ MI30FITL%Y*(U:M!E& "#,M5*VW?)N#O.V*IOK;_I_8#NF"ZY-$A X:#1Y+VK MJ_NF[P.KFM!H1V5=VX9EY>X)T#[!G1=*V7/@"XPW3_H'4$L#!!0 ( #>$ M"U7[B15GSP0 !L> 9 >&PO=V]R:W-H965T;]S'ZXW,;]BSR39:TP'C]ROZQ2%XE\Q0).F?)/_%2;J;6V )+NHIVB;QG^[]HE9"7\RU8(HI/L*]B MH046.R%96H'5"-(X*[^CETJ( X#BT0-P!!YM&+++PKU"[32*\[RB?(@N?HU5C@Y>P@_W89?'P&Y M?KP&%R 20DW.."MG8%Y)QH&:E5PULC6@+VJ""BK TT\@Z%I-& G>$RJC.!$? M%/S[ P'OWWT [Q0%>-RPG8BRI9C84HTT[\]>5*.Z*4>%CXS* ;_C+O;?$ M<.HYXQ1\SK$Y4U4^GW"ZVI9H5X_.5[XKL8T6=&JII4U0_DRMV>^_(1_^J1/6 M)!DQ218:(FN5P*U+X ZQS[ZJ?ZF($JK];Y50OX#F&\7S#*$Q=M3,>3Y45A?F M>CYJAY%^&,;8=\;ML% 7YL%@5(>U\O3J/+W!/.=,2,!68,W84@#!$MUB<%-R M> =]CSR(.HG,^U&^[SA.)]U^%'("C+OIZL)P@* ^7;].UQ],]Q-G0H M9ZM8 MZA+U>R*[#L;=1#51XUX&Q.]E,';<@P3*//M1 4;C(U4=U6F.!M.\IPN6+>(D MWU(^2YIJ9_$@Q:FKB$DR8I(L-$36JL.XKL/XK(5\;+($)LF(2;+0$%FK!$%= M@N#7%_)!Z*GZFR0C06]9N$#0A4%G]="%81\Z^N4#P>:A%1K8%H9)3M7/*!NI MV+H*HE%'06T<]@+WB(0'S_WHK*UF&'ZR>";92,76VKNZNO5#+H(CFN%&,SRH MV1UGR]U""O ?^%9[HLH'Z5W.(-_)(IID(T;90E-L[7 63;*1B:SW1CSV,G>["HHD+(#IX"&\KUS@=9,+J M#).<+*%)-H(TI@AAZ/?V-%T?9I&'ZR>";9".H[K9&#/+^K MG<:V01@<>Z)J'!D:MF0D%I+'3[OBG=^;MS>C'LTH&S'*%IIB:U>G\6GH/*.& MC#HUHVS$*%MHBJU=B,:MH3/LVC#VY"H8-6RH;\75%%^:-CCPYX\:P M81.&;9CD5 &-LA'<-V*.4J;K.W1AGCORCPC8V#5\GET;AI\LG5&[5K&UWC1# M[':W-ET81KV7!?;!85=*^;HX911@P7:9+,\PZKOU2>9U<7[7N7^#KN9(V)2LK2XW-!H27D> MH'Y?,29?&WD']7GP[']02P,$% @ -X0+5<^$?;5< @ K 4 !D !X M;"]W;W)K&ULK511;YLP$/XK)U9-K;0% C2-.H+4 MI)FV29VRINF>'3B"56,SVR3=OY]M"$N[M.K#7K#O?-]W]QG?)3LA'U2)J.&Q M8EQ-O%+K^M+W559B1=1 U,C-22%D1;0QY<97M422.U#%_# (1GY%*/?2Q/D6 M,DU$HQGEN)"@FJHB\O<4F=A-O*&W=]S23:FMPT^3FFQPB7I5+Z2Q_)XEIQ5R M104'B<7$NQI>SF(;[P+N*>[4P1ZLDK40#];XFD^\P!:$##-M&8A9MCA#QBR1 M*>-7Q^GU*2WP<+]G_^RT&RUKHG FV$^:ZW+BC3W(L2 -T[=B]P4[/>>6+Q-, MN2_LVMCSR(.L45I4'=A44%'>KN2QNX<#@.$Y#@@[0/@<$+\ B#I Y(2VE3E9 MUT23-)%B!])&&S:[<7?CT$8-Y?8O+K4TI]3@=+I<39?S'ZOY]SN8WYOO$DZO M41/*U!E\A-7R&DY/SN $*(>[4C2*\%PEOC:9+=[/NBS3-DOX0I81W BN2P5S MGF/^%.^;BONRPWW9T_!5PF\-'T 4?( P",,C]#A^^4D[4WV+D^**WWN*Q M*VHIXN,4MELO54TRG'BF'17*+7KI^W?#4?#IF+[_1/9$;=RKC5]C3Q=29(BY M@D**RK3R5K MY1O().940T$RRJBF>/2AM-0C1VU'S#:-QT$0)/[V4-Z_4<.+ MT7D\[L/:POV#AU^AW+AYH" 3#=?M8^J]_%$'IOV 3]@$[_ %!+ M P04 " WA M5QXTXH#H# #4$P #0 'AL+W-T>6QEUY-B9X[)VOWZ^=II^X(L8 M#UN[5#3V/3[G'MLWQ#"HS4JPNSEC)EJ60M9#,C>F^A#']73.2EI?J(I)BQ1* ME]38KI[%=:49S6L@E2+N=3II7%(NR6@@%^5-:>IHJA;2#$G:AB)_^YP/23=] M3R(O-U8Y&Y*'L[<_%LI3=R4GGX?QZ/W[F@',2!T4O7R!ZT;$7JNQ0 M3#Y]F?QSXICTU:ZT&WYJA3SQ%*/U S28PH;J>A@]"]-WV)X<-[LZ&A1*;C8W M(3Y@U6G)HDL>&.1"M 9[Q =&@XH:P[2\L1TWV 6?0%'3OE]5UN%, MTU6W=TDV!'>S229*YTRW:;ID'1H-!"O CN:S.=R-JF( C5&E;>2$7K^N^L\8Y)I*K9-V]H_Y%5^ MM>/DZE]9=K]5]@T'/3:OV$,W>7D,)M-C,'D$-9EDA^^Q.50=NLG#7,FX.61L MG61VSC%M-(+SXI!\@].GV"2-)@LN#)=-;\[SG,DGQQDK;^C$_LFRHV_'YZR@ M"V'N6W!(-NVO+.>+,FM'W<)"-*,V[2\PO6[:'E9M+BYSMF3YN.GJV<0U(]NP M69L+"/O(C;O"",;Q6!@!#,N#.< XGH7E^9_FTT?GXS',6S^(]%%.'^5X5@@9 MNP^6)\S)[!6>:98E29IB*SH>!QV,L75+4_@)JV'>@('E@4Q_MM;X;N,5\GP= M8'OZ7(5@,\4K$9LIOM: A-<-&%D6WFTL#S"P7<.> M8!S),@R!6@S7:)HBJY/")[P_V%.2)%D61@ +.T@2#(&G$4$"U67BKL

-8?20$3; M8T.P6BP^0"X99K>]9!:G3!ZUWIY/IVWV*"O1_M%L96WNK!M5"6TNU6;:;I44>?LHI:[*J7UV MYD\K4=23R\^'NI9J"B\:+3-=-+4I[ J^%O*Y_>]^=\F^%6WQ4)2%?KF8]-]+ M.6%541=5\4/F%Y.S"6L?F^?;1A4_FEJ+,LE44Y87$VM_XZM4NLA^*DXZR%0\ MM'V)%@\K84 N)OZ9J7!=J%;W3_3U"\/X39J']U<[W5P7I99J)K2\4M].RI9=H!U^UALVPFK124O M)H='F*ASQFMM&HE%];XJ\VSWIN:GHWS_UMK@@C94YX6YH:*\!Z>##!=QLIA' MLR#E,W85S(,XY"RYY3Q- *"- -I' V0G2P$@'032>4?()#4?=SPV@(MKMECR M%8!T$4CWB)#_V #20R"]HT&&07(+('T$TC\:9'(;P.[^@$!^H(5,HILXNH[" M($Y9$(:+^SB-XANV-.!AQ.'H_HA ?J2%#,(O]U$2I9%I44#T"2'Z1$NTXE]Y M?,_9BH<+TX =&8S49UBH/J-%BV*#EBY6P]ZS4'L0Z^-FL9C]& M\A6+XC2(;Z*K.6)T$W)-G2) (#,DP'%K$/@B3AK[TY MCX*K:&["!D_8+9_/V/4"^L#"A& 1&V'%Y[VQEL$J_9NE*]."0?@V]%J8#2QB M'23\IAL8S)AU$#LP'UC$0D ].DB;;$P.-K$<<$P'8F+"L(F% 87/3LRLK93M M[Q .G6H0:V+$_:.,F#YL8GV )&"4#;.&36P--!L8#A5,)#:Q2+IL8+3M,(?8 MY',*)"U@)Q 3 MS+>5R(5B$!,SC4-LFC>8RYW*'D4KV5*9OVD86-"V M4D-,S#T.L7M^V>GABRAW%<3$+.2\XYK63YT^R((7DIRPVO]8*DWM 3,Q"+K&%QC&C.BMWN6QA0'(Q"[E'F.&8\=/46HE,#S Q M"[G$%AK'#/*\Z!Z%FSXNNJ%"ODH&YF(SJ451#I)A%W./2^P>?#(&%P1 ^9K/F0HQ6:CY,;@L*TJ(";F M'N\=-F%Z=3^S4$D3REE@*&5_1,)$3XB)N<B/K!>BZP_YP(Q M,?=XQ.X9^=\L:BV5;#53 N;L'KJ=_QYK;4/,M2@4^V8R=LE@^N9A%O*.NOIV M"C$Q"WG$%D(QAT6#[J3/!C@/B8?GU@^O]Y)[L<1Q,3DXQ/+9[A9,3; T4-DQ,X9T)TRT2VU M&87GW.Y+FJ9QZ;Z MUI1GHLR6BG4?^X-"KM=M^*]W91F:LD4];T1^.,%[.'U\^2]02P,$% @ M-X0+51;=:Q0F @ 8R@ !H !X;"]?8@DCEQN ;OO* R28_6@)\AG M9)4M7_^C3U;9CR]EWPZ[[EBWNU.=?1[VQ[ILML-P^I5276W+H:UWW:DSIR]?IW*_TSLUNO=JOSN5G\.Y3C\ M8W#ZZ/KWNBUE:&:O;;\IP[))G_OKZ9HNAWQWGMS,GM^63?_\EILT=9! D$P? MI!"DTP<9!-GT00Y!/GU00%!,'[2 H,7T0?<0=#]]T ,$/4P?E.$.Q/(G9'N3&!W1KPS@=Z" M>@N!WH)Z"X'>,GK9)M!;4&\AT%M0;R'06U!O(=!;4&\AT%M0;R'06U!O(=!; M4&\AT%M1;R706U%O)=!;46\ET%M'FR4$>BOJK01Z*^JM!'HKZJT$>BOJK01Z M*^JM!'HKZJT$>AOJ;01Z&^IM!'H;ZFT$>AOJ;01ZVVBSFT!O0[V-0&]#O8U M;T.]C4!O0[V-0&]#O8U ;T>]G4!O1[V=0&]'O9U ;T>]G4!O1[V=0&\??:PD MT-M1;R?0VU%O)]#;46\GT-M1;R?0.U#O(- [4.\@T#M0[R#0.U#O(- [4.\@ MT#M0[R#0.T8_FQ#H':AW$.@=J'?\I-YU^-J7>NWY7N/S?Y+JX7QON3[^LOP^ MB1(N+CBGVXKZ]!=02P,$% @ -X0+5>'L7A'T 0 HB< !, !;0V]N M=&5N=%]4>7!E&ULS=K+3L,P$ 707ZFR18WK)P_1;H ML. '3#*E49/8 MLETH?X^3 A((*E"1N)M&K>VY$X]T5CV_>_84)]NN[>.\6*7DSQB+U8HZ&TOG MJ<\K2QTM)LV3:ZV^>?8N'Y> M!&IC,;G8;1RRYH7UOFTJF_(Z>^SK3RG3UX0RGQSWQ%7CXU'>4+ O$X:5[P-> MS]T\4@A-39-;&]*U[?(NMFU93,\MQ7)_B2]Z=,ME4U'MJDV7CY31![)U7!&E MKBUW18_V)Z=\P[3[Y ?GCV7V!>:=M\'YF"<6Z/=Q;R,93D]]+D0A-?M?\3TQ MES[X_6B8=DWU#[/S]3ZYL![G$=GX./R./\[XO?XO^Q @?4B0/A1('QJD#P/2 MQS%('R<@?9R"],%G*(V@B,I12.4HIG(45#F*JAR%58[B*D>!E:/(*E!D%2BR M"A19!8JL D56@2*K0)%5H,@J4&05*+)*%%DEBJP215:)(JM$D56BR"I19)4H MLDH4626*K I%5H4BJT*15:'(JE!D52BR*A19%8JL"D56A2*K1I%5H\BJ4635 M*+)J%%DUBJP:15:-(JM&D56CR&I09#4HLAH460V*K 9%5H,BJT&1U:#(:OY3 MUGOGUG\ %02P$"% ,4 " WA M5!T%-8H$ "Q M $ @ $ 9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0 M ( #>$"U6#FJ8D[0 "L" 1 " :\ !D;V-0$"U697)PC$ 8 )PG 3 M " &UL4$L! A0#% @ -X0+ M58_'+1?Z!0 \!\ !@ ("!# @ 'AL+W=O$"U4$^&B![@8 *T= 8 M " @3P. !X;"]W;W)K&PO=V]R:W-H M965T&UL4$L! A0#% @ -X0+5$"U6I*XN"1@, $+ 8 " @?$@ !X;"]W M;W)K&PO=V]R:W-H965T&UL M4$L! A0#% @ -X0+5449,>.N"@ _%P !@ ("!T"P M 'AL+W=O$"U7_"=SW MFA8 '1% 8 " @;0W !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ -X0+ M5?";$_,'!0 S0T !D ("!=E< 'AL+W=O:TXJ\" !I!@ &0 M @(&T7 >&PO=V]R:W-H965T$"U7X\$'0N@8 $X5 9 " @9I? !X;"]W;W)K M&UL4$L! A0#% @ -X0+5? &PO=V]R:W-H965T$"U62UQ45 ME 0 .(* 9 " @1^$ !X;"]W;W)K&UL4$L! A0#% @ -X0+58R2I\EY!P =!0 !D M ("!ZH@ 'AL+W=O&PO=V]R:W-H965T M$"U5!JP"&UL4$L! A0# M% @ -X0+59_SN)JX P 4@H !D ("!\)< 'AL+W=O M&PO=V]R:W-H965T$"U6N,+W;?@0 )H1 9 " @7FS M !X;"]W;W)K&UL4$L! A0#% @ -X0+55^. M.YRI! P1( !D ("!+K@ 'AL+W=O&PO=V]R:W-H965T$"U77/H0'E@( (& 9 " @9W !X;"]W;W)K&UL4$L! A0#% @ -X0+59?V$C'W! J! !D M ("!:L, 'AL+W=O&PO M=V]R:W-H965T$"U6>9+X>AP( M , % 9 " @=#, !X;"]W;W)K&UL4$L! A0#% @ -X0+57+O45;^ @ QP@ !D ("! MCL\ 'AL+W=O7<% [* &0 @('#T@ >&PO=V]R:W-H965T$"U6'TD& !P, /L+ 9 M " @7'8 !X;"]W;W)K&UL4$L! A0#% M @ -X0+5>\8RB9Z @ \@4 !D ("!K]L 'AL+W=O&PO=V]R:W-H965T$"U7-?03+F@0 #D8 9 " @>#A !X M;"]W;W)K&UL4$L! A0#% @ -X0+5?"=1>C% M @ S@@ !D ("!L>8 'AL+W=O&PO=V]R:W-H965T$ M"U6;LXR[Y04 )PK 9 " @43M !X;"]W;W)K&UL4$L! A0#% @ -X0+59 9!8D$ P 80L !D M ("!8/, 'AL+W=O&PO=V]R M:W-H965T$"U5-W[G@.@4 ($A M 9 " @5CZ !X;"]W;W)K&UL M4$L! A0#% @ -X0+57B69RGU @ T@H !D ("!R?\ M 'AL+W=O&PO=V]R:W-H965T$"U5JBF[8:P, ,$/ 9 M " @;,' 0!X;"]W;W)K&UL4$L! A0#% @ M-X0+552!CR.R @ W0< !D ("!50L! 'AL+W=O," !6"0 &0 M @($^#@$ >&PO=V]R:W-H965T$"U4D5UT!A@( ,$& 9 " @5@1 0!X;"]W M;W)K&UL4$L! A0#% @ -X0+5>GZ>;0B!0 MQ"( !D ("!%10! 'AL+W=O&PO=V]R:W-H965T$"U6F M#&80:P4 %(? 9 " @0<< 0!X;"]W;W)K&UL4$L! A0#% @ -X0+5?WDE9/> @ ]0@ !D M ("!J2$! 'AL+W=O&PO=V]R:W-H M965T$"U6E;MH$IP, /80 9 M " @>HG 0!X;"]W;W)K&UL4$L! M A0#% @ -X0+54>V>65_ @ T@8 !D ("!R"L! 'AL M+W=O&PO=V]R:W-H965T$"U4!0W6\*P4 +LK 9 " M@>0U 0!X;"]W;W)K&UL4$L! A0#% @ -X0+ M57I=])A! @ , 4 !D ("!1CL! 'AL+W=O&PO=V]R:W-H965T$"U7RRN0RH ( *$' 9 " @3!" 0!X;"]W;W)K M&UL4$L! A0#% @ -X0+51/N7!>3 @ SP< M !D ("!!T4! 'AL+W=O&PO=V]R:W-H965T$"U4J%R.6 MJP( .4( 9 " @<5* 0!X;"]W;W)K&UL4$L! A0#% @ -X0+58:;;%97 P "@T !D M ("!ITT! 'AL+W=O'Z # # #0 &0 @($U40$ >&PO=V]R:W-H965T M$"U4X40$,X ( (T) 9 M " @0Q5 0!X;"]W;W)K&UL4$L! A0# M% @ -X0+50B_5U/. @ ^ @ !D ("!(U@! 'AL+W=O M&PO=V]R:W-H965T$"U6PTXFQ#P( (4$ 9 " @2U? M 0!X;"]W;W)K&UL4$L! A0#% @ -X0+5?N) M%6?/! &QX !D ("!&PO=V]R:W-H965T$"U7'C3B@.@, -03 - " 0QI 0!X;"]S='EL97,N M>&UL4$L! A0#% @ -X0+59>*NQS $P( L ( ! M<6P! %]R96QS+RYR96QS4$L! A0#% @ -X0+51(?!?J"!0 2T \ M ( !6FT! 'AL+W=O$ M"U46W6L4)@( &,H : " 0ES 0!X;"]?$"U7A[%X1] $ *(G 3 M " 6=U 0!;0V]N=&5N=%]4>7!E&UL4$L%!@ !, $P *RQ0 (QW 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.22.2 html 194 305 1 false 58 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 - CONSOLIDATED BALANCE SHEETS Sheet http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical) Sheet http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical CONSOLIDATED BALANCE SHEETS (Parenthetical) Statements 3 false false R4.htm 00200 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS) Sheet http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS) Statements 4 false false R5.htm 00205 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS) (Parenthetical) Sheet http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLossParenthetical CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS) (Parenthetical) Statements 5 false false R6.htm 00300 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 00400 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS EQUITY (DEFICIT) Sheet http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit CONSOLIDATED STATEMENTS OF SHAREHOLDERS EQUITY (DEFICIT) Statements 7 false false R8.htm 10101 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPolicies SIGNIFICANT ACCOUNTING POLICIES Notes 8 false false R9.htm 10201 - Disclosure - ACQUISITIONS Sheet http://www.cadre-holdings.com/role/DisclosureAcquisitions ACQUISITIONS Notes 9 false false R10.htm 10301 - Disclosure - REVENUE RECOGNITION Sheet http://www.cadre-holdings.com/role/DisclosureRevenueRecognition REVENUE RECOGNITION Notes 10 false false R11.htm 10401 - Disclosure - INVENTORIES Sheet http://www.cadre-holdings.com/role/DisclosureInventories INVENTORIES Notes 11 false false R12.htm 10501 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS Sheet http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssets GOODWILL AND OTHER INTANGIBLE ASSETS Notes 12 false false R13.htm 10601 - Disclosure - DEBT Sheet http://www.cadre-holdings.com/role/DisclosureDebt DEBT Notes 13 false false R14.htm 10701 - Disclosure - COMMITMENTS AND CONTINGENCIES Sheet http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingencies COMMITMENTS AND CONTINGENCIES Notes 14 false false R15.htm 10801 - Disclosure - INCOME TAXES Sheet http://www.cadre-holdings.com/role/DisclosureIncomeTaxes INCOME TAXES Notes 15 false false R16.htm 10901 - Disclosure - COMPENSATION PLANS Sheet http://www.cadre-holdings.com/role/DisclosureCompensationPlans COMPENSATION PLANS Notes 16 false false R17.htm 11001 - Disclosure - ASSETS AND LIABILITIES HELD FOR SALE Sheet http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSale ASSETS AND LIABILITIES HELD FOR SALE Notes 17 false false R18.htm 11101 - Disclosure - RELATED PARTY TRANSACTIONS Sheet http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactions RELATED PARTY TRANSACTIONS Notes 18 false false R19.htm 11201 - Disclosure - SEGMENT DATA Sheet http://www.cadre-holdings.com/role/DisclosureSegmentData SEGMENT DATA Notes 19 false false R20.htm 20102 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies) Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies SIGNIFICANT ACCOUNTING POLICIES (Policies) Policies 20 false false R21.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 21 false false R22.htm 30203 - Disclosure - ACQUISITIONS (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables ACQUISITIONS (Tables) Tables http://www.cadre-holdings.com/role/DisclosureAcquisitions 22 false false R23.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 23 false false R24.htm 30403 - Disclosure - INVENTORIES (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureInventoriesTables INVENTORIES (Tables) Tables http://www.cadre-holdings.com/role/DisclosureInventories 24 false false R25.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 25 false false R26.htm 30603 - Disclosure - DEBT (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureDebtTables DEBT (Tables) Tables http://www.cadre-holdings.com/role/DisclosureDebt 26 false false R27.htm 30703 - Disclosure - COMMITMENTS AND CONTINGENCIES (Tables) Sheet http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesTables COMMITMENTS AND CONTINGENCIES (Tables) Tables http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingencies 27 false false R28.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 28 false false R29.htm 40101 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Additional Information (Details) Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails SIGNIFICANT ACCOUNTING POLICIES - Additional Information (Details) Details 29 false false R30.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 30 false false R31.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 31 false false R32.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 32 false false R33.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 33 false false R34.htm 40106 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Adopted Accounting Pronouncement (Details) Sheet http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails SIGNIFICANT ACCOUNTING POLICIES - Adopted Accounting Pronouncement (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 finite lived intangible assets (Details) Sheet http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails GOODWILL AND OTHER INTANGIBLE ASSETS - Amortization expense for finite 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 - New Credit Agreement (Details) Sheet http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails DEBT - New Credit Agreement (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 40702 - Disclosure - COMMITMENTS AND CONTINGENCIES - Leases (Details) Sheet http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesLeasesDetails COMMITMENTS AND CONTINGENCIES - Leases (Details) Details 58 false false R59.htm 40703 - Disclosure - COMMITMENTS AND CONTINGENCIES - Future minimum lease payments required under non-cancelable operating leases and capital lease agreements (Details) Sheet http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails COMMITMENTS AND CONTINGENCIES - Future minimum lease payments required under non-cancelable operating leases and capital lease agreements (Details) Details 59 false false R60.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 60 false false R61.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 61 false false R62.htm 40902 - Disclosure - COMPENSATION PLANS - Executive Compensation Plan (Details) Sheet http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails COMPENSATION PLANS - Executive Compensation Plan (Details) Details 62 false false R63.htm 40903 - Disclosure - COMPENSATION PLANS - Stock Incentive Plan (Details) Sheet http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails COMPENSATION PLANS - Stock Incentive Plan (Details) Details 63 false false R64.htm 41001 - Disclosure - ASSETS AND LIABILITIES HELD FOR SALE (Details) Sheet http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails ASSETS AND LIABILITIES HELD FOR SALE (Details) Details http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSale 64 false false R65.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 65 false false R66.htm 41201 - Disclosure - SEGMENT DATA (Details) Sheet http://www.cadre-holdings.com/role/DisclosureSegmentDataDetails SEGMENT DATA (Details) Details http://www.cadre-holdings.com/role/DisclosureSegmentDataTables 66 false false R67.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 67 false false R68.htm 9941301 - Disclosure - SUBSEQUENT EVENTS (Details) Sheet http://www.cadre-holdings.com/role/DisclosureSubsequentEventsDetails SUBSEQUENT EVENTS (Details) Details 68 false false All Reports Book All Reports cdre-20220630x10q.htm cdre-20220630.xsd cdre-20220630_cal.xml cdre-20220630_def.xml cdre-20220630_lab.xml cdre-20220630_pre.xml cdre-20220630xex31d1.htm cdre-20220630xex31d2.htm cdre-20220630xex32d1.htm cdre-20220630xex32d2.htm http://fasb.org/us-gaap/2021-01-31 http://xbrl.sec.gov/dei/2021q4 true true JSON 86 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "cdre-20220630x10q.htm": { "axisCustom": 0, "axisStandard": 30, "contextCount": 194, "dts": { "calculationLink": { "local": [ "cdre-20220630_cal.xml" ] }, "definitionLink": { "local": [ "cdre-20220630_def.xml" ] }, "inline": { "local": [ "cdre-20220630x10q.htm" ] }, "labelLink": { "local": [ "cdre-20220630_lab.xml" ] }, "presentationLink": { "local": [ "cdre-20220630_pre.xml" ] }, "schema": { "local": [ "cdre-20220630.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://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd", "https://xbrl.fasb.org/srt/2021/elts/srt-roles-2021-01-31.xsd", "https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd", "https://xbrl.sec.gov/country/2021/country-2021.xsd", "https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd" ] } }, "elementCount": 512, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2021-01-31": 10, "http://www.cadre-holdings.com/20220630": 3, "http://xbrl.sec.gov/dei/2021q4": 5, "total": 18 }, "keyCustom": 39, "keyStandard": 266, "memberCustom": 22, "memberStandard": 33, "nsprefix": "cdre", "nsuri": "http://www.cadre-holdings.com/20220630", "report": { "R1": { "firstAnchor": { "ancestors": [ "p", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "00090 - Document - Document and Entity Information", "role": "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation", "shortName": "Document and Entity Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10301 - Disclosure - REVENUE RECOGNITION", "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognition", "shortName": "REVENUE RECOGNITION", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10401 - Disclosure - INVENTORIES", "role": "http://www.cadre-holdings.com/role/DisclosureInventories", "shortName": "INVENTORIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10501 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS", "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssets", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10601 - Disclosure - DEBT", "role": "http://www.cadre-holdings.com/role/DisclosureDebt", "shortName": "DEBT", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10701 - Disclosure - COMMITMENTS AND CONTINGENCIES", "role": "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingencies", "shortName": "COMMITMENTS AND CONTINGENCIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10801 - Disclosure - INCOME TAXES", "role": "http://www.cadre-holdings.com/role/DisclosureIncomeTaxes", "shortName": "INCOME TAXES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "cdre:CompensationPlansTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10901 - Disclosure - COMPENSATION PLANS", "role": "http://www.cadre-holdings.com/role/DisclosureCompensationPlans", "shortName": "COMPENSATION PLANS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "cdre:CompensationPlansTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11001 - Disclosure - ASSETS AND LIABILITIES HELD FOR SALE", "role": "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSale", "shortName": "ASSETS AND LIABILITIES HELD FOR SALE", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11101 - Disclosure - RELATED PARTY TRANSACTIONS", "role": "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactions", "shortName": "RELATED PARTY TRANSACTIONS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "11201 - Disclosure - SEGMENT DATA", "role": "http://www.cadre-holdings.com/role/DisclosureSegmentData", "shortName": "SEGMENT DATA", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashCashEquivalentsAndShortTermInvestments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00100 - Statement - CONSOLIDATED BALANCE SHEETS", "role": "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets", "shortName": "CONSOLIDATED BALANCE SHEETS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashCashEquivalentsAndShortTermInvestments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "20102 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)", "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies", "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30103 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)", "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTables", "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_V5lfCzVnRkqjQTdaC2GWpg", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30203 - Disclosure - ACQUISITIONS (Tables)", "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables", "shortName": "ACQUISITIONS (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_V5lfCzVnRkqjQTdaC2GWpg", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30303 - Disclosure - REVENUE RECOGNITION (Tables)", "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionTables", "shortName": "REVENUE RECOGNITION (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30403 - Disclosure - INVENTORIES (Tables)", "role": "http://www.cadre-holdings.com/role/DisclosureInventoriesTables", "shortName": "INVENTORIES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30503 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS (Tables)", "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsTables", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30603 - Disclosure - DEBT (Tables)", "role": "http://www.cadre-holdings.com/role/DisclosureDebtTables", "shortName": "DEBT (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "30703 - Disclosure - COMMITMENTS AND CONTINGENCIES (Tables)", "role": "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesTables", "shortName": "COMMITMENTS AND CONTINGENCIES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "31203 - Disclosure - SEGMENT DATA (Tables)", "role": "http://www.cadre-holdings.com/role/DisclosureSegmentDataTables", "shortName": "SEGMENT DATA (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "p", "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "INF", "first": true, "lang": null, "name": "cdre:NumberOfManufacturingPlants", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_item_bhhCkbGL8USNHOQvQq5BNw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40101 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Additional Information (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "us-gaap:SignificantAccountingPoliciesTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "INF", "first": true, "lang": null, "name": "cdre:NumberOfManufacturingPlants", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_item_bhhCkbGL8USNHOQvQq5BNw", "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00105 - Statement - CONSOLIDATED BALANCE SHEETS (Parenthetical)", "role": "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical", "shortName": "CONSOLIDATED BALANCE SHEETS (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_CarryingReportedAmountFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_19A06t3F60SIkpgyaUpwSQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AssetsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40102 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Assets and liabilities measured at fair value on a recurring basis (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Assets and liabilities measured at fair value on a recurring basis (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_FairValueByMeasurementBasisAxis_us-gaap_CarryingReportedAmountFairValueDisclosureMember_us-gaap_FairValueByMeasurementFrequencyAxis_us-gaap_FairValueMeasurementsRecurringMember_19A06t3F60SIkpgyaUpwSQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AssetsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "cdre:FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount", "p", "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "-3", "first": true, "lang": null, "name": "cdre:FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40103 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Transfers of assets or liabilities (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTransfersOfAssetsOrLiabilitiesDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Transfers of assets or liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "cdre:FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount", "p", "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "-3", "first": true, "lang": null, "name": "cdre:FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "us-gaap:StandardProductWarrantyPolicy", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_3_31_2022_dCpXQNaRYEqWY4hewIWQLQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProductWarrantyAccrual", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40104 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Accrued warranties and related costs (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAccruedWarrantiesAndRelatedCostsDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Accrued warranties and related costs (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "us-gaap:StandardProductWarrantyPolicy", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_3_31_2022_dCpXQNaRYEqWY4hewIWQLQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProductWarrantyAccrual", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerSharePolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40105 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Weighted average shares outstanding and net income (loss) per share (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Weighted average shares outstanding and net income (loss) per share (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerSharePolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "p", "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_1_1_2022_srt_RangeAxis_srt_MinimumMember_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member_QlIOwgd2GEGPYaTGQvNSiQ", "decimals": "-3", "first": true, "lang": null, "name": "cdre:EstimatedRightOfUseAssetUponAdoptionOfNewAccountingStandard", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40106 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Adopted Accounting Pronouncement (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Adopted Accounting Pronouncement (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_1_1_2022_srt_RangeAxis_srt_MinimumMember_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate201602Member_QlIOwgd2GEGPYaTGQvNSiQ", "decimals": "-3", "first": true, "lang": null, "name": "cdre:EstimatedRightOfUseAssetUponAdoptionOfNewAccountingStandard", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40201 - Disclosure - ACQUISITIONS - Summary - Radar (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails", "shortName": "ACQUISITIONS - Summary - Radar (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_V5lfCzVnRkqjQTdaC2GWpg", "decimals": "-3", "lang": null, "name": "cdre:BusinessCombinationAcquisitionRelatedCostsAggregate", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40202 - Disclosure - ACQUISITIONS - Purchase Price Consideration and Fair Value - Radar (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails", "shortName": "ACQUISITIONS - Purchase Price Consideration and Fair Value - Radar (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_1_11_2022_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_j9nKJJOqjEqslQs_wrYo1A", "decimals": "-3", "lang": null, "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_11_2022_To_1_11_2022_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_I8DjQ1uhu0Sw0oQFAIAXeA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40203 - Disclosure - ACQUISITIONS - Intangible Assets - Radar (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "shortName": "ACQUISITIONS - Intangible Assets - Radar (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_11_2022_To_1_11_2022_us-gaap_BusinessAcquisitionAxis_cdre_RadarLeatherDivisionS.r.lMember_I8DjQ1uhu0Sw0oQFAIAXeA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40204 - Disclosure - ACQUISITIONS - Summary - Cyalume (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "shortName": "ACQUISITIONS - Summary - Cyalume (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_us-gaap_BusinessAcquisitionAxis_cdre_CyalumeAcquisitionMember_1wk5YfN8EUO5DkWTqNeBDQ", "decimals": "-3", "lang": null, "name": "us-gaap:BusinessCombinationAcquisitionRelatedCosts", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40205 - Disclosure - ACQUISITIONS - Purchase Price Consideration and Fair Value - Cyalume (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "shortName": "ACQUISITIONS - Purchase Price Consideration and Fair Value - Cyalume (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_5_4_2022_us-gaap_BusinessAcquisitionAxis_cdre_CyalumeAcquisitionMember_JSgM-todzU2hVcnrwpvKPg", "decimals": "-3", "lang": null, "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00200 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS)", "role": "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss", "shortName": "CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "lang": null, "name": "us-gaap:SellingGeneralAndAdministrativeExpense", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_5_4_2022_To_5_4_2022_us-gaap_BusinessAcquisitionAxis_cdre_CyalumeAcquisitionMember_0w5V4-S91EKhbmhT5gjf-w", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40206 - Disclosure - ACQUISITIONS - Intangible Assets - Cyalume (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "shortName": "ACQUISITIONS - Intangible Assets - Cyalume (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_5_4_2022_To_5_4_2022_us-gaap_BusinessAcquisitionAxis_cdre_CyalumeAcquisitionMember_0w5V4-S91EKhbmhT5gjf-w", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40301 - Disclosure - REVENUE RECOGNITION - Net sales by channel and geography (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails", "shortName": "REVENUE RECOGNITION - Net sales by channel and geography (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_us-gaap_ContractWithCustomerSalesChannelAxis_cdre_U.s.stateAndLocalAgenciesMember_LV0QHt7pGECXZRgU-LHhYg", "decimals": "-3", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40302 - Disclosure - REVENUE RECOGNITION - Includes all Distribution sales (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails", "shortName": "REVENUE RECOGNITION - Includes all Distribution sales (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_srt_StatementGeographicalAxis_country_US_0nOP7Zuy6U-uLFKeqgV45g", "decimals": "-3", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityCurrent", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40303 - Disclosure - REVENUE RECOGNITION - Contract Liabilities (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionContractLiabilitiesDetails", "shortName": "REVENUE RECOGNITION - Contract Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_12_31_2021_kfv8CQsrhUWsub8GxPLYFw", "decimals": "-3", "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40304 - Disclosure - REVENUE RECOGNITION - Additional information (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails", "shortName": "REVENUE RECOGNITION - Additional information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InventoryFinishedGoodsAndWorkInProcessNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40401 - Disclosure - INVENTORIES (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails", "shortName": "INVENTORIES (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InventoryFinishedGoodsAndWorkInProcessNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfGoodwillTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_3_31_2022_dCpXQNaRYEqWY4hewIWQLQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40501 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of changes in goodwill (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of changes in goodwill (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfGoodwillTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "lang": null, "name": "us-gaap:GoodwillForeignCurrencyTranslationGainLoss", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "p", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:GoodwillGross", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40502 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Impairment of Goodwill (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsImpairmentOfGoodwillDetails", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS - Impairment of Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:GoodwillGross", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "cdre:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40503 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of intangible assets (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS - Summary of intangible assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "cdre:ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AmortizationOfIntangibleAssets", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40504 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Additional information (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAdditionalInformationDetails", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS - Additional information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AmortizationOfIntangibleAssets", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "p", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00205 - Statement - CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS) (Parenthetical)", "role": "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLossParenthetical", "shortName": "CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS) (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "p", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40505 - Disclosure - GOODWILL AND OTHER INTANGIBLE ASSETS - Amortization expense for finite lived intangible assets (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails", "shortName": "GOODWILL AND OTHER INTANGIBLE ASSETS - Amortization expense for finite lived intangible assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ShortTermBorrowings", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40601 - Disclosure - DEBT - Schedule of company's debt (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails", "shortName": "DEBT - Schedule of company's debt (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ShortTermBorrowings", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40602 - Disclosure - DEBT - Summary of aggregate principal payment of long-term debt (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails", "shortName": "DEBT - Summary of aggregate principal payment of long-term debt (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_12_31_2021_kfv8CQsrhUWsub8GxPLYFw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DebtInstrumentCarryingAmount", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40603 - Disclosure - DEBT - New Credit Agreement (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails", "shortName": "DEBT - New Credit Agreement (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_10_1_2021_To_12_31_2021_us-gaap_DebtInstrumentAxis_cdre_NewCreditAgreementAugust2021Member_Cq2NGYAI3EeM60W-LaznMQ", "decimals": "2", "lang": null, "name": "cdre:DebtInstrumentFixedChargeCoverageRatioThreshold", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_0dNKed2SykGgMV6XJBglcA", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_srt_RangeAxis_srt_MinimumMember_us-gaap_DebtInstrumentAxis_cdre_CanadianCreditFacilityMember_MpI3WQV7nU600ZCD9FEivg", "decimals": "5", "first": true, "lang": null, "name": "us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_0dNKed2SykGgMV6XJBglcA", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40604 - Disclosure - DEBT - Canadian Credit Facility (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "shortName": "DEBT - Canadian Credit Facility (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_srt_RangeAxis_srt_MinimumMember_us-gaap_DebtInstrumentAxis_cdre_CanadianCreditFacilityMember_MpI3WQV7nU600ZCD9FEivg", "decimals": "5", "first": true, "lang": null, "name": "us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_0dNKed2SykGgMV6XJBglcA", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "cdre:ScheduleOfInterestRateSwapsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_4VY0YLkL2EyCVberuR9SKw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DerivativeNotionalAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40605 - Disclosure - DEBT - Schedule of interest rate swaps (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails", "shortName": "DEBT - Schedule of interest rate swaps (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "cdre:ScheduleOfInterestRateSwapsTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_4VY0YLkL2EyCVberuR9SKw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DerivativeNotionalAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AociLossCashFlowHedgeCumulativeGainLossAfterTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40606 - Disclosure - DEBT - Schedule of fair value swap agreement (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails", "shortName": "DEBT - Schedule of fair value swap agreement (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_12_31_2021_kfv8CQsrhUWsub8GxPLYFw", "decimals": "-3", "lang": null, "name": "us-gaap:AociLossCashFlowHedgeCumulativeGainLossAfterTax", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_9_1_2021_To_9_30_2021_2hzAYjvmZkepaK5qTliNmA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LossContingencyDamagesAwardedValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40701 - Disclosure - COMMITMENTS AND CONTINGENCIES - Legal Proceedings (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails", "shortName": "COMMITMENTS AND CONTINGENCIES - Legal Proceedings (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_9_1_2021_To_9_30_2021_2hzAYjvmZkepaK5qTliNmA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LossContingencyDamagesAwardedValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseExpense", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40702 - Disclosure - COMMITMENTS AND CONTINGENCIES - Leases (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesLeasesDetails", "shortName": "COMMITMENTS AND CONTINGENCIES - Leases (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseExpense", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40703 - Disclosure - COMMITMENTS AND CONTINGENCIES - Future minimum lease payments required under non-cancelable operating leases and capital lease agreements (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails", "shortName": "COMMITMENTS AND CONTINGENCIES - Future minimum lease payments required under non-cancelable operating leases and capital lease agreements (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00300 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS", "role": "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DeferredTaxAssetsValuationAllowance", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40801 - Disclosure - INCOME TAXES (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureIncomeTaxesDetails", "shortName": "INCOME TAXES (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "3", "lang": null, "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_0dNKed2SykGgMV6XJBglcA", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "span", "p", "cdre:CompensationPlansTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_3_31_2021_To_3_31_2021_us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTypeOfDeferredCompensationAxis_cdre_LongTermIncentivePlanMember_fs8q3-9bs0aZFx3OqtfkuQ", "decimals": "INF", "first": true, "lang": null, "name": "cdre:NumberOfEqualInstallments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_installment_wZQXpNvuFUiQM06t6JiiwA", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40901 - Disclosure - COMPENSATION PLANS - Long-Term Incentive Plan (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails", "shortName": "COMPENSATION PLANS - Long-Term Incentive Plan (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "cdre:CompensationPlansTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_3_31_2021_To_3_31_2021_us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTypeOfDeferredCompensationAxis_cdre_LongTermIncentivePlanMember_fs8q3-9bs0aZFx3OqtfkuQ", "decimals": "INF", "first": true, "lang": null, "name": "cdre:NumberOfEqualInstallments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_installment_wZQXpNvuFUiQM06t6JiiwA", "xsiNil": "false" } }, "R62": { "firstAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_cdre_ExecutiveCompensationPlanMember_bTrSQB_GREe7Qk8SjPlC-A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40902 - Disclosure - COMPENSATION PLANS - Executive Compensation Plan (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails", "shortName": "COMPENSATION PLANS - Executive Compensation Plan (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis_cdre_ExecutiveCompensationPlanMember_bTrSQB_GREe7Qk8SjPlC-A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DeferredCompensationArrangementWithIndividualCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R63": { "firstAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_3_9_2022_To_3_9_2022_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember_us-gaap_PlanNameAxis_cdre_StockIncentivePlan2021Member_Nfu1VW24H0i71nphHcGs6A", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_h3TpccStg0-7IGeP02FPPw", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "40903 - Disclosure - COMPENSATION PLANS - Stock Incentive Plan (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails", "shortName": "COMPENSATION PLANS - Stock Incentive Plan (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_3_9_2022_To_3_9_2022_us-gaap_AwardTypeAxis_us-gaap_RestrictedStockMember_us-gaap_PlanNameAxis_cdre_StockIncentivePlan2021Member_Nfu1VW24H0i71nphHcGs6A", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_shares_h3TpccStg0-7IGeP02FPPw", "xsiNil": "false" } }, "R64": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_20U4ue1oU0msZpPHlprwLg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41001 - Disclosure - ASSETS AND LIABILITIES HELD FOR SALE (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails", "shortName": "ASSETS AND LIABILITIES HELD FOR SALE (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "us-gaap:DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_6_30_2022_us-gaap_DisposalGroupClassificationAxis_us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_cdre_DaventryUkFacilityMember_xpggyIhTFUOoBWLUhbfP1Q", "decimals": "-3", "lang": null, "name": "us-gaap:AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R65": { "firstAnchor": { "ancestors": [ "p", "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "INF", "first": true, "lang": null, "name": "cdre:NumberOfDistributionWarehousesAndRetailStores", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_warehouse_VNEhtFWEk0-Fg0uZAylngA", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41101 - Disclosure - RELATED PARTY TRANSACTIONS (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails", "shortName": "RELATED PARTY TRANSACTIONS (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "INF", "first": true, "lang": null, "name": "cdre:NumberOfDistributionWarehousesAndRetailStores", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_warehouse_VNEhtFWEk0-Fg0uZAylngA", "xsiNil": "false" } }, "R66": { "firstAnchor": { "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_segment_Er9BZq4ayEGg5v-VeMe5Yg", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41201 - Disclosure - SEGMENT DATA (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureSegmentDataDetails", "shortName": "SEGMENT DATA (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_segment_Er9BZq4ayEGg5v-VeMe5Yg", "xsiNil": "false" } }, "R67": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_4_1_2022_To_6_30_2022_6Ah--Yn-3U6NpbAfr1IwMA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41202 - Disclosure - SEGMENT DATA - asset information or operating expenses by segment (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails", "shortName": "SEGMENT DATA - asset information or operating expenses by segment (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_srt_ConsolidationItemsAxis_us-gaap_MaterialReconcilingItemsMember_nXF8TOH90E6p14IdrS9UIw", "decimals": "-3", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R68": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProceedsFromLinesOfCredit", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9941301 - Disclosure - SUBSEQUENT EVENTS (Details)", "role": "http://www.cadre-holdings.com/role/DisclosureSubsequentEventsDetails", "shortName": "SUBSEQUENT EVENTS (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R7": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "As_Of_12_31_2020_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_6tVXuAoQ70SAD2Dt28UzmA", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "00400 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS EQUITY (DEFICIT)", "role": "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit", "shortName": "CONSOLIDATED STATEMENTS OF SHAREHOLDERS EQUITY (DEFICIT)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2021_To_3_31_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_RetainedEarningsMember_BdLTFApXrkKXupW55EHdTQ", "decimals": "-3", "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_IRYTQIFowkWcW9xi9cWFNQ", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10101 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES", "role": "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPolicies", "shortName": "SIGNIFICANT ACCOUNTING POLICIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "10201 - Disclosure - ACQUISITIONS", "role": "http://www.cadre-holdings.com/role/DisclosureAcquisitions", "shortName": "ACQUISITIONS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "cdre-20220630x10q.htm", "contextRef": "Duration_1_1_2022_To_6_30_2022_2vHg6ejM_UuOwe4H-kFkrw", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 58, "tag": { "cdre_AmortizationOfInventory": { "auth_ref": [], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization expense for inventory.", "label": "Amortization of Inventory", "terseLabel": "Amortization of inventory step-up" } } }, "localname": "AmortizationOfInventory", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "cdre_BusinessCombinationAcquisitionRelatedCostsAggregate": { "auth_ref": [], "crdr": "debit", "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" } } }, "localname": "BusinessCombinationAcquisitionRelatedCostsAggregate", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "xbrltype": "monetaryItemType" }, "cdre_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedLiabilities": { "auth_ref": [], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 3.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0 } }, "crdr": "credit", "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" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAccruedLiabilities", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "cdre_CanadianCreditFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the Canadian Credit Facility.", "label": "Canadian Credit Facility" } } }, "localname": "CanadianCreditFacilityMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "xbrltype": "domainItemType" }, "cdre_CashBasedExecutiveCompensationPlanGrantDateFairValueCommonStock": { "auth_ref": [], "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" } } }, "localname": "CashBasedExecutiveCompensationPlanGrantDateFairValueCommonStock", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "xbrltype": "perShareItemType" }, "cdre_CashBasedExecutiveCompensationPlanNumberOfAwardsExpectedToVest": { "auth_ref": [], "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" } } }, "localname": "CashBasedExecutiveCompensationPlanNumberOfAwardsExpectedToVest", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "xbrltype": "sharesItemType" }, "cdre_CashBasedExecutiveCompensationPlanNumberOfAwardsGranted": { "auth_ref": [], "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" } } }, "localname": "CashBasedExecutiveCompensationPlanNumberOfAwardsGranted", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "xbrltype": "sharesItemType" }, "cdre_CashBasedExecutiveCompensationPlanNumberOfAwardsUnvested": { "auth_ref": [], "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" } } }, "localname": "CashBasedExecutiveCompensationPlanNumberOfAwardsUnvested", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "xbrltype": "sharesItemType" }, "cdre_CashBasedLongTermIncentivePlanCompensationExpense": { "auth_ref": [], "crdr": "debit", "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" } } }, "localname": "CashBasedLongTermIncentivePlanCompensationExpense", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "xbrltype": "monetaryItemType" }, "cdre_CashBasedLongTermIncentivePlanVestingPeriod": { "auth_ref": [], "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" } } }, "localname": "CashBasedLongTermIncentivePlanVestingPeriod", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "xbrltype": "durationItemType" }, "cdre_CommercialMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to commercial.", "label": "Commercial" } } }, "localname": "CommercialMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "xbrltype": "domainItemType" }, "cdre_CompensationPlansTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for compensation plans.", "label": "Compensation Plans [Text Block]", "terseLabel": "COMPENSATION PLANS" } } }, "localname": "CompensationPlansTextBlock", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlans" ], "xbrltype": "textBlockItemType" }, "cdre_CurrentPortionOfTermLoanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The represent information pertaining to current portion of term loan member.", "label": "Current portion of term loan" } } }, "localname": "CurrentPortionOfTermLoanMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "domainItemType" }, "cdre_CyalumeAcquisitionMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the member information pertaining to Cyalume Acquisition.", "label": "Cyalume" } } }, "localname": "CyalumeAcquisitionMember", "nsuri": "http://www.cadre-holdings.com/20220630", "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", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "xbrltype": "domainItemType" }, "cdre_DaventryUkFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information pertaining to a facility located in Daventry, UK.", "label": "Daventry, UK Facility" } } }, "localname": "DaventryUkFacilityMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails" ], "xbrltype": "domainItemType" }, "cdre_DebtInstrumentFixedChargeCoverageRatioThreshold": { "auth_ref": [], "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" } } }, "localname": "DebtInstrumentFixedChargeCoverageRatioThreshold", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "pureItemType" }, "cdre_DebtInstrumentIncreaseInTotalNetLeverageRatioDueToMajorAcquisitions": { "auth_ref": [], "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" } } }, "localname": "DebtInstrumentIncreaseInTotalNetLeverageRatioDueToMajorAcquisitions", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "pureItemType" }, "cdre_DebtInstrumentPercentageOfUpfrontFee": { "auth_ref": [], "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" } } }, "localname": "DebtInstrumentPercentageOfUpfrontFee", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "xbrltype": "percentItemType" }, "cdre_DebtInstrumentTotalNetLeverageRatio": { "auth_ref": [], "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" } } }, "localname": "DebtInstrumentTotalNetLeverageRatio", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "pureItemType" }, "cdre_DeferredTaxLiabilitiesNet": { "auth_ref": [], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.", "label": "Deferred Tax Liabilities Net", "terseLabel": "Deferred tax liabilities" } } }, "localname": "DeferredTaxLiabilitiesNet", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "cdre_DistributionServicesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Distribution assistance, including, but not limited to, marketing and selling fund shares, advertising, printing and mailing of prospectus and sale literature to investor.", "label": "Distribution" } } }, "localname": "DistributionServicesMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails", "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "xbrltype": "domainItemType" }, "cdre_EmergingGrowthCompanyPolicyTextBlock": { "auth_ref": [], "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" } } }, "localname": "EmergingGrowthCompanyPolicyTextBlock", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "cdre_EstimatedLeaseLiabilityUponAdoptionOfNewAccountingStandard": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The estimated lease liability upon adoption of new accounting standard for annual period.", "label": "Estimated Lease Liability, Upon Adoption of New Accounting Standard", "terseLabel": "Estimated lease liability upon adoption of new accounting standard for annual period" } } }, "localname": "EstimatedLeaseLiabilityUponAdoptionOfNewAccountingStandard", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails" ], "xbrltype": "monetaryItemType" }, "cdre_EstimatedRightOfUseAssetUponAdoptionOfNewAccountingStandard": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The estimated right-of-use asset upon adoption of new accounting standard for annual period.", "label": "Estimated Right-of-Use Asset, Upon Adoption of New Accounting Standard", "terseLabel": "Estimated right-of-use asset upon adoption of new accounting standard for annual period" } } }, "localname": "EstimatedRightOfUseAssetUponAdoptionOfNewAccountingStandard", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails" ], "xbrltype": "monetaryItemType" }, "cdre_ExecutiveCompensationPlanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the executive compensation plan.", "label": "Executive Compensation Plan" } } }, "localname": "ExecutiveCompensationPlanMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "xbrltype": "domainItemType" }, "cdre_FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount": { "auth_ref": [], "crdr": "debit", "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" } } }, "localname": "FairValueAssetsAndLiabilitiesTransfersBetweenFairValueMeasurementLevelsAmount", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTransfersOfAssetsOrLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "cdre_FiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite Lived And Indefinite Lived Intangible Assets By Major Class [Line Items]", "terseLabel": "Goodwill and Other Intangible Assets" } } }, "localname": "FiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassLineItems", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "cdre_FiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite Lived And Indefinite Lived Intangible Assets By Major Class [Table]" } } }, "localname": "FiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTable", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "cdre_FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour": { "auth_ref": [], "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails": { "order": 6.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after 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" } } }, "localname": "FiniteLivedIntangibleAssetExpectedAmortizationAfterYearFour", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "cdre_InsurancePremiumFinancingMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The represent information pertaining to insurance premium financing member.", "label": "Insurance premium financing" } } }, "localname": "InsurancePremiumFinancingMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "domainItemType" }, "cdre_InternationalMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to International.", "label": "International" } } }, "localname": "InternationalMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "xbrltype": "domainItemType" }, "cdre_KandersCompanyIncMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the information about Kanders & Company, Inc.", "label": "Kanders & Company, Inc" } } }, "localname": "KandersCompanyIncMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "cdre_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour": { "auth_ref": [], "calculation": { "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails": { "order": 6.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, Payments, Due after Year Four", "terseLabel": "Thereafter" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails" ], "xbrltype": "monetaryItemType" }, "cdre_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour": { "auth_ref": [], "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "order": 6.0, "parentTag": "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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": "Long-Term Debt, Maturities Repayments of Principal, after Year Four", "terseLabel": "Thereafter" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFour", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments": { "auth_ref": [], "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price on total principal payments.", "label": "Long Term Debt Maturities Repayments Of Total Principal Payments", "totalLabel": "Total principal payments" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "cdre_LongTermIncentivePlanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the long-term incentive plan.", "label": "Long-Term Incentive Plan" } } }, "localname": "LongTermIncentivePlanMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "xbrltype": "domainItemType" }, "cdre_LossContingencyNumberOfDaysToFileBrief": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of days to file a response brief by plaintiff.", "label": "Loss Contingency Number of Days to File Brief", "terseLabel": "Number of days to file a response brief" } } }, "localname": "LossContingencyNumberOfDaysToFileBrief", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails" ], "xbrltype": "durationItemType" }, "cdre_LossContingencyNumberOfDaysToReplyOfBriefFile": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of days to reply of brief file.", "label": "Loss Contingency Number of Days to Reply of Brief File", "verboseLabel": "Number of days to file a reply" } } }, "localname": "LossContingencyNumberOfDaysToReplyOfBriefFile", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails" ], "xbrltype": "durationItemType" }, "cdre_NewCreditAgreementAugust2021Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the \"New Credit Agreement\" entered into August 20, 2021.", "label": "New Credit Agreement" } } }, "localname": "NewCreditAgreementAugust2021Member", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "domainItemType" }, "cdre_NumberOfDistributionWarehousesAndRetailStores": { "auth_ref": [], "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" } } }, "localname": "NumberOfDistributionWarehousesAndRetailStores", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails" ], "xbrltype": "integerItemType" }, "cdre_NumberOfEqualInstallments": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of equal installments.", "label": "Number OF Equal Installments", "terseLabel": "Number of equal installments" } } }, "localname": "NumberOfEqualInstallments", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "xbrltype": "integerItemType" }, "cdre_NumberOfManufacturingPlants": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the number of manufacturing plants.", "label": "Number of Manufacturing Plants", "terseLabel": "Number of manufacturing plants" } } }, "localname": "NumberOfManufacturingPlants", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "integerItemType" }, "cdre_OtherLongTermDebtMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The represent information pertaining to other long term debt member.", "label": "Other." } } }, "localname": "OtherLongTermDebtMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "domainItemType" }, "cdre_OtherMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to other sales channel.", "label": "Other" } } }, "localname": "OtherMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "xbrltype": "domainItemType" }, "cdre_PaymentsOfDeferredIssuanceCosts": { "auth_ref": [], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "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" } } }, "localname": "PaymentsOfDeferredIssuanceCosts", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "cdre_PercentageOfCommitmentFee": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Percentage of commitment fee for funds borrowed, under the debt agreement.", "label": "Percentage of Commitment Fee", "terseLabel": "Commitment Fee" } } }, "localname": "PercentageOfCommitmentFee", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "percentItemType" }, "cdre_ProceedsFromIssuanceInitialPublicOfferingNet": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The net proceeds received from entity's first offering of stock to the public.", "label": "Proceeds from Issuance Initial Public Offering, Net", "terseLabel": "Net proceeds from the sale of shares" } } }, "localname": "ProceedsFromIssuanceInitialPublicOfferingNet", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "cdre_ProductsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Article or substance produced by nature, labor or machinery.", "label": "Products" } } }, "localname": "ProductsMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails", "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "xbrltype": "domainItemType" }, "cdre_ProductsWarrantyAccrualPayments": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty.", "label": "Products Warranty Accrual Payments", "terseLabel": "Current period claims" } } }, "localname": "ProductsWarrantyAccrualPayments", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAccruedWarrantiesAndRelatedCostsDetails" ], "xbrltype": "monetaryItemType" }, "cdre_RadarLeatherDivisionS.r.lMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the member information pertaining to Radar Leather Division S.r.l.", "label": "Radar" } } }, "localname": "RadarLeatherDivisionS.r.lMember", "nsuri": "http://www.cadre-holdings.com/20220630", "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" ], "xbrltype": "domainItemType" }, "cdre_RelatedPartyRentExpensesTransactions": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Expenses recognized resulting from transactions (excluding transactions that are eliminated in consolidated or combined financial statements) with related party.", "label": "Related Party Rent Expenses Transactions", "terseLabel": "Rent expense related to leases" } } }, "localname": "RelatedPartyRentExpensesTransactions", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails" ], "xbrltype": "monetaryItemType" }, "cdre_RepaymentsOfInsurancePremiumFinancing": { "auth_ref": [], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "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" } } }, "localname": "RepaymentsOfInsurancePremiumFinancing", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "cdre_ScheduleOfDebtLineItem": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "n/a", "label": "Schedule Of Debt [Line Item]", "terseLabel": "Debt" } } }, "localname": "ScheduleOfDebtLineItem", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "stringItemType" }, "cdre_ScheduleOfDebtTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "n/a", "label": "Schedule Of Debt [Table]" } } }, "localname": "ScheduleOfDebtTable", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "stringItemType" }, "cdre_ScheduleOfEstimatedFairValueOfSwapAgreement": { "auth_ref": [], "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" } } }, "localname": "ScheduleOfEstimatedFairValueOfSwapAgreement", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtTables" ], "xbrltype": "textBlockItemType" }, "cdre_ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock": { "auth_ref": [], "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" } } }, "localname": "ScheduleOfFiniteLivedAndIndefiniteLivedIntangibleAssetsByMajorClassTableTextBlock", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "cdre_ScheduleOfInterestRateSwapsTableTextBlock": { "auth_ref": [], "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" } } }, "localname": "ScheduleOfInterestRateSwapsTableTextBlock", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtTables" ], "xbrltype": "textBlockItemType" }, "cdre_SecondaryOfferingMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Secondary Offering.", "label": "Secondary Offering" } } }, "localname": "SecondaryOfferingMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "cdre_SecondaryOfferingPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for secondary offering.", "label": "Secondary Offering [Policy Text Block]", "terseLabel": "Secondary Offering" } } }, "localname": "SecondaryOfferingPolicyTextBlock", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "cdre_StockIncentivePlan2021Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Stock Incentive Plan 2021.", "label": "Stock Incentive Plan 2021" } } }, "localname": "StockIncentivePlan2021Member", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "domainItemType" }, "cdre_StockSplitAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "No definition available.", "label": "Stock Split [Abstract]", "terseLabel": "Stock Split" } } }, "localname": "StockSplitAbstract", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "cdre_StockSplitPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy pertaining to stock split.", "label": "Stock Split [Policy Text Block]", "terseLabel": "Stock Split" } } }, "localname": "StockSplitPolicyTextBlock", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "cdre_SwingLineLoansMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information pertaining to swing line loans.", "label": "Swing line loans" } } }, "localname": "SwingLineLoansMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "domainItemType" }, "cdre_TermLoanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The represent information pertaining to term loan member.", "label": "Term loan" } } }, "localname": "TermLoanMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails", "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "domainItemType" }, "cdre_U.s.FederalAgenciesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to U.S. federal agencies.", "label": "U.S. federal agencies" } } }, "localname": "U.s.FederalAgenciesMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "xbrltype": "domainItemType" }, "cdre_U.s.stateAndLocalAgenciesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to U.S. state and local agencies.", "label": "U.S. state and local agencies" } } }, "localname": "U.s.stateAndLocalAgenciesMember", "nsuri": "http://www.cadre-holdings.com/20220630", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "xbrltype": "domainItemType" }, "country_US": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "United States" } } }, "localname": "US", "nsuri": "http://xbrl.sec.gov/country/2021", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails" ], "xbrltype": "domainItemType" }, "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area code of city", "label": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_CoverAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Cover page.", "label": "Document and Entity Information [Abstract]" } } }, "localname": "CoverAbstract", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "xbrltype": "stringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "gYearItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.", "label": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r638" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r639" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address State Or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r636" ], "lang": { "en-us": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r636" ], "lang": { "en-us": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityExTransitionPeriod": { "auth_ref": [ "r641" ], "lang": { "en-us": { "role": { "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.", "label": "Entity Ex Transition Period" } } }, "localname": "EntityExTransitionPeriod", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r636" ], "lang": { "en-us": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r640" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r636" ], "lang": { "en-us": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r636" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r636" ], "lang": { "en-us": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r636" ], "lang": { "en-us": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "employerIdItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r635" ], "lang": { "en-us": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Title of 12(b) Security" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r637" ], "lang": { "en-us": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2021q4", "presentation": [ "http://www.cadre-holdings.com/role/DocumentDocumentAndEntityInformation" ], "xbrltype": "tradingSymbolItemType" }, "srt_ConsolidationItemsAxis": { "auth_ref": [ "r137", "r186", "r199", "r200", "r201", "r202", "r204", "r206", "r210", "r290", "r291", "r292", "r293", "r294", "r295", "r297", "r298", "r300", "r302", "r303" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]" } } }, "localname": "ConsolidationItemsAxis", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "xbrltype": "stringItemType" }, "srt_ConsolidationItemsDomain": { "auth_ref": [ "r137", "r186", "r199", "r200", "r201", "r202", "r204", "r206", "r210", "r290", "r291", "r292", "r293", "r294", "r295", "r297", "r298", "r300", "r302", "r303" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]" } } }, "localname": "ConsolidationItemsDomain", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "xbrltype": "domainItemType" }, "srt_MaximumMember": { "auth_ref": [ "r308", "r340", "r391", "r393", "r550", "r551", "r552", "r553", "r554", "r555", "r556", "r607", "r609", "r633", "r634" ], "lang": { "en-us": { "role": { "label": "Maximum" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [ "r308", "r340", "r391", "r393", "r550", "r551", "r552", "r553", "r554", "r555", "r556", "r607", "r609", "r633", "r634" ], "lang": { "en-us": { "role": { "label": "Minimum" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r308", "r340", "r380", "r391", "r393", "r550", "r551", "r552", "r553", "r554", "r555", "r556", "r607", "r609", "r633", "r634" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r308", "r340", "r380", "r391", "r393", "r550", "r551", "r552", "r553", "r554", "r555", "r556", "r607", "r609", "r633", "r634" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails" ], "xbrltype": "domainItemType" }, "srt_SegmentGeographicalDomain": { "auth_ref": [ "r213", "r214", "r365", "r370", "r608", "r624", "r625", "r626", "r627", "r628", "r629", "r630", "r631", "r632" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]" } } }, "localname": "SegmentGeographicalDomain", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails" ], "xbrltype": "domainItemType" }, "srt_StatementGeographicalAxis": { "auth_ref": [ "r213", "r214", "r365", "r370", "r608", "r622", "r624", "r625", "r626", "r627", "r628", "r629", "r630", "r631", "r632" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]" } } }, "localname": "StatementGeographicalAxis", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SIGNIFICANT ACCOUNTING POLICIES" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_AccountingStandardsUpdate201602Member": { "auth_ref": [ "r530" ], "lang": { "en-us": { "role": { "documentation": "Accounting Standards Update 2016-02 Leases (Topic 842).", "label": "Accounting Standards Update 2016-02" } } }, "localname": "AccountingStandardsUpdate201602Member", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r56", "r546" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts Payable, Current", "terseLabel": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableNetCurrent": { "auth_ref": [ "r22", "r38", "r218", "r219" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "terseLabel": "Accounts receivable, net of allowance for doubtful accounts of $817 and $645, respectively" } } }, "localname": "AccountsReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedIncomeTaxesCurrent": { "auth_ref": [ "r33", "r579", "r594" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.", "label": "Accrued Income Taxes, Current", "terseLabel": "Income tax payable" } } }, "localname": "AccruedIncomeTaxesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r61" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Liabilities, Current", "terseLabel": "Accrued liabilities" } } }, "localname": "AccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesMember": { "auth_ref": [ "r61" ], "lang": { "en-us": { "role": { "documentation": "This item represents obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered.", "label": "Accrued liabilities" } } }, "localname": "AccruedLiabilitiesMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "auth_ref": [ "r54", "r266" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "terseLabel": "Property and equipment, accumulated depreciation and amortization" } } }, "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r41", "r79", "r81", "r82", "r596", "r617", "r621" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Accumulated other comprehensive loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r78", "r82", "r90", "r91", "r92", "r139", "r140", "r141", "r464", "r612", "r613", "r646" ], "lang": { "en-us": { "role": { "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.", "label": "Accumulated Other Comprehensive Income Loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "domainItemType" }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Acquired Finite-Lived Intangible Assets [Line Items]", "terseLabel": "ACQUISITIONS" } } }, "localname": "AcquiredFiniteLivedIntangibleAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "auth_ref": [ "r251" ], "lang": { "en-us": { "role": { "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.", "label": "Acquired Finite-lived Intangible Assets, Weighted Average Useful Life", "terseLabel": "Average Useful Life" } } }, "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "xbrltype": "durationItemType" }, "us-gaap_AdditionalPaidInCapital": { "auth_ref": [ "r39", "r414", "r546" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.", "label": "Additional Paid in Capital", "terseLabel": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapital", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r139", "r140", "r141", "r411", "r412", "r413", "r490" ], "lang": { "en-us": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-In Capital" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": { "auth_ref": [ "r0", "r1", "r2", "r3", "r4", "r143", "r144", "r145", "r146", "r156", "r223", "r224", "r226", "r227", "r228", "r229", "r230", "r231", "r289", "r407", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r427", "r428", "r429", "r430", "r482", "r483", "r484", "r485", "r486", "r487", "r488", "r489", "r490", "r491", "r492", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r514", "r535", "r559", "r560", "r561", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r617", "r618", "r619", "r620", "r621", "r642", "r643", "r644", "r645", "r646" ], "lang": { "en-us": { "role": { "documentation": "Information by amendment to accounting standards.", "label": "Accounting Standards Update [Axis]" } } }, "localname": "AdjustmentsForNewAccountingPronouncementsAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r394", "r396", "r416", "r417" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.", "label": "APIC, Share-based Payment Arrangement, Increase for Cost Recognition", "terseLabel": "Stock-based compensation" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "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 to net cash provided by operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AllocatedShareBasedCompensationExpense": { "auth_ref": [ "r396", "r405", "r415" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.", "label": "Share-based Payment Arrangement, Expense", "terseLabel": "Share based compensation expense" } } }, "localname": "AllocatedShareBasedCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails", "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "auth_ref": [ "r45", "r221", "r232" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.", "label": "Accounts Receivable, Allowance for Credit Loss, Current", "terseLabel": "Accounts receivable, allowance for doubtful accounts" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfFinancingCostsAndDiscounts": { "auth_ref": [ "r120", "r328", "r336", "r337", "r528" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization expense attributable to debt discount (premium) and debt issuance costs.", "label": "Amortization of Debt Issuance Costs and Discounts", "terseLabel": "Amortization of original issue discount and debt issue costs" } } }, "localname": "AmortizationOfFinancingCostsAndDiscounts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfIntangibleAssets": { "auth_ref": [ "r120", "r248", "r258" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.", "label": "Amortization of Intangible Assets", "terseLabel": "Amortization expense" } } }, "localname": "AmortizationOfIntangibleAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r169" ], "lang": { "en-us": { "role": { "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "terseLabel": "Anti-dilutive instruments excluded" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "auth_ref": [ "r169" ], "lang": { "en-us": { "role": { "documentation": "Information by type of antidilutive security.", "label": "Antidilutive Securities [Axis]" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "auth_ref": [ "r169" ], "lang": { "en-us": { "role": { "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented.", "label": "Antidilutive Securities, Name [Domain]" } } }, "localname": "AntidilutiveSecuritiesNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AociLossCashFlowHedgeCumulativeGainLossAfterTax": { "auth_ref": [ "r79" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax, of accumulated gain (loss) on derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness.", "label": "AOCI, Cash Flow Hedge, Cumulative Gain (Loss), after Tax", "terseLabel": "Cumulative gain, net of tax reflected in accumulated other comprehensive income (loss)" } } }, "localname": "AociLossCashFlowHedgeCumulativeGainLossAfterTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Assets": { "auth_ref": [ "r133", "r194", "r201", "r208", "r225", "r290", "r291", "r292", "r294", "r295", "r296", "r297", "r299", "r301", "r303", "r304", "r458", "r465", "r506", "r544", "r546", "r577", "r593" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets", "totalLabel": "Total assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "terseLabel": "Assets" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r24", "r26", "r70", "r133", "r225", "r290", "r291", "r292", "r294", "r295", "r296", "r297", "r299", "r301", "r303", "r304", "r458", "r465", "r506", "r544", "r546" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Current", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "Current assets" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsFairValueDisclosure": { "auth_ref": [ "r493" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Fair Value Disclosure", "terseLabel": "Assets" } } }, "localname": "AssetsFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsFairValueDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets, Fair Value Disclosure [Abstract]", "terseLabel": "Assets:" } } }, "localname": "AssetsFairValueDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsHeldForSaleNotPartOfDisposalGroupCurrent": { "auth_ref": [ "r263", "r546" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of assets held-for-sale that are not part of a disposal group, expected to be sold within a year or the normal operating cycle, if longer.", "label": "Assets Held-for-sale, Not Part of Disposal Group, Current", "terseLabel": "Assets held for sale" } } }, "localname": "AssetsHeldForSaleNotPartOfDisposalGroupCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent": { "auth_ref": [ "r5", "r6", "r14", "r16", "r19", "r265", "r268" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.", "label": "Disposal Group, Including Discontinued Operation, Assets, Current", "terseLabel": "Current assets held for sale" } } }, "localname": "AssetsOfDisposalGroupIncludingDiscontinuedOperationCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r398", "r406" ], "lang": { "en-us": { "role": { "documentation": "Information by type of award under share-based payment arrangement.", "label": "Award Type [Axis]" } } }, "localname": "AwardTypeAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BalanceSheetLocationAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by location on balance sheet (statement of financial position).", "label": "Balance Sheet Location [Axis]" } } }, "localname": "BalanceSheetLocationAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BalanceSheetLocationDomain": { "auth_ref": [ "r471", "r474" ], "lang": { "en-us": { "role": { "documentation": "Location in the balance sheet (statement of financial position).", "label": "Balance Sheet Location [Domain]" } } }, "localname": "BalanceSheetLocationDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BaseRateMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Minimum rate investor will accept.", "label": "Base Rate" } } }, "localname": "BaseRateMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "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).", "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Nature of Operations" } } }, "localname": "BasisOfAccountingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "auth_ref": [ "r390", "r392" ], "lang": { "en-us": { "role": { "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.", "label": "Business Acquisition, Acquiree [Domain]" } } }, "localname": "BusinessAcquisitionAcquireeDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "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" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAxis": { "auth_ref": [ "r390", "r392", "r444", "r445" ], "lang": { "en-us": { "role": { "documentation": "Information by business combination or series of individually immaterial business combinations.", "label": "Business Acquisition [Axis]" } } }, "localname": "BusinessAcquisitionAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "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" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Business Acquisition [Line Items]", "terseLabel": "ACQUISITIONS" } } }, "localname": "BusinessAcquisitionLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "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" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": { "auth_ref": [ "r443" ], "lang": { "en-us": { "role": { "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination.", "label": "Business Acquisition, Percentage of Voting Interests Acquired", "terseLabel": "Percentage acquired" } } }, "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "xbrltype": "percentItemType" }, "us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount": { "auth_ref": [ "r454" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of goodwill arising from a business combination that is expected to be deductible for tax purposes.", "label": "Business Acquisition, Goodwill, Expected Tax Deductible Amount", "terseLabel": "Goodwill, non-deductible for tax purposes" } } }, "localname": "BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationAcquisitionRelatedCosts": { "auth_ref": [ "r442" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.", "label": "Business Combination, Acquisition Related Costs", "terseLabel": "Acquisition-related costs incurred during the period" } } }, "localname": "BusinessCombinationAcquisitionRelatedCosts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "auth_ref": [ "r455" ], "lang": { "en-us": { "role": { "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).", "label": "Business Combination Disclosure [Text Block]", "terseLabel": "ACQUISITIONS" } } }, "localname": "BusinessCombinationDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitions" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": { "auth_ref": [ "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of assets acquired at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets", "terseLabel": "Total assets acquired", "totalLabel": "Total assets acquired" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": { "auth_ref": [ "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 4.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other", "terseLabel": "Other current assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets": { "auth_ref": [ "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 3.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits 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.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Prepaid Expense and Other Assets", "terseLabel": "Prepaid expenses" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": { "auth_ref": [ "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables", "terseLabel": "Accounts receivable" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": { "auth_ref": [ "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable", "terseLabel": "Accounts payable" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": { "auth_ref": [ "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities", "terseLabel": "Deferred tax liabilities" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": { "auth_ref": [ "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 6.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill", "terseLabel": "Intangible assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": { "auth_ref": [ "r446", "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of inventory recognized as of the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Inventory", "terseLabel": "Inventories" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": { "auth_ref": [ "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities assumed at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities", "terseLabel": "Total liabilities assumed", "totalLabel": "Total liabilities assumed" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesLongTermDebt": { "auth_ref": [ "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 4.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt due after one year or the normal operating cycle, if longer, assumed at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Noncurrent Liabilities, Long-term Debt", "terseLabel": "Long-term debt" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesLongTermDebt", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": { "auth_ref": [ "r446", "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 5.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment", "terseLabel": "Property and equipment" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": { "auth_ref": [ "r447" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.", "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net", "totalLabel": "Net assets acquired", "verboseLabel": "Net assets acquired" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract": { "auth_ref": [], "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" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNetAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessCombinationsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ACQUISITIONS" } } }, "localname": "BusinessCombinationsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "auth_ref": [ "r124", "r125", "r126" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred.", "label": "Capital Expenditures Incurred but Not yet Paid", "terseLabel": "Accruals and accounts payable for capital expenditures" } } }, "localname": "CapitalExpendituresIncurredButNotYetPaid", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CarryingReportedAmountFairValueDisclosureMember": { "auth_ref": [ "r504", "r505" ], "lang": { "en-us": { "role": { "documentation": "Measured as reported on the statement of financial position (balance sheet).", "label": "Carrying amount" } } }, "localname": "CarryingReportedAmountFairValueDisclosureMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CashAcquiredFromAcquisition": { "auth_ref": [ "r106" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails": { "order": 2.0, "parentTag": "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow associated with the acquisition of business during the period (for example, cash that was held by the acquired business).", "label": "Cash Acquired from Acquisition", "negatedLabel": "Less: cash acquired" } } }, "localname": "CashAcquiredFromAcquisition", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecreaseAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, Period Increase (Decrease) [Abstract]", "terseLabel": "Total consideration, net of cash acquired:" } } }, "localname": "CashAndCashEquivalentsPeriodIncreaseDecreaseAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashCashEquivalentsAndShortTermInvestments": { "auth_ref": [ "r53" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Cash, Cash Equivalents, and Short-term Investments", "terseLabel": "Cash and cash equivalents" } } }, "localname": "CashCashEquivalentsAndShortTermInvestments", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r116", "r122", "r127" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "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" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r116", "r519" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "Change in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r66", "r278", "r583", "r600" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.", "label": "Commitments and Contingencies", "terseLabel": "Commitments and contingencies (Note 7)" } } }, "localname": "CommitmentsAndContingencies", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "COMMITMENTS AND CONTINGENCIES" } } }, "localname": "CommitmentsAndContingenciesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r275", "r276", "r277", "r281", "r623" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for commitments and contingencies.", "label": "Commitments and Contingencies Disclosure [Text Block]", "terseLabel": "COMMITMENTS AND CONTINGENCIES" } } }, "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r139", "r140", "r490" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r37" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common Stock, Par or Stated Value Per Share", "terseLabel": "Common stock, par value" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r37" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock, shares authorized" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r37" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, shares issued" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r37", "r341" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common Stock, Shares, Outstanding", "periodEndLabel": "Balance at the end (in shares)", "periodStartLabel": "Balance at the beginning (in shares)", "terseLabel": "Common stock, shares outstanding" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r37", "r546" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common Stock, Value, Issued", "terseLabel": "Common stock ($0.0001 par value, 190,000,000 shares authorized, 37,032,271 and 34,383,350 shares issued and outstanding as of June 30, 2022 and December 31, 2021, respectively)" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CompensationRelatedCostsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "COMPENSATION PLANS" } } }, "localname": "CompensationRelatedCostsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r86", "r88", "r89", "r96", "r586", "r602" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "Comprehensive income (loss), net of tax" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]", "terseLabel": "Other comprehensive (loss) income:" } } }, "localname": "ComprehensiveIncomeNetOfTaxAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "stringItemType" }, "us-gaap_ConsolidationPolicyTextBlock": { "auth_ref": [ "r129", "r460" ], "lang": { "en-us": { "role": { "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.", "label": "Consolidation, Policy [Policy Text Block]", "terseLabel": "Principles of Consolidation and Basis of Presentation" } } }, "localname": "ConsolidationPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r344", "r345", "r366" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.", "label": "Contract with Customer, Liability, Current", "terseLabel": "Contract liabilities, current" } } }, "localname": "ContractWithCustomerLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionContractLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r367" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "Contract with Customer, Liability, Revenue Recognized", "terseLabel": "Revenue recognized from amounts included in contract liabilities" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionContractLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerSalesChannelAxis": { "auth_ref": [ "r365", "r375" ], "lang": { "en-us": { "role": { "documentation": "Information by sales channel for delivery of good or service in contract with customer.", "label": "Contract with Customer, Sales Channel [Axis]" } } }, "localname": "ContractWithCustomerSalesChannelAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ContractWithCustomerSalesChannelDomain": { "auth_ref": [ "r365", "r375" ], "lang": { "en-us": { "role": { "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.", "label": "Contract with Customer, Sales Channel [Domain]" } } }, "localname": "ContractWithCustomerSalesChannelDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r101", "r557" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 2.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.", "label": "Cost of Goods and Services Sold", "terseLabel": "Cost of goods sold" } } }, "localname": "CostOfGoodsAndServicesSold", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfGoodsAndServicesSoldAmortization": { "auth_ref": [ "r99" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Cost, Amortization", "terseLabel": "Amortization expense included in cost of goods sold" } } }, "localname": "CostOfGoodsAndServicesSoldAmortization", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostsAndExpensesRelatedParty": { "auth_ref": [ "r102" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Costs of sales and operating expenses for the period incurred from transactions with related parties.", "label": "Costs and Expenses, Related Party", "terseLabel": "Acquisition-related costs" } } }, "localname": "CostsAndExpensesRelatedParty", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CreditFacilityAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Axis]" } } }, "localname": "CreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CreditFacilityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Domain]" } } }, "localname": "CreditFacilityDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r452" ], "lang": { "en-us": { "role": { "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.", "label": "Customer relationships" } } }, "localname": "CustomerRelationshipsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "DEBT" } } }, "localname": "DebtDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_DebtDisclosureTextBlock": { "auth_ref": [ "r131", "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r322", "r329", "r330", "r331", "r338" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.", "label": "Debt Disclosure [Text Block]", "terseLabel": "DEBT" } } }, "localname": "DebtDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebt" ], "xbrltype": "textBlockItemType" }, "us-gaap_DebtInstrumentAxis": { "auth_ref": [ "r32", "r33", "r34", "r132", "r137", "r305", "r306", "r307", "r308", "r309", "r310", "r312", "r318", "r319", "r320", "r321", "r323", "r324", "r325", "r326", "r327", "r328", "r334", "r335", "r336", "r337", "r529", "r578", "r580", "r592" ], "lang": { "en-us": { "role": { "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.", "label": "Debt Instrument [Axis]" } } }, "localname": "DebtInstrumentAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.", "label": "Debt Instrument, Basis Spread on Variable Rate", "verboseLabel": "Applicable margin (as a percent)" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentCarryingAmount": { "auth_ref": [ "r34", "r332", "r580", "r592" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails": { "order": 1.0, "parentTag": "us-gaap_LongTermDebtNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Long-term Debt, Gross", "terseLabel": "Long-term debt", "verboseLabel": "Outstanding borrowings" } } }, "localname": "DebtInstrumentCarryingAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails", "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentInterestRateDuringPeriod": { "auth_ref": [ "r63", "r325", "r527" ], "lang": { "en-us": { "role": { "documentation": "The average effective interest rate during the reporting period.", "label": "Debt Instrument, Interest Rate During Period", "terseLabel": "Aggregate principal amount per quarter (in percent)" } } }, "localname": "DebtInstrumentInterestRateDuringPeriod", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentNameDomain": { "auth_ref": [ "r64", "r132", "r137", "r305", "r306", "r307", "r308", "r309", "r310", "r312", "r318", "r319", "r320", "r321", "r323", "r324", "r325", "r326", "r327", "r328", "r334", "r335", "r336", "r337", "r529" ], "lang": { "en-us": { "role": { "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.", "label": "Debt Instrument, Name [Domain]" } } }, "localname": "DebtInstrumentNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet": { "auth_ref": [ "r318", "r333", "r334", "r335", "r528" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails": { "order": 2.0, "parentTag": "us-gaap_LongTermDebtNoncurrent", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of unamortized debt discount (premium) and debt issuance costs.", "label": "Debt Instrument, Unamortized Discount (Premium) and Debt Issuance Costs, Net", "negatedLabel": "Unamortized debt discount and debt issuance costs" } } }, "localname": "DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredBonusAndProfitSharingArrangementIndividualContractTypeOfDeferredCompensationDomain": { "auth_ref": [ "r377", "r378" ], "lang": { "en-us": { "role": { "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.", "label": "Deferred Bonus and Profit Sharing Arrangement, Individual Contract, Type of Deferred Compensation [Domain]" } } }, "localname": "DeferredBonusAndProfitSharingArrangementIndividualContractTypeOfDeferredCompensationDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DeferredCompensationArrangementWithIndividualCompensationExpense": { "auth_ref": [ "r378", "r396" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The compensation expense recognized during the period pertaining to the deferred compensation arrangement.", "label": "Deferred Compensation Arrangement with Individual, Compensation Expense" } } }, "localname": "DeferredCompensationArrangementWithIndividualCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails", "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTypeOfDeferredCompensationAxis": { "auth_ref": [ "r377", "r378" ], "lang": { "en-us": { "role": { "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.", "label": "Deferred Bonus and Profit Sharing Arrangements, Individual Contracts, Type of Deferred Compensation [Axis]" } } }, "localname": "DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTypeOfDeferredCompensationAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Deferred Compensation Arrangement with Individual, Excluding Share-based Payments and Postretirement Benefits [Line Items]", "terseLabel": "Compensation Plans" } } }, "localname": "DeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis": { "auth_ref": [ "r406" ], "lang": { "en-us": { "role": { "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.", "label": "Equity-Based Arrangements, Individual Contracts, Type of Deferred Compensation [Axis]" } } }, "localname": "DeferredCompensationArrangementWithIndividualShareBasedPaymentsByTypeOfDeferredCompensationAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DeferredCompensationArrangementWithIndividualShareBasedPaymentsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Deferred Compensation Arrangement with Individual, Share-based Payments [Line Items]", "terseLabel": "Compensation Plans" } } }, "localname": "DeferredCompensationArrangementWithIndividualShareBasedPaymentsLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DeferredIncomeTaxAssetsNet": { "auth_ref": [ "r418", "r419" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.", "label": "Deferred Income Tax Assets, Net", "terseLabel": "Deferred tax assets, net" } } }, "localname": "DeferredIncomeTaxAssetsNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "auth_ref": [ "r120", "r134", "r426", "r433", "r434", "r435" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Deferred Income Tax Expense (Benefit)", "terseLabel": "Deferred income taxes" } } }, "localname": "DeferredIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxAssetsValuationAllowance": { "auth_ref": [ "r424" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.", "label": "Deferred Tax Assets, Valuation Allowance", "terseLabel": "Valuation allowance" } } }, "localname": "DeferredTaxAssetsValuationAllowance", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureIncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DepreciationDepletionAndAmortization": { "auth_ref": [ "r120", "r189" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.", "label": "Depreciation, Depletion and Amortization", "terseLabel": "Depreciation and amortization" } } }, "localname": "DepreciationDepletionAndAmortization", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeAssets": { "auth_ref": [ "r71", "r74", "r75", "r503" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Derivative Asset", "verboseLabel": "Derivative asset" } } }, "localname": "DerivativeAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeContractTypeDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Derivative Contract [Domain]" } } }, "localname": "DerivativeContractTypeDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DerivativeFixedInterestRate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fixed interest rate related to the interest rate derivative.", "label": "Derivative, Fixed Interest Rate", "terseLabel": "Fixed rate" } } }, "localname": "DerivativeFixedInterestRate", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DerivativeInstrumentRiskAxis": { "auth_ref": [ "r75", "r472", "r473", "r477", "r479" ], "lang": { "en-us": { "role": { "documentation": "Information by type of derivative contract.", "label": "Derivative Instrument [Axis]" } } }, "localname": "DerivativeInstrumentRiskAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativeLiabilities": { "auth_ref": [ "r71", "r74", "r75", "r503" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Fair value, after the effects of master netting arrangements, of a financial liability 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. Includes liabilities not subject to a master netting arrangement and not elected to be offset.", "label": "Derivative Liability", "verboseLabel": "Derivative liability" } } }, "localname": "DerivativeLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeNotionalAmount": { "auth_ref": [ "r469", "r470" ], "lang": { "en-us": { "role": { "documentation": "Nominal or face amount used to calculate payment on derivative.", "label": "Derivative, Notional Amount", "terseLabel": "Notional amount" } } }, "localname": "DerivativeNotionalAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeVariableInterestRate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Variable interest rate in effect as of the balance sheet date related to the interest rate derivative.", "label": "Derivative, Variable Interest Rate", "terseLabel": "Variable rate" } } }, "localname": "DerivativeVariableInterestRate", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DerivativesFairValueLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Derivatives, Fair Value [Line Items]", "terseLabel": "Interest Rate Swaps" } } }, "localname": "DerivativesFairValueLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "Revenue Recognition" } } }, "localname": "DisaggregationOfRevenueLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails", "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [ "r365", "r369", "r370", "r371", "r372", "r373", "r374", "r375" ], "lang": { "en-us": { "role": { "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.", "label": "Disaggregation of Revenue [Table]" } } }, "localname": "DisaggregationOfRevenueTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails", "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionNetSalesByChannelAndGeographyDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r365" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table Text Block]", "terseLabel": "Summary of disaggregation of net sales by channel and geography" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureTextBlockAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "INCOME TAXES." } } }, "localname": "DisclosureTextBlockAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_DiscontinuedOperationsAndDisposalGroupsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ASSETS AND LIABILITIES HELD FOR SALE" } } }, "localname": "DiscontinuedOperationsAndDisposalGroupsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_DisposalGroupClassificationAxis": { "auth_ref": [ "r16" ], "lang": { "en-us": { "role": { "documentation": "Information by disposal group classification.", "label": "Disposal Group Classification [Axis]" } } }, "localname": "DisposalGroupClassificationAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisposalGroupClassificationDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Component or group of components disposed of, including but not limited to, disposal group held-for-sale or disposed of by sale, disposed of by means other than sale, and discontinued operations.", "label": "Disposal Group Classification [Domain]" } } }, "localname": "DisposalGroupClassificationDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DisposalGroupHeldforsaleNotDiscontinuedOperationsMember": { "auth_ref": [ "r16", "r264", "r270" ], "lang": { "en-us": { "role": { "documentation": "Disposal group that is classified as held-for-sale. Excludes disposals classified as discontinued operations.", "label": "Disposal Group, Held-for-sale, Not Discontinued Operations" } } }, "localname": "DisposalGroupHeldforsaleNotDiscontinuedOperationsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock": { "auth_ref": [ "r20", "r272" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.", "label": "Disposal Groups, Including Discontinued Operations, Disclosure [Text Block]", "terseLabel": "ASSETS AND LIABILITIES HELD FOR SALE" } } }, "localname": "DisposalGroupsIncludingDiscontinuedOperationsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSale" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain": { "auth_ref": [ "r390", "r392" ], "lang": { "en-us": { "role": { "documentation": "Name of disposal group.", "label": "Disposal Group Name [Domain]" } } }, "localname": "DisposalGroupsIncludingDiscontinuedOperationsNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Dividends": { "auth_ref": [ "r342", "r591" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Dividends", "negatedLabel": "Dividends declared" } } }, "localname": "Dividends", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Abstract]", "terseLabel": "Net income (loss) per share:" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r97", "r148", "r149", "r150", "r151", "r152", "r157", "r160", "r166", "r167", "r168", "r171", "r172", "r491", "r492", "r587", "r603" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.", "label": "Earnings Per Share, Basic", "terseLabel": "Basic" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r97", "r148", "r149", "r150", "r151", "r152", "r160", "r166", "r167", "r168", "r171", "r172", "r491", "r492", "r587", "r603" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Earnings Per Share, Diluted", "terseLabel": "Diluted" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerSharePolicyTextBlock": { "auth_ref": [ "r169", "r170" ], "lang": { "en-us": { "role": { "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.", "label": "Earnings Per Share, Policy [Policy Text Block]", "terseLabel": "Net Income (loss) per Share" } } }, "localname": "EarningsPerSharePolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_EarningsPerShareReconciliationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share Reconciliation [Abstract]", "terseLabel": "Calculation of weighted average shares outstanding and net (loss) income per share" } } }, "localname": "EarningsPerShareReconciliationAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "auth_ref": [ "r519" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Effect of 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" } } }, "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r421" ], "lang": { "en-us": { "role": { "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Effective Income Tax Rate Reconciliation, Percent", "terseLabel": "Effective tax rate" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureIncomeTaxesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeStockOptionMember": { "auth_ref": [ "r404" ], "lang": { "en-us": { "role": { "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.", "label": "Stock Options" } } }, "localname": "EmployeeStockOptionMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "domainItemType" }, "us-gaap_EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain": { "auth_ref": [ "r406" ], "lang": { "en-us": { "role": { "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.", "label": "Equity-Based Arrangements, Individual Contracts, Type of Deferred Compensation [Domain]" } } }, "localname": "EquityBasedArrangementsIndividualContractsTypeOfDeferredCompensationDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "xbrltype": "domainItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r2", "r90", "r91", "r92", "r139", "r140", "r141", "r144", "r153", "r155", "r173", "r229", "r341", "r342", "r411", "r412", "r413", "r429", "r430", "r490", "r520", "r521", "r522", "r523", "r524", "r525", "r612", "r613", "r614", "r646" ], "lang": { "en-us": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.", "label": "Equity Component [Domain]" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "domainItemType" }, "us-gaap_EstimateOfFairValueFairValueDisclosureMember": { "auth_ref": [ "r320", "r334", "r335", "r503" ], "lang": { "en-us": { "role": { "documentation": "Measured as an estimate of fair value.", "label": "Fair value" } } }, "localname": "EstimateOfFairValueFairValueDisclosureMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "auth_ref": [ "r493", "r494", "r495", "r499" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis.", "label": "Fair Value, Recurring and Nonrecurring [Table]" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "auth_ref": [ "r320", "r334", "r335", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r389", "r494", "r547", "r548", "r549" ], "lang": { "en-us": { "role": { "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.", "label": "Fair Value Hierarchy and NAV [Axis]" } } }, "localname": "FairValueByFairValueHierarchyLevelAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByMeasurementBasisAxis": { "auth_ref": [ "r320", "r334", "r335", "r493", "r500" ], "lang": { "en-us": { "role": { "documentation": "Information by measurement basis.", "label": "Measurement Basis [Axis]" } } }, "localname": "FairValueByMeasurementBasisAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "auth_ref": [ "r493", "r494", "r496", "r497", "r501" ], "lang": { "en-us": { "role": { "documentation": "Information by measurement frequency.", "label": "Measurement Frequency [Axis]" } } }, "localname": "FairValueByMeasurementFrequencyAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueInputsLevel2Member": { "auth_ref": [ "r320", "r334", "r335", "r381", "r382", "r387", "r389", "r494", "r548" ], "lang": { "en-us": { "role": { "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.", "label": "Level 2" } } }, "localname": "FairValueInputsLevel2Member", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementFrequencyDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Measurement frequency.", "label": "Measurement Frequency [Domain]" } } }, "localname": "FairValueMeasurementFrequencyDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Fair Value Measurement, Policy [Policy Text Block]", "terseLabel": "Fair Value Measurements" } } }, "localname": "FairValueMeasurementPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [ "r320", "r334", "r335", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r389", "r547", "r548", "r549" ], "lang": { "en-us": { "role": { "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.", "label": "Fair Value Hierarchy and NAV [Domain]" } } }, "localname": "FairValueMeasurementsFairValueHierarchyDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementsRecurringMember": { "auth_ref": [ "r498", "r501" ], "lang": { "en-us": { "role": { "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value.", "label": "Recurring" } } }, "localname": "FairValueMeasurementsRecurringMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable": { "auth_ref": [ "r471", "r475", "r480" ], "lang": { "en-us": { "role": { "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.", "label": "Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]" } } }, "localname": "FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinanceLeasePrincipalPayments": { "auth_ref": [ "r532", "r533" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow for principal payment on finance lease.", "label": "Finance Lease, Principal Payments", "negatedTerseLabel": "Payment of capital leases" } } }, "localname": "FinanceLeasePrincipalPayments", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinancingReceivableImpairedLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Financing Receivable, Impaired [Line Items]", "verboseLabel": "SIGNIFICANT ACCOUNTING POLICIES" } } }, "localname": "FinancingReceivableImpairedLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Finite-Lived Intangible Asset, Useful Life", "terseLabel": "Weighted Average Useful Life" } } }, "localname": "FiniteLivedIntangibleAssetUsefulLife", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r257" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "terseLabel": "Definite lived intangibles, Accumulated amortization" } } }, "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable": { "auth_ref": [ "r249" ], "lang": { "en-us": { "role": { "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.", "label": "Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table]" } } }, "localname": "FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "auth_ref": [ "r259" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails": { "order": 2.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One", "terseLabel": "2023" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "auth_ref": [], "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails": { "order": 1.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in remainder of current fiscal year.", "label": "Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year", "terseLabel": "Remainder of 2022" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life.", "label": "Finite-lived Intangible Assets Amortization Expense [Table Text Block]", "terseLabel": "Summary of estimated amortization expense for finite lived intangible assets" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "auth_ref": [ "r259" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails": { "order": 5.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in 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, Year Four", "terseLabel": "2026" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "auth_ref": [ "r259" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails": { "order": 4.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three", "terseLabel": "2025" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "auth_ref": [ "r259" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails": { "order": 3.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two", "terseLabel": "2024" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r249", "r253", "r257", "r261", "r558", "r562" ], "lang": { "en-us": { "role": { "documentation": "Information by major type or class of finite-lived intangible assets.", "label": "Finite-Lived Intangible Assets by Major Class [Axis]" } } }, "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract": { "auth_ref": [], "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" } } }, "localname": "FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r257", "r562" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Gross", "terseLabel": "Definite lived intangibles, Gross" } } }, "localname": "FiniteLivedIntangibleAssetsGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r249", "r256" ], "lang": { "en-us": { "role": { "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]" } } }, "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "auth_ref": [ "r257", "r558" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Net", "terseLabel": "Definite lived intangibles, Net", "totalLabel": "Finite lived intangible assets" } } }, "localname": "FiniteLivedIntangibleAssetsNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsAmortizationExpenseForFiniteLivedIntangibleAssetsDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNetAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net [Abstract]", "terseLabel": "Summary of intangible assets" } } }, "localname": "FiniteLivedIntangibleAssetsNetAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinitelivedIntangibleAssetsAcquired1": { "auth_ref": [ "r250" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.", "label": "Finite-lived Intangible Assets Acquired", "terseLabel": "Gross" } } }, "localname": "FinitelivedIntangibleAssetsAcquired1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": { "auth_ref": [ "r515", "r516", "r517", "r518" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.", "label": "Foreign Currency Transaction Gain (Loss), before Tax", "negatedLabel": "Foreign exchange loss" } } }, "localname": "ForeignCurrencyTransactionGainLossBeforeTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r238", "r239", "r546", "r576" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails": { "order": 7.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 }, "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill", "periodEndLabel": "Balance at end of period", "periodStartLabel": "Balance at beginning of period", "terseLabel": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "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/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAcquiredDuringPeriod": { "auth_ref": [ "r241" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.", "label": "Goodwill, Acquired During Period", "verboseLabel": "Acquisition" } } }, "localname": "GoodwillAcquiredDuringPeriod", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "GOODWILL AND OTHER INTANGIBLE ASSETS" } } }, "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "auth_ref": [ "r262" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for goodwill and intangible assets.", "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "terseLabel": "GOODWILL AND OTHER INTANGIBLE ASSETS" } } }, "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssets" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": { "auth_ref": [ "r245", "r254" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets.", "label": "Goodwill and Intangible Assets, Policy [Policy Text Block]", "terseLabel": "Goodwill and Other Intangible Assets" } } }, "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "auth_ref": [ "r242" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill, Foreign Currency Translation Gain (Loss)", "terseLabel": "Foreign currency translation adjustments" } } }, "localname": "GoodwillForeignCurrencyTranslationGainLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillGross": { "auth_ref": [ "r240", "r244" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Goodwill, Gross", "terseLabel": "Gross goodwill" } } }, "localname": "GoodwillGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsImpairmentOfGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillImpairedAccumulatedImpairmentLoss": { "auth_ref": [ "r240", "r244" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Goodwill, Impaired, Accumulated Impairment Loss", "terseLabel": "Accumulated impairment losses" } } }, "localname": "GoodwillImpairedAccumulatedImpairmentLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsImpairmentOfGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Goodwill [Line Items]", "terseLabel": "Goodwill" } } }, "localname": "GoodwillLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GoodwillPurchaseAccountingAdjustments": { "auth_ref": [ "r243", "r441" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Goodwill, Purchase Accounting Adjustments", "negatedLabel": "Decrease in goodwill for revisions made to cash paid", "terseLabel": "Acquisition measurement period adjustment" } } }, "localname": "GoodwillPurchaseAccountingAdjustments", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsPurchasePriceConsiderationAndFairValueRadarDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Goodwill [Roll Forward]", "terseLabel": "Summary of changes in goodwill" } } }, "localname": "GoodwillRollForward", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r100", "r133", "r194", "r200", "r204", "r207", "r210", "r225", "r290", "r291", "r292", "r295", "r296", "r297", "r299", "r301", "r303", "r304", "r506" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "Gross Profit", "totalLabel": "Gross profit" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r94", "r194", "r200", "r204", "r207", "r210", "r575", "r584", "r589", "r604" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "totalLabel": "Income (loss) before provision for income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS)" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis": { "auth_ref": [ "r390", "r392" ], "lang": { "en-us": { "role": { "documentation": "Information by name of disposal group.", "label": "Disposal Group Name [Axis]" } } }, "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Income Statement, Balance Sheet and Additional Disclosures by Disposal Groups, Including Discontinued Operations [Line Items]", "terseLabel": "Assets and Liabilities Held for Sale" } } }, "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable": { "auth_ref": [ "r6", "r8", "r9", "r10", "r11", "r12", "r13", "r15", "r17", "r18", "r19", "r270", "r271" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.", "label": "Disposal Groups, Including Discontinued Operations [Table]" } } }, "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "INCOME TAXES" } } }, "localname": "IncomeTaxDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r135", "r422", "r423", "r425", "r431", "r436", "r438", "r439", "r440" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "Income Tax Disclosure [Text Block]", "verboseLabel": "INCOME TAXES" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureIncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r136", "r154", "r155", "r192", "r420", "r432", "r437", "r605" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income Tax Expense (Benefit)", "negatedLabel": "(Provision) benefit for income taxes" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r123" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.", "label": "Income Taxes Paid, Net", "terseLabel": "Cash paid for income taxes, net" } } }, "localname": "IncomeTaxesPaidNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities": { "auth_ref": [ "r119" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in obligations incurred but not paid, and operating obligations classified as other.", "label": "Increase (Decrease) in Accounts Payable and Other Operating Liabilities", "terseLabel": "Accounts payable and other liabilities" } } }, "localname": "IncreaseDecreaseInAccountsPayableAndOtherOperatingLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r119" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "Accounts receivable" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r119" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.", "label": "Increase (Decrease) in Inventories", "negatedLabel": "Inventories" } } }, "localname": "IncreaseDecreaseInInventories", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "terseLabel": "Changes in operating assets and liabilities, net of impact of acquisitions:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "auth_ref": [ "r119" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "negatedTerseLabel": "Prepaid expenses and other assets" } } }, "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]" } } }, "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "stringItemType" }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "auth_ref": [ "r161", "r162", "r163", "r168" ], "lang": { "en-us": { "role": { "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements", "terseLabel": "Stock-based awards" } } }, "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r252", "r260" ], "lang": { "en-us": { "role": { "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.", "label": "Indefinite-lived Intangible Assets [Axis]" } } }, "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": { "auth_ref": [ "r260" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit.", "label": "Indefinite-lived Intangible Assets (Excluding Goodwill)", "terseLabel": "Indefinite lived intangibles" } } }, "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r252", "r260" ], "lang": { "en-us": { "role": { "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.", "label": "Indefinite-lived Intangible Assets, Major Class Name [Domain]" } } }, "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "auth_ref": [ "r247", "r255" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.", "label": "Intangible Assets, Net (Excluding Goodwill)", "terseLabel": "Intangible assets, net", "verboseLabel": "Indefinite lived intangibles, Net" } } }, "localname": "IntangibleAssetsNetExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestExpense": { "auth_ref": [ "r93", "r188", "r526", "r528", "r588" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 1.0, "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.", "label": "Interest Expense", "negatedLabel": "Interest expense" } } }, "localname": "InterestExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestPaidNet": { "auth_ref": [ "r114", "r117", "r123" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.", "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities", "terseLabel": "Cash paid for interest" } } }, "localname": "InterestPaidNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet": { "auth_ref": [ "r481" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "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" } } }, "localname": "InterestRateCashFlowHedgeGainLossToBeReclassifiedDuringNext12MonthsNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestRateSwapMember": { "auth_ref": [ "r478" ], "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" } } }, "localname": "InterestRateSwapMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_InventoryDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "INVENTORIES" } } }, "localname": "InventoryDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_InventoryDisclosureTextBlock": { "auth_ref": [ "r235" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.", "label": "Inventory Disclosure [Text Block]", "terseLabel": "INVENTORIES" } } }, "localname": "InventoryDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventories" ], "xbrltype": "textBlockItemType" }, "us-gaap_InventoryFinishedGoodsAndWorkInProcessNetOfReserves": { "auth_ref": [ "r46", "r47", "r234" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails": { "order": 1.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Inventory, Finished Goods and Work in Process, Net of Reserves", "terseLabel": "Finished goods" } } }, "localname": "InventoryFinishedGoodsAndWorkInProcessNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r21", "r68", "r546" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventory, Net", "terseLabel": "Inventories", "totalLabel": "Inventory Net" } } }, "localname": "InventoryNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryRawMaterialsAndSuppliesNetOfReserves": { "auth_ref": [ "r48", "r49", "r234" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails": { "order": 3.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Inventory, Raw Materials and Supplies, Net of Reserves", "terseLabel": "Raw materials and supplies" } } }, "localname": "InventoryRawMaterialsAndSuppliesNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "auth_ref": [ "r47", "r234" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails": { "order": 2.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.", "label": "Inventory, Work in Process, Net of Reserves", "terseLabel": "Work-in-process" } } }, "localname": "InventoryWorkInProcessNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r534" ], "lang": { "en-us": { "role": { "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.", "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]", "terseLabel": "Summary of future minimum lease payments required under non-cancelable operating leases" } } }, "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "auth_ref": [ "r534" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.", "label": "Lessee, Operating Lease, Liability, to be Paid", "totalLabel": "Total minimum lease payments" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r534" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "terseLabel": "2023" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r534" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails": { "order": 5.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four", "terseLabel": "2026" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r534" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails": { "order": 4.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three", "terseLabel": "2025" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r534" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails": { "order": 3.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "terseLabel": "2024" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r534" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.", "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year", "terseLabel": "Remainder of 2022" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LetterOfCreditMember": { "auth_ref": [], "lang": { "en-us": { "role": { "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).", "label": "Letter of credit" } } }, "localname": "LetterOfCreditMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LettersOfCreditOutstandingAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date.", "label": "Letters of Credit Outstanding, Amount", "terseLabel": "Outstanding letters of credit" } } }, "localname": "LettersOfCreditOutstandingAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r60", "r133", "r202", "r225", "r290", "r291", "r292", "r295", "r296", "r297", "r299", "r301", "r303", "r304", "r459", "r465", "r466", "r506", "r544", "r545" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.", "label": "Liabilities", "totalLabel": "Total liabilities" } } }, "localname": "Liabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r44", "r133", "r225", "r506", "r546", "r581", "r598" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "Liabilities and Equity", "totalLabel": "Total liabilities, mezzanine equity and shareholders' equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities and Equity [Abstract]", "terseLabel": "Liabilities, Mezzanine Equity and Shareholders' Equity" } } }, "localname": "LiabilitiesAndStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r62", "r133", "r225", "r290", "r291", "r292", "r295", "r296", "r297", "r299", "r301", "r303", "r304", "r459", "r465", "r466", "r506", "r544", "r545", "r546" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "Liabilities, Current", "totalLabel": "Total current liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "Current liabilities" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesFairValueDisclosure": { "auth_ref": [ "r493" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Fair value of financial and nonfinancial obligations.", "label": "Financial and Nonfinancial Liabilities, Fair Value Disclosure", "terseLabel": "Liabilities:" } } }, "localname": "LiabilitiesFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesFairValueDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities, Fair Value Disclosure [Abstract]", "terseLabel": "Liabilities:" } } }, "localname": "LiabilitiesFairValueDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent": { "auth_ref": [ "r5", "r6", "r14", "r16", "r19", "r265", "r268" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount classified as liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.", "label": "Disposal Group, Including Discontinued Operation, Liabilities, Current", "terseLabel": "Liabilities current, held for sale", "verboseLabel": "Liabilities held for sale" } } }, "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAssetsAndLiabilitiesHeldForSaleDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCredit": { "auth_ref": [ "r34", "r580", "r592" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Long-term Line of Credit", "verboseLabel": "Amount outstanding" } } }, "localname": "LineOfCredit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Line of Credit Facility [Line Items]", "terseLabel": "Debt" } } }, "localname": "LineOfCreditFacilityLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "auth_ref": [ "r57" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.", "label": "Line of Credit Facility, Maximum Borrowing Capacity", "terseLabel": "Maximum borrowing capacity" } } }, "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": { "auth_ref": [ "r57" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).", "label": "Line of Credit Facility, Remaining Borrowing Capacity", "terseLabel": "Available borrowing capacity" } } }, "localname": "LineOfCreditFacilityRemainingBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityTable": { "auth_ref": [ "r57", "r132" ], "lang": { "en-us": { "role": { "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.", "label": "Line of Credit Facility [Table]" } } }, "localname": "LineOfCreditFacilityTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility.", "label": "Line of Credit Facility, Unused Capacity, Commitment Fee Percentage", "terseLabel": "Unused line fee (as a percent)" } } }, "localname": "LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails" ], "xbrltype": "percentItemType" }, "us-gaap_LondonInterbankOfferedRateLIBORMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate at which a bank borrows funds from other banks in the London interbank market.", "label": "LIBOR" } } }, "localname": "LondonInterbankOfferedRateLIBORMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LongTermDebtCurrent": { "auth_ref": [ "r59" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.", "label": "Long-term Debt, Current Maturities", "terseLabel": "Current portion of long-term debt" } } }, "localname": "LongTermDebtCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "auth_ref": [ "r137", "r287", "r324" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "order": 2.0, "parentTag": "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Long-Term Debt, Maturity, Year One", "verboseLabel": "2023" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": { "auth_ref": [ "r137", "r287", "r324" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "order": 5.0, "parentTag": "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in 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": "Long-Term Debt, Maturity, Year Four", "terseLabel": "2026" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": { "auth_ref": [ "r137", "r287", "r324" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "order": 4.0, "parentTag": "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Long-Term Debt, Maturity, Year Three", "terseLabel": "2025" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "auth_ref": [ "r137", "r287", "r324" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "order": 3.0, "parentTag": "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Long-Term Debt, Maturity, Year Two", "terseLabel": "2024" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear": { "auth_ref": [ "r137" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails": { "order": 1.0, "parentTag": "cdre_LongTermDebtMaturitiesRepaymentsOfTotalPrincipalPayments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in remainder of current fiscal year.", "label": "Long-Term Debt, Maturity, Remainder of Fiscal Year", "terseLabel": "Remainder of 2022" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtSummaryOfAggregatePrincipalPaymentOfLongTermDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtNoncurrent": { "auth_ref": [ "r64" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after unamortized (discount) premium and debt issuance costs of long-term debt classified as noncurrent and excluding amounts to be repaid within one year or the normal operating cycle, if longer. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.", "label": "Long-term Debt, Excluding Current Maturities", "terseLabel": "Long-term debt", "totalLabel": "Total long-term debt, net" } } }, "localname": "LongTermDebtNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongtermDebtTypeAxis": { "auth_ref": [ "r64" ], "lang": { "en-us": { "role": { "documentation": "Information by type of long-term debt.", "label": "Long-term Debt, Type [Axis]" } } }, "localname": "LongtermDebtTypeAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LongtermDebtTypeDomain": { "auth_ref": [ "r64", "r288" ], "lang": { "en-us": { "role": { "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.", "label": "Long-term Debt, Type [Domain]" } } }, "localname": "LongtermDebtTypeDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LossContingencyDamagesAwardedValue": { "auth_ref": [ "r278", "r279", "r280" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of damages awarded to the plaintiff in the legal matter.", "label": "Loss Contingency, Damages Awarded, Value", "terseLabel": "Damage awarded" } } }, "localname": "LossContingencyDamagesAwardedValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesLegalProceedingsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_MaterialReconcilingItemsMember": { "auth_ref": [ "r204" ], "lang": { "en-us": { "role": { "documentation": "Items used in reconciling reportable segments' amounts to consolidated amount. Excludes corporate-level activity.", "label": "Reconciling Items" } } }, "localname": "MaterialReconcilingItemsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Movement in Standard and Extended Product Warranty Accrual, Increase (Decrease) [Roll Forward]", "terseLabel": "Changes in the Company's accrued warranties and related costs" } } }, "localname": "MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAccruedWarrantiesAndRelatedCostsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r116" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash provided by (used in) financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "terseLabel": "Cash Flows From Financing Activities:" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r116" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "terseLabel": "Cash Flows From Investing Activities:" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r116", "r118", "r121" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Cash Flows From Operating Activities:" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r19", "r84", "r87", "r92", "r95", "r121", "r133", "r143", "r148", "r149", "r150", "r151", "r154", "r155", "r164", "r194", "r200", "r204", "r207", "r210", "r225", "r290", "r291", "r292", "r295", "r296", "r297", "r299", "r301", "r303", "r304", "r492", "r506", "r585", "r601" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 }, "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss) Attributable to Parent", "terseLabel": "Net income (loss)", "totalLabel": "Net income (loss)", "verboseLabel": "Net income (loss)" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic": { "auth_ref": [ "r148", "r149", "r150", "r151", "r157", "r158", "r165", "r168", "r194", "r200", "r204", "r207", "r210" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) available to common shareholders.", "label": "Net Income (Loss) Available to Common Stockholders, Basic", "verboseLabel": "Net income (loss)" } } }, "localname": "NetIncomeLossAvailableToCommonStockholdersBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Income (Loss) Available to Common Stockholders, Basic [Abstract]", "terseLabel": "Numerator for basic and diluted earnings per share:" } } }, "localname": "NetIncomeLossAvailableToCommonStockholdersBasicAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "New Accounting Pronouncements or Change in Accounting Principle [Line Items]", "terseLabel": "Recent Accounting Pronouncements" } } }, "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable": { "auth_ref": [ "r0", "r1", "r2", "r3", "r4", "r142", "r143", "r144", "r145", "r146", "r147", "r150", "r156", "r171", "r223", "r224", "r226", "r227", "r228", "r229", "r230", "r231", "r289", "r407", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r427", "r428", "r429", "r430", "r482", "r483", "r484", "r485", "r486", "r487", "r488", "r489", "r490", "r491", "r492", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r514", "r535", "r559", "r560", "r561", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r617", "r618", "r619", "r620", "r621", "r642", "r643", "r644", "r645", "r646" ], "lang": { "en-us": { "role": { "documentation": "Summarization of the changes in an accounting principle or a new accounting pronouncement, including the line items affected by the change and the financial effects of the change on those particular line items.", "label": "Accounting Standards Update and Change in Accounting Principle [Table]" } } }, "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "terseLabel": "Recent Accounting Pronouncements" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NonUsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Countries excluding the United States of America (US).", "label": "International." } } }, "localname": "NonUsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionIncludesAllDistributionSalesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Noncash Investing and Financing Items [Abstract]", "terseLabel": "Supplemental Disclosure of Non-Cash Investing and Financing Activities:" } } }, "localname": "NoncashInvestingAndFinancingItemsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NoncompeteAgreementsMember": { "auth_ref": [ "r451" ], "lang": { "en-us": { "role": { "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.", "label": "Non-compete agreements" } } }, "localname": "NoncompeteAgreementsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NonoperatingIncomeExpense": { "auth_ref": [ "r104" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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).", "label": "Nonoperating Income (Expense)", "totalLabel": "Total other expense, net" } } }, "localname": "NonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_NonoperatingIncomeExpenseAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Nonoperating Income (Expense) [Abstract]", "terseLabel": "Other expense" } } }, "localname": "NonoperatingIncomeExpenseAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "stringItemType" }, "us-gaap_NumberOfReportableSegments": { "auth_ref": [ "r182" ], "lang": { "en-us": { "role": { "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.", "label": "Number of Reportable Segments", "terseLabel": "Number of reportable segments" } } }, "localname": "NumberOfReportableSegments", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataDetails" ], "xbrltype": "integerItemType" }, "us-gaap_OffsettingAssetsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Offsetting Assets [Line Items]", "terseLabel": "Interest Rate Swaps" } } }, "localname": "OffsettingAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OffsettingAssetsTable": { "auth_ref": [ "r72", "r73" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about derivative and financial assets that are subject to offsetting, including enforceable master netting arrangements.", "label": "Offsetting Assets [Table]" } } }, "localname": "OffsettingAssetsTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfInterestRateSwapsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingExpenses": { "auth_ref": [], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Operating Expenses", "totalLabel": "Total operating expenses" } } }, "localname": "OperatingExpenses", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingExpensesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Operating Expenses [Abstract]", "terseLabel": "Operating expenses" } } }, "localname": "OperatingExpensesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r194", "r200", "r204", "r207", "r210" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating Income (Loss)", "totalLabel": "Operating income (loss)" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseExpense": { "auth_ref": [ "r531" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of operating lease expense. Excludes sublease income.", "label": "Operating Lease, Expense", "terseLabel": "Total rent expense" } } }, "localname": "OperatingLeaseExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, Payment, Due [Abstract]", "terseLabel": "Operating Leases" } } }, "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCommitmentsAndContingenciesFutureMinimumLeasePaymentsRequiredUnderNonCancelableOperatingLeasesAndCapitalLeaseAgreementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingSegmentsMember": { "auth_ref": [ "r199", "r200", "r201", "r202", "r204", "r210" ], "lang": { "en-us": { "role": { "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.", "label": "Operating segments" } } }, "localname": "OperatingSegmentsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]", "terseLabel": "Nature of Operations and Basis of Presentation" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OtherAssetsCurrent": { "auth_ref": [ "r69", "r546" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current assets classified as other.", "label": "Other Assets, Current", "terseLabel": "Other current assets" } } }, "localname": "OtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsMember": { "auth_ref": [ "r471", "r480" ], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing other assets.", "label": "Other assets" } } }, "localname": "OtherAssetsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r55" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncurrent assets classified as other.", "label": "Other Assets, Noncurrent", "terseLabel": "Other assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r456", "r457", "r463" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.", "label": "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", "verboseLabel": "Foreign currency translation adjustments" } } }, "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent": { "auth_ref": [ "r456", "r457", "r463" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Tax, Portion Attributable to Parent", "terseLabel": "Foreign currency translation adjustments, net of tax expense" } } }, "localname": "OtherComprehensiveIncomeForeignCurrencyTranslationAdjustmentTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLossParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax": { "auth_ref": [ "r76", "r79" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax", "totalLabel": "Total unrealized gains on interest rate swaps, net of tax" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax": { "auth_ref": [ "r76", "r79" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification, after Tax", "terseLabel": "Unrealized holding gains, net of tax", "verboseLabel": "Gain recognized in other comprehensive income" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax": { "auth_ref": [ "r80" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification, Tax", "terseLabel": "Unrealized holding gains, net of tax expense" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLossParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax": { "auth_ref": [ "r79", "r83" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, after Tax", "negatedLabel": "Reclassification adjustments for gains included in net loss, net of tax", "negatedTerseLabel": "Amount reclassified from accumulated other comprehensive loss to earnings" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax": { "auth_ref": [ "r80" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, Tax", "terseLabel": "Reclassification adjustments for gains included in net of income tax expense" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLossParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTaxParent": { "auth_ref": [ "r77", "r476" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Other Comprehensive Income (Loss), Derivative, Excluded Component, Increase (Decrease), after Adjustments and Tax, Parent", "terseLabel": "Change in fair value of derivative instruments" } } }, "localname": "OtherComprehensiveIncomeLossDerivativeExcludedComponentIncreaseDecreaseAfterAdjustmentsAndTaxParent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r85", "r88", "r456", "r457", "r463" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity.", "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent", "totalLabel": "Other comprehensive (loss) income" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherCurrentAssetsMember": { "auth_ref": [ "r471", "r480" ], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing other current assets.", "label": "Other current assets" } } }, "localname": "OtherCurrentAssetsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfFairValueSwapAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r65" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.", "label": "Other Liabilities, Noncurrent", "terseLabel": "Other liabilities" } } }, "localname": "OtherLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r105" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 2.0, "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.", "label": "Other Nonoperating Income (Expense)", "terseLabel": "Other expense, net" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OverAllotmentOptionMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Right given to the underwriter to sell additional shares over the initial allotment.", "label": "Over-Allotment Option" } } }, "localname": "OverAllotmentOptionMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PaymentsOfDividends": { "auth_ref": [ "r111" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Cash outflow in the form of capital distributions and dividends to common shareholders, preferred shareholders and noncontrolling interests.", "label": "Payments of Dividends", "negatedTerseLabel": "Dividends distributed" } } }, "localname": "PaymentsOfDividends", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsOfStockIssuanceCosts": { "auth_ref": [ "r113" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow for cost incurred directly with the issuance of an equity security.", "label": "Payments of Stock Issuance Costs", "terseLabel": "Underwriter discounts and commissions, fees and expenses", "verboseLabel": "Direct offering costs" } } }, "localname": "PaymentsOfStockIssuanceCosts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "auth_ref": [ "r111" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.", "label": "Payment, Tax Withholding, Share-based Payment Arrangement", "negatedLabel": "Taxes paid in connection with employee stock transactions" } } }, "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesGross": { "auth_ref": [ "r107", "r453" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails": { "order": 1.0, "parentTag": "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.", "label": "Payments to Acquire Businesses, Gross", "terseLabel": "Cash paid" } } }, "localname": "PaymentsToAcquireBusinessesGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "auth_ref": [ "r107" ], "calculation": { "http://www.cadre-holdings.com/role/DisclosureAcquisitionsSummaryRadarDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.", "label": "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" } } }, "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "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/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r108" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchase of property and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PlanNameAxis": { "auth_ref": [ "r398", "r406" ], "lang": { "en-us": { "role": { "documentation": "Information by plan name for share-based payment arrangement.", "label": "Plan Name [Axis]" } } }, "localname": "PlanNameAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PlanNameDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Plan name for share-based payment arrangement.", "label": "Plan Name [Domain]" } } }, "localname": "PlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PortionAtFairValueFairValueDisclosureMember": { "auth_ref": [ "r502" ], "lang": { "en-us": { "role": { "documentation": "Measured at fair value for financial reporting purposes.", "label": "Portion at Fair Value Measurement [Member]" } } }, "localname": "PortionAtFairValueFairValueDisclosureMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAssetsAndLiabilitiesMeasuredAtFairValueOnRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PrepaidExpenseCurrent": { "auth_ref": [ "r23", "r25", "r236", "r237" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.", "label": "Prepaid Expense, Current", "terseLabel": "Prepaid expenses" } } }, "localname": "PrepaidExpenseCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromIssuanceOfCommonStock": { "auth_ref": [ "r109" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow from the additional capital contribution to the entity.", "label": "Proceeds from Issuance of Common Stock", "terseLabel": "Proceeds from secondary offering, net of underwriter discounts" } } }, "localname": "ProceedsFromIssuanceOfCommonStock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromLinesOfCredit": { "auth_ref": [ "r110", "r132" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.", "label": "Proceeds from Lines of Credit", "terseLabel": "Proceeds from revolving credit facilities" } } }, "localname": "ProceedsFromLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSubsequentEventsDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductWarrantyAccrual": { "auth_ref": [ "r284", "r285", "r582" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Standard and Extended Product Warranty Accrual", "periodEndLabel": "Ending accrued warranty expense", "periodStartLabel": "Beginning accrued warranty expense" } } }, "localname": "ProductWarrantyAccrual", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAccruedWarrantiesAndRelatedCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductWarrantyAccrualWarrantiesIssued": { "auth_ref": [ "r282" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in the standard and extended product warranty accrual from warranties issued.", "label": "Standard and Extended Product Warranty Accrual, Increase for Warranties Issued", "terseLabel": "Provision for current period sales" } } }, "localname": "ProductWarrantyAccrualWarrantiesIssued", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAccruedWarrantiesAndRelatedCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProfitLoss": { "auth_ref": [ "r19", "r84", "r87", "r92", "r115", "r133", "r143", "r154", "r155", "r194", "r200", "r204", "r207", "r210", "r225", "r290", "r291", "r292", "r295", "r296", "r297", "r299", "r301", "r303", "r304", "r456", "r461", "r462", "r467", "r468", "r492", "r506", "r589" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.", "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "terseLabel": "Net (loss) income" } } }, "localname": "ProfitLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r29", "r30", "r267", "r546", "r590", "r599" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Net", "terseLabel": "Property and equipment, net of accumulated depreciation and amortization of $40,111 and $37,171, respectively" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProvisionForDoubtfulAccounts": { "auth_ref": [ "r98", "r233" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.", "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "terseLabel": "Provision for (recoveries from) losses on accounts receivable" } } }, "localname": "ProvisionForDoubtfulAccounts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RelatedPartyDomain": { "auth_ref": [ "r388", "r538", "r539" ], "lang": { "en-us": { "role": { "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.", "label": "Related Party [Domain]" } } }, "localname": "RelatedPartyDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty": { "auth_ref": [ "r538" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 3.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Expenses recognized resulting from transactions (excluding transactions that are eliminated in consolidated or combined financial statements) with related party.", "label": "Related Party Transaction, Expenses from Transactions with Related Party", "terseLabel": "Related party expense" } } }, "localname": "RelatedPartyTransactionExpensesFromTransactionsWithRelatedParty", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_RelatedPartyTransactionLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Related Party Transaction [Line Items]", "terseLabel": "Related Party Transactions" } } }, "localname": "RelatedPartyTransactionLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RelatedPartyTransactionsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "RELATED PARTY TRANSACTIONS" } } }, "localname": "RelatedPartyTransactionsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": { "auth_ref": [ "r388", "r538", "r541", "r563", "r564", "r565", "r566", "r567", "r568", "r569", "r570", "r571", "r572", "r573", "r574" ], "lang": { "en-us": { "role": { "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.", "label": "Related Party [Axis]" } } }, "localname": "RelatedPartyTransactionsByRelatedPartyAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": { "auth_ref": [ "r536", "r537", "r539", "r542", "r543" ], "lang": { "en-us": { "role": { "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.", "label": "Related Party Transactions Disclosure [Text Block]", "terseLabel": "RELATED PARTY TRANSACTIONS" } } }, "localname": "RelatedPartyTransactionsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactions" ], "xbrltype": "textBlockItemType" }, "us-gaap_RepaymentsOfDebt": { "auth_ref": [ "r112" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow during the period from the repayment of aggregate short-term and long-term debt. Excludes payment of capital lease obligations.", "label": "Repayments of Debt", "negatedLabel": "Principal payments on term loans" } } }, "localname": "RepaymentsOfDebt", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfLinesOfCredit": { "auth_ref": [ "r112", "r132" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.", "label": "Repayments of Lines of Credit", "negatedLabel": "Principal payments on revolving credit facilities" } } }, "localname": "RepaymentsOfLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedStockMember": { "auth_ref": [ "r169" ], "lang": { "en-us": { "role": { "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met.", "label": "Restricted Stock" } } }, "localname": "RestrictedStockMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails", "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RestructuringCosts": { "auth_ref": [ "r120" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 2.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Restructuring Costs", "terseLabel": "Restructuring and transaction costs" } } }, "localname": "RestructuringCosts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r40", "r342", "r414", "r546", "r597", "r616", "r621" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Accumulated deficit" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r2", "r139", "r140", "r141", "r144", "r153", "r155", "r229", "r411", "r412", "r413", "r429", "r430", "r490", "r612", "r614" ], "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Accumulated Deficit" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "REVENUE RECOGNITION" } } }, "localname": "RevenueFromContractWithCustomerAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "auth_ref": [ "r185", "r186", "r199", "r205", "r206", "r212", "r213", "r216", "r364", "r365", "r557" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 1.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "terseLabel": "Net sales" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "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/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "auth_ref": [ "r130", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r376" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for revenue from contract with customer.", "label": "Revenue from Contract with Customer [Policy Text Block]", "terseLabel": "Revenue Recognition" } } }, "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r346", "r347", "r348", "r349", "r350", "r351", "r354", "r355", "r368", "r376" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "REVENUE RECOGNITION" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognition" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r352" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.", "label": "Revenue, Remaining Performance Obligation, Amount", "terseLabel": "Remaining performance obligations" } } }, "localname": "RevenueRemainingPerformanceObligation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "terseLabel": "Revenue Recognition" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "auth_ref": [ "r353" ], "lang": { "en-us": { "role": { "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.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "terseLabel": "Expected timing of satisfaction" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r353" ], "lang": { "en-us": { "role": { "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationPercentage": { "auth_ref": [ "r353" ], "lang": { "en-us": { "role": { "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue.", "label": "Revenue, Remaining Performance Obligation, Percentage", "terseLabel": "Percentage of remaining performance obligations expect to recognize" } } }, "localname": "RevenueRemainingPerformanceObligationPercentage", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_RevolvingCreditFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.", "label": "Revolving credit facility." } } }, "localname": "RevolvingCreditFacilityMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SaleOfStockNameOfTransactionDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement.", "label": "Sale of Stock [Domain]" } } }, "localname": "SaleOfStockNameOfTransactionDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "auth_ref": [ "r169" ], "lang": { "en-us": { "role": { "documentation": "Schedule for securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by Antidilutive Securities.", "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]" } } }, "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": { "auth_ref": [ "r444", "r445" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Business Acquisitions, by Acquisition [Table]" } } }, "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "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" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": { "auth_ref": [ "r444", "r445" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Business Acquisitions, by Acquisition [Table Text Block]", "terseLabel": "Schedule of total consideration" } } }, "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDebtTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.", "label": "Schedule of Debt [Table Text Block]", "terseLabel": "Schedule of company's debt" } } }, "localname": "ScheduleOfDebtTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable": { "auth_ref": [ "r377", "r378" ], "lang": { "en-us": { "role": { "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.", "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]" } } }, "localname": "ScheduleOfDeferredCompensationArrangementWithIndividualExcludingShareBasedPaymentsAndPostretirementBenefitsByTitleOfIndividualAndByTypeOfDeferredCompensationTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansLongTermIncentivePlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfDeferredCompensationArrangementWithIndividualShareBasedPaymentsTable": { "auth_ref": [ "r378", "r379", "r398", "r406" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Deferred Compensation Arrangement with Individual, Share-based Payments [Table]" } } }, "localname": "ScheduleOfDeferredCompensationArrangementWithIndividualShareBasedPaymentsTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansExecutiveCompensationPlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r168" ], "lang": { "en-us": { "role": { "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.", "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" } } }, "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": { "auth_ref": [ "r493", "r494" ], "lang": { "en-us": { "role": { "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).", "label": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]", "terseLabel": "Summary of fair value hierarchy for assets and liabilities measured at fair value on a recurring basis" } } }, "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock": { "auth_ref": [ "r249" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]", "terseLabel": "Schedule of acquired intangible assets" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfGoodwillTable": { "auth_ref": [ "r245", "r246" ], "lang": { "en-us": { "role": { "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons.", "label": "Schedule of Goodwill [Table]" } } }, "localname": "ScheduleOfGoodwillTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfGoodwillTextBlock": { "auth_ref": [ "r245", "r246" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.", "label": "Summary of changes in goodwill" } } }, "localname": "ScheduleOfGoodwillTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfImpairedFinancingReceivableTable": { "auth_ref": [ "r220" ], "lang": { "en-us": { "role": { "documentation": "Schedule of the recorded investment, unpaid principal balance, associated allowance, average recorded investment, accounting policies, and interest income recognized on the accrual and cash basis for impaired financing receivables by class of financing receivable.", "label": "Schedule of Impaired Financing Receivable [Table]" } } }, "localname": "ScheduleOfImpairedFinancingReceivableTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "auth_ref": [ "r27", "r50", "r51", "r52" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.", "label": "Schedule of Inventory, Current [Table Text Block]", "terseLabel": "Summary of inventories stated at lower of cost or net realizable value" } } }, "localname": "ScheduleOfInventoryCurrentTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureInventoriesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "auth_ref": [ "r287" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt.", "label": "Schedule of Maturities of Long-term Debt [Table Text Block]", "terseLabel": "Summary of aggregate principal payments of long-term debt" } } }, "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": { "auth_ref": [ "r286" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Product Warranty Liability [Table Text Block]", "terseLabel": "Summary of changes in the accrued warranties and related costs" } } }, "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": { "auth_ref": [ "r448" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.", "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]", "terseLabel": "Summary of total purchase price consideration and preliminary fair value amounts recognized for assets acquired and liabilities assumed" } } }, "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": { "auth_ref": [ "r540", "r541" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Related Party Transactions, by Related Party [Table]" } } }, "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureRelatedPartyTransactionsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "auth_ref": [ "r194", "r197", "r203", "r245" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Segment Reporting Information, by Segment [Table]" } } }, "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "auth_ref": [ "r194", "r197", "r203", "r245" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "terseLabel": "Summary of segment data" } } }, "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "auth_ref": [ "r398", "r406" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about share-based payment arrangement.", "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]" } } }, "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [ "r181", "r185", "r186", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r196", "r199", "r200", "r201", "r202", "r204", "r205", "r206", "r207", "r208", "r210", "r216", "r273", "r274", "r606" ], "lang": { "en-us": { "role": { "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.", "label": "Segments [Domain]" } } }, "localname": "SegmentDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails", "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentReportingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SEGMENT DATA" } } }, "localname": "SegmentReportingAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingDisclosureTextBlock": { "auth_ref": [ "r181", "r183", "r184", "r194", "r198", "r204", "r208", "r209", "r210", "r211", "r212", "r215", "r216", "r217" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.", "label": "Segment Reporting Disclosure [Text Block]", "terseLabel": "SEGMENT DATA" } } }, "localname": "SegmentReportingDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentData" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentReportingInformationLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Segment Reporting Information [Line Items]", "terseLabel": "Segment Data" } } }, "localname": "SegmentReportingInformationLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r103" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss": { "order": 1.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.", "label": "Selling, General and Administrative Expense", "terseLabel": "Selling, general and administrative" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r119" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncash expense for share-based payment arrangement.", "label": "Share-based Payment Arrangement, Noncash Expense", "terseLabel": "Stock-based compensation" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "auth_ref": [ "r399" ], "lang": { "en-us": { "role": { "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period", "terseLabel": "Vesting period" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "auth_ref": [ "r402" ], "lang": { "en-us": { "role": { "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period", "terseLabel": "Number of awards granted" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r402" ], "lang": { "en-us": { "role": { "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value", "verboseLabel": "Grant date fair value (per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "verboseLabel": "COMPENSATION PLANS" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Gross number of share options (or share units) granted during the period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross", "terseLabel": "Number of options issued" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r403" ], "lang": { "en-us": { "role": { "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value", "terseLabel": "Grant date fair value (per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r395", "r401" ], "lang": { "en-us": { "role": { "documentation": "Award under share-based payment arrangement.", "label": "Award Type [Domain]" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": { "auth_ref": [ "r400" ], "lang": { "en-us": { "role": { "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period", "terseLabel": "Expiration period" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureCompensationPlansStockIncentivePlanDetails" ], "xbrltype": "durationItemType" }, "us-gaap_SharesIssuedPricePerShare": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Per share or per unit amount of equity securities issued.", "label": "Shares Issued, Price Per Share", "terseLabel": "Issue price" } } }, "localname": "SharesIssuedPricePerShare", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShortTermBorrowings": { "auth_ref": [ "r31", "r546", "r578", "r595" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Short-term Debt", "terseLabel": "Short-term debt" } } }, "localname": "ShortTermBorrowings", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShortTermDebtTypeAxis": { "auth_ref": [ "r58" ], "lang": { "en-us": { "role": { "documentation": "Information by type of short-term debt arrangement.", "label": "Short-term Debt, Type [Axis]" } } }, "localname": "ShortTermDebtTypeAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShortTermDebtTypeDomain": { "auth_ref": [ "r56" ], "lang": { "en-us": { "role": { "documentation": "Type of short-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing.", "label": "Short-term Debt, Type [Domain]" } } }, "localname": "ShortTermDebtTypeDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtScheduleOfCompanySDebtDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "auth_ref": [ "r128", "r138" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.", "label": "Significant Accounting Policies [Text Block]", "terseLabel": "SIGNIFICANT ACCOUNTING POLICIES" } } }, "localname": "SignificantAccountingPoliciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_StandardProductWarrantyPolicy": { "auth_ref": [ "r283" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for standard warranties including the methodology for measuring the liability.", "label": "Standard Product Warranty, Policy [Policy Text Block]", "terseLabel": "Product Warranty" } } }, "localname": "StandardProductWarrantyPolicy", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_StatementBusinessSegmentsAxis": { "auth_ref": [ "r7", "r181", "r185", "r186", "r187", "r188", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r196", "r199", "r200", "r201", "r202", "r204", "r205", "r206", "r207", "r208", "r210", "r216", "r245", "r269", "r273", "r274", "r606" ], "lang": { "en-us": { "role": { "documentation": "Information by business segments.", "label": "Segments [Axis]" } } }, "localname": "StatementBusinessSegmentsAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfChangesInGoodwillDetails", "http://www.cadre-holdings.com/role/DisclosureSegmentDataAssetInformationOrOperatingExpensesBySegmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r2", "r67", "r90", "r91", "r92", "r139", "r140", "r141", "r144", "r153", "r155", "r173", "r229", "r341", "r342", "r411", "r412", "r413", "r429", "r430", "r490", "r520", "r521", "r522", "r523", "r524", "r525", "r612", "r613", "r614", "r646" ], "lang": { "en-us": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF CASH FLOWS" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED BALANCE SHEETS" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (DEFICIT)" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r139", "r140", "r141", "r173", "r557" ], "lang": { "en-us": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "auth_ref": [ "r36", "r37", "r341", "r342" ], "lang": { "en-us": { "role": { "documentation": "Number of new stock issued during the period.", "label": "Stock Issued During Period, Shares, New Issues", "terseLabel": "Number of shares issued", "verboseLabel": "Issuance of common share in secondary offering, net of underwriter discounts and issuance costs (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesNewIssues", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "auth_ref": [ "r36", "r37", "r341", "r342" ], "lang": { "en-us": { "role": { "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).", "label": "Shares Issued, Shares, Share-based Payment Arrangement, after Forfeiture", "terseLabel": "Common stock withheld related to net share settlement of stock-based compensation (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).", "label": "Shares Issued, Shares, Share-based Payment Arrangement, before Forfeiture", "terseLabel": "Common stock issued under employee compensation plans (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesShareBasedCompensationGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "auth_ref": [ "r36", "r37", "r341", "r342" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.", "label": "Stock Issued During Period, Value, New Issues", "terseLabel": "Issuance of common share in secondary offering, net of underwriter discounts and issuance costs" } } }, "localname": "StockIssuedDuringPeriodValueNewIssues", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "auth_ref": [ "r36", "r37", "r342", "r397", "r403" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).", "label": "Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture", "terseLabel": "Common stock withheld related to net share settlement of stock-based compensation" } } }, "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).", "label": "Shares Issued, Value, Share-based Payment Arrangement, before Forfeiture", "terseLabel": "Common stock issued under employee compensation plans" } } }, "localname": "StockIssuedDuringPeriodValueShareBasedCompensationGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r37", "r42", "r43", "r133", "r222", "r225", "r506", "r546" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.", "label": "Stockholders' Equity Attributable to Parent", "periodEndLabel": "Balance at the end", "periodStartLabel": "Balance at the beginning", "totalLabel": "Total shareholders' equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfShareholdersEquityDeficit" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "terseLabel": "Shareholders' equity" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityNoteStockSplitConversionRatio1": { "auth_ref": [ "r343" ], "lang": { "en-us": { "role": { "documentation": "Ratio applied to the conversion of stock split, for example but not limited to, one share converted to two or two shares converted to one.", "label": "Stockholders' Equity Note, Stock Split, Conversion Ratio", "terseLabel": "Stock split ratio" } } }, "localname": "StockholdersEquityNoteStockSplitConversionRatio1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "pureItemType" }, "us-gaap_SubsequentEventsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SUBSEQUENT EVENTS" } } }, "localname": "SubsequentEventsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_SubsidiarySaleOfStockAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of sale of the entity's stock.", "label": "Sale of Stock [Axis]" } } }, "localname": "SubsidiarySaleOfStockAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SupplementalCashFlowInformationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "Supplemental Disclosure of Cash Flows Information:" } } }, "localname": "SupplementalCashFlowInformationAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_TechnologyBasedIntangibleAssetsMember": { "auth_ref": [ "r449" ], "lang": { "en-us": { "role": { "documentation": "Technology-based intangible assets, including, but not limited to, patented technology, unpatented technology, and developed technology rights.", "label": "Technology" } } }, "localname": "TechnologyBasedIntangibleAssetsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails", "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TemporaryEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Temporary Equity [Abstract]", "terseLabel": "Mezzanine equity" } } }, "localname": "TemporaryEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_TemporaryEquityCarryingAmountAttributableToParent": { "auth_ref": [ "r290", "r295", "r296", "r297", "r303", "r304" ], "calculation": { "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "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 June 30, 2022 and December 31, 2021)" } } }, "localname": "TemporaryEquityCarryingAmountAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_TemporaryEquityParOrStatedValuePerShare": { "auth_ref": [ "r28", "r339" ], "lang": { "en-us": { "role": { "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.", "label": "Temporary Equity, Par or Stated Value Per Share", "terseLabel": "Preferred stock, par value" } } }, "localname": "TemporaryEquityParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_TemporaryEquitySharesAuthorized": { "auth_ref": [ "r35" ], "lang": { "en-us": { "role": { "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.", "label": "Temporary Equity, Shares Authorized", "terseLabel": "Preferred stock, shares authorized" } } }, "localname": "TemporaryEquitySharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_TemporaryEquitySharesIssued": { "auth_ref": [ "r35" ], "lang": { "en-us": { "role": { "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.", "label": "Temporary Equity, Shares Issued", "terseLabel": "Preferred stock, shares issued" } } }, "localname": "TemporaryEquitySharesIssued", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_TemporaryEquitySharesOutstanding": { "auth_ref": [ "r35" ], "lang": { "en-us": { "role": { "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.", "label": "Temporary Equity, Shares Outstanding", "terseLabel": "Preferred stock, shares outstanding" } } }, "localname": "TemporaryEquitySharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/StatementConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_TradeNamesMember": { "auth_ref": [ "r450" ], "lang": { "en-us": { "role": { "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.", "label": "Tradenames" } } }, "localname": "TradeNamesMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureGoodwillAndOtherIntangibleAssetsSummaryOfIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TrademarksMember": { "auth_ref": [ "r450" ], "lang": { "en-us": { "role": { "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style.", "label": "Trademarks" } } }, "localname": "TrademarksMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsCyalumeDetails", "http://www.cadre-holdings.com/role/DisclosureAcquisitionsIntangibleAssetsRadarDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TypeOfAdoptionMember": { "auth_ref": [ "r0", "r1", "r2", "r3", "r4", "r143", "r144", "r145", "r146", "r156", "r223", "r224", "r226", "r227", "r228", "r229", "r230", "r231", "r289", "r407", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r427", "r428", "r429", "r430", "r482", "r483", "r484", "r485", "r486", "r487", "r488", "r489", "r490", "r491", "r492", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r514", "r535", "r559", "r560", "r561", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r617", "r618", "r619", "r620", "r621", "r642", "r643", "r644", "r645", "r646" ], "lang": { "en-us": { "role": { "documentation": "Amendment to accounting standards.", "label": "Accounting Standards Update [Domain]" } } }, "localname": "TypeOfAdoptionMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesAdoptedAccountingPronouncementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_UseOfEstimates": { "auth_ref": [ "r174", "r175", "r176", "r177", "r178", "r179", "r180" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.", "label": "Use of Estimates, Policy [Policy Text Block]", "terseLabel": "Use of Estimates" } } }, "localname": "UseOfEstimates", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_VariableRateAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of variable rate.", "label": "Variable Rate [Axis]" } } }, "localname": "VariableRateAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VariableRateDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.", "label": "Variable Rate [Domain]" } } }, "localname": "VariableRateDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureDebtCanadianCreditFacilityDetails", "http://www.cadre-holdings.com/role/DisclosureDebtNewCreditAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Incremental Weighted Average Shares Attributable to Dilutive Effect [Abstract]", "terseLabel": "Effect of dilutive securities:" } } }, "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r159", "r168" ], "lang": { "en-us": { "role": { "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.", "label": "Weighted Average Number of Shares Outstanding, Diluted", "netLabel": "Weighted average shares outstanding - diluted", "terseLabel": "Diluted" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]", "terseLabel": "Weighted average shares outstanding:" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r157", "r168" ], "lang": { "en-us": { "role": { "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.", "label": "Weighted Average Number of Shares Outstanding, Basic", "terseLabel": "Basic", "verboseLabel": "Weighted average shares outstanding - basic" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.cadre-holdings.com/role/DisclosureSignificantAccountingPoliciesWeightedAverageSharesOutstandingAndNetIncomeLossPerShareDetails", "http://www.cadre-holdings.com/role/StatementConsolidatedStatementsOfOperationsAndComprehensiveIncomeLoss" ], "xbrltype": "sharesItemType" } }, "unitCount": 9 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "3A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721659-107760" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.7)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.9)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3179-108585" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721663-107760" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3367-108585" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3000-108585" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3521-108585" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721665-107760" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3044-108585" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4297-108586" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4304-108586" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4313-108586" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4332-108586" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=SL98516268-108586" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18726-107790" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "5A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721671-107760" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(c))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(f))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690" }, "r138": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "235", "URI": "http://asc.fasb.org/topic&trid=2122369" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "5B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21728-107793" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(4)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "5B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721673-107760" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.M.Q2)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1448-109256" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1377-109256" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1505-109256" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "5C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(2)", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721675-107760" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1252-109256" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1707-109256" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1757-109256" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "28A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1500-109256" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1337-109256" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "5C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721675-107760" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e3842-109258" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e4984-109258" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "5D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721677-107760" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8657-108599" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8672-108599" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8721-108599" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8721-108599" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(j)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8813-108599" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "26", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8844-108599" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r20": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/subtopic&trid=2122178" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8924-108599" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "34", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8981-108599" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9031-108599" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9054-108599" }, "r217": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "http://asc.fasb.org/topic&trid=2134510" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5212-111524" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(4)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.BB)", "Topic": "330", "URI": "http://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729" }, "r235": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "330", "URI": "http://asc.fasb.org/topic&trid=2126998" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "05", "SubTopic": "10", "Topic": "340", "URI": "http://asc.fasb.org/extlink&oid=123349782&loc=d3e5879-108316" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "340", "URI": "http://asc.fasb.org/extlink&oid=6387103&loc=d3e6435-108320" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=120320667&loc=SL49117168-202975" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6787-107765" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(3)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "((a)(1),(b))", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(2)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(3)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6801-107765" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r262": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "350", "URI": "http://asc.fasb.org/topic&trid=2144416" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "15", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=123398962&loc=d3e400-110220" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=123351718&loc=d3e2599-110228" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=123351718&loc=d3e2473-110228" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "3A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=SL51724579-110230" }, "r272": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "360", "URI": "http://asc.fasb.org/topic&trid=2155823" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "420", "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.P.4(d))", "Topic": "420", "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "440", "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "440", "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r277": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "http://asc.fasb.org/topic&trid=2144648" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(27)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349" }, "r281": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "http://asc.fasb.org/topic&trid=2127136" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "((c)(3))", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(5)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123465755&loc=d3e1835-112601" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123465755&loc=SL6230698-112601" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S65", "SubTopic": "10", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359872&loc=SL124427846-239511" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(13))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(14))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(19)(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(19))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "69B", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "69C", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "69E", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495743-112612" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "69F", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495745-112612" }, "r338": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "http://asc.fasb.org/topic&trid=2208564" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Topic": "480", "URI": "http://asc.fasb.org/extlink&oid=122040564&loc=d3e177068-122764" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(22))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21463-112644" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 4.C)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187143-122770" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123360276&loc=SL49130531-203044" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123360276&loc=SL49130532-203044" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130551-203045" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(27)(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130556-203045" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130556-203045" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130556-203045" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130558-203045" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130561-203045" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130563-203045" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130563-203045" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130564-203045" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130543-203045" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130545-203045" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130549-203045" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130549-203045" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130550-203045" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r376": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "http://asc.fasb.org/topic&trid=49130388" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "710", "URI": "http://asc.fasb.org/extlink&oid=6409733&loc=d3e19524-108361" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "30", "SubTopic": "10", "Topic": "710", "URI": "http://asc.fasb.org/extlink&oid=6409875&loc=d3e20015-108363" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "710", "URI": "http://asc.fasb.org/extlink&oid=6409961&loc=d3e20517-108367" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r381": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r382": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(A)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(B)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(C)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(03)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(n)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(d)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "80", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=123468992&loc=d3e4534-113899" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a),(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)(i)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(g)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 14.F)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=122142933&loc=d3e11149-113907" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=122142933&loc=d3e11178-113907" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318" }, "r419": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r420": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r429": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r432": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.7)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r440": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "http://asc.fasb.org/topic&trid=2144680" }, "r441": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123586518&loc=d3e961-128460" }, "r442": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123586518&loc=d3e1043-128460" }, "r443": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r444": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r445": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463" }, "r446": { "Name": "Accounting Standards Codification", "Paragraph": "37", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123455525&loc=d3e2207-128464" }, "r447": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123413009&loc=d3e4845-128472" }, "r448": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123413009&loc=d3e4845-128472" }, "r449": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5227-128473" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r450": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473" }, "r451": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)(1)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479" }, "r455": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "805", "URI": "http://asc.fasb.org/topic&trid=2303972" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569616-111683" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569643-111683" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=d3e5614-111684" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r463": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(3)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r467": { "Name": "Accounting Standards Codification", "Paragraph": "4J", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5579245-113959" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r470": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5580258-113959" }, "r471": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959" }, "r472": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959" }, "r473": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959" }, "r474": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959" }, "r475": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959" }, "r476": { "Name": "Accounting Standards Codification", "Paragraph": "4C", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959" }, "r477": { "Name": "Accounting Standards Codification", "Paragraph": "4C", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959" }, "r478": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959" }, "r479": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r480": { "Name": "Accounting Standards Codification", "Paragraph": "182", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123421605&loc=SL5629052-113961" }, "r481": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=121549185&loc=d3e80748-113994" }, "r482": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)(1)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r483": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)(2)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r484": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)(3)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r485": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(b)(1)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r486": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(b)(2)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r487": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r488": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r489": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(2)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(5))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r490": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r491": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r492": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r493": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r494": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r495": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r496": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(1)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r497": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(2)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r498": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r499": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19279-110258" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=d3e1107-107759" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r500": { "Name": "Accounting Standards Codification", "Paragraph": "6A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=SL6742756-110258" }, "r501": { "Name": "Accounting Standards Codification", "Paragraph": "6A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=SL6742756-110258" }, "r502": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123594809&loc=d3e13220-108610" }, "r503": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13433-108611" }, "r504": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13467-108611" }, "r505": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13476-108611" }, "r506": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612" }, "r507": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL120254526-165497" }, "r508": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL120254526-165497" }, "r509": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r510": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497" }, "r511": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497" }, "r512": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497" }, "r513": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL122642865-165497" }, "r514": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL122642865-165497" }, "r515": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=120253306&loc=d3e28228-110885" }, "r516": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=123602790&loc=d3e30226-110892" }, "r517": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=125521441&loc=d3e30690-110894" }, "r518": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=124440516&loc=d3e30840-110895" }, "r519": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(c))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r520": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900" }, "r521": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r522": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r523": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r524": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r525": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901" }, "r526": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391" }, "r527": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28551-108399" }, "r528": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399" }, "r529": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.1)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r530": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123341672&loc=SL77916155-209984" }, "r531": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977" }, "r532": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977" }, "r533": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(1)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980" }, "r534": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918701-209980" }, "r535": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "848", "URI": "http://asc.fasb.org/extlink&oid=122150657&loc=SL122150809-237846" }, "r536": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r537": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r538": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r539": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.14)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r540": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r541": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864" }, "r542": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39691-107864" }, "r543": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "850", "URI": "http://asc.fasb.org/topic&trid=2122745" }, "r544": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r545": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r546": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766" }, "r547": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r548": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r549": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.17)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r550": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r551": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r552": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r553": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r554": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r555": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r556": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "910", "URI": "http://asc.fasb.org/extlink&oid=123353855&loc=SL119991595-234733" }, "r557": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856" }, "r558": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959" }, "r559": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r560": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r561": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r562": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004" }, "r563": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61929-109447" }, "r564": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61929-109447" }, "r565": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62059-109447" }, "r566": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62059-109447" }, "r567": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62395-109447" }, "r568": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62395-109447" }, "r569": { "Name": "Accounting Standards Codification", "Paragraph": "33", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62479-109447" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r570": { "Name": "Accounting Standards Codification", "Paragraph": "33", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62479-109447" }, "r571": { "Name": "Accounting Standards Codification", "Paragraph": "35A", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=SL6807758-109447" }, "r572": { "Name": "Accounting Standards Codification", "Paragraph": "35A", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=SL6807758-109447" }, "r573": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(c)(1)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61872-109447" }, "r574": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(c)(2)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61872-109447" }, "r575": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "http://asc.fasb.org/extlink&oid=123384075&loc=d3e41242-110953" }, "r576": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(1))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r577": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r578": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(13))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r579": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(15)(1))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r580": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(16))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r581": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r582": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.15(5))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r583": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.17)", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r584": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r585": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r586": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(26))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r587": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r588": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04.9)", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r589": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(2))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19,20)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r590": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630" }, "r591": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "405", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6957935&loc=d3e64057-112817" }, "r592": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(16))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r593": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r594": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(15)(b)(1))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r595": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16)(a)(1))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r596": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r597": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r598": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r599": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222160&loc=SL51721533-107759" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r600": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.(a),19)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r601": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r602": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(22))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r603": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r604": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r605": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r606": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438" }, "r607": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439" }, "r608": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441" }, "r609": { "Name": "Accounting Standards Codification", "Paragraph": "29F", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117819544-158441" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r610": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r611": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r612": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r613": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r614": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r615": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(1)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r616": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r617": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r618": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iii)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r619": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iv)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r620": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(1)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r621": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r622": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "310", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Topic": "948", "URI": "http://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014" }, "r623": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "440", "Subparagraph": "(a)", "Topic": "954", "URI": "http://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629" }, "r624": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column B))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r625": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column C))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r626": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column D))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r627": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column E))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r628": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column F))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r629": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column G))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r630": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column H))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r631": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column I))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r632": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r633": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(c)", "Topic": "976", "URI": "http://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663" }, "r634": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "978", "URI": "http://asc.fasb.org/extlink&oid=123360121&loc=d3e27327-108691" }, "r635": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r636": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r637": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r638": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a" }, "r639": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r640": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "r641": { "Name": "Securities Act", "Number": "7A", "Publisher": "SEC", "Section": "B", "Subsection": "2" }, "r642": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "848" }, "r643": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "848" }, "r644": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "848" }, "r645": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(01)", "Topic": "848" }, "r646": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.24)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.25)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.6(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.8)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.9)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=51824906&loc=SL20225862-175312" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=51824906&loc=SL20225862-175312" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=51824906&loc=SL20225877-175312" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=99393222&loc=SL20226008-175313" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=99393222&loc=SL20226052-175313" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(dd)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e637-108580" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e640-108580" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e681-108580" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669686-108580" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e689-108580" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e557-108580" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1474-107760" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(210.5-03(11))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(24))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(5))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(b)(2))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" } }, "version": "2.1" } ZIP 87 0001558370-22-013321-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001558370-22-013321-xbrl.zip M4$L#!!0 ( #>$"U4CL!0 /5 1 8V1R92TR,#(R,#8S,"YX MQ$@:=8FP ;2/?.TE[ %^(RQ M:-WJY)EQH9G&YXOV9>N" M,$,Q56GRY_;GWZZ['1^NKXFC8;+Z8X*R&D:1++L M7+;]E)[+U31NR<_-=KO9:74ZY/JVY-O^VQ%;=V"ZC&^VU27,D"MZ0PK)4002(9J-L0MR!(J].7JTN1K**C5 M;O[V.)I+,3UBQ>8KD%"R&%>L3TU(]:6'!-4*B^/2?6PZB3ZIGLCRJOG;2#/^ M\"B%IL0K" G'NEG[78)N,B5&-\&MI!KQD^*R63N>(!6DA,6R>**J-TU(#QVW3C.!:#$(A6'D6%O.W$MK],"E"QF"&VILP:2,4XMZ,Q% MHX.=N9-=M?B1981T@N0F)DM^6/"AHE6VXTS)4]<'R@-(5C9 ?I>A0/^;OT?V MI-/B;0829"U^O[Z ,8 0.0I0PS M63GRF_=UM].,E>E^@H]HQ;+&^&EO]13%:3G=>6NH;: M,[=0-1ML:<]L""[2EHU,D09H85;IF'?2,9\OX+_'P7@Q)Y-[,ID.9MW%$ A( M=]P'RL?I;/!E,)X/OP[(< R_!^3#:#*?_[VVCC>RCC-91J95M(^M(E#0(4$0 M[NE?#^C*N5]9E%-=V',3YZ&XK7;3 _W M]Z^GX7SH=-* L,,3_I)LR0>7<=U!%T)R:G-E W.B*=<4AFU/4]T^#[K7>ZKQ MKU2W65Z@2W#+LH-.AAUX11)9)@D5*GMM+);(1]OVA<4VL#>-#T-]8X\RV*P3,BKI; MDUO:GU*UP>L.'!> %@34<:HFJ^YZS64L$$950]%V5)_2/?K3D]7(--8+AO' =*A+LLHR M@H@_X!F!ZP^"#5"O1++SBB0[ITQ,UJ'4A@7%UB92T$2@T6XU2T[(Y.3;L("2 M00TS<6];0/ (\FWM[8BA#^C4N)@Q\ \Y4Y\,<,O&IM'#J)U.H==UI]?&6M)+ MEG2G6527O[L HC/Y2["R'RQ-NJ'^U+HZ-M3>Y/%QN'#FGDZ0:;P8CA\&XQZZ M/0WB"$VVCM1$QV(]NQ6$NX(3&R4GAFDT%%]V8GK".]F<>(7BR.]RHKX&MG3CNDAT8_ZE.QM\F8SZ@]F<# MM/@=H!_<#WO#10U]H6GR EM9ZM37I4B#[PJFLY%>(32=_>!PJ<')!&>NK0T- M6@PUK*XB5SR!<@I-#;O_KJI*V:@^-,#KWTH%$T:1\HS2!X!VU%V=#Q_&0VA] MW?$"8.]-GF3_3Z;0?-TAX% >"118]]?GL@MGMFJH(XTN-1WD9.(1!D?(IW8M M/SXU,68,MXM SCLJM"3_XRV+RK*MB!>$WIJTWX!%TG\%K6S/I#(B);>%V!^0(9C-FUF&E M<\JXI"ECB*>6E66)D1!-MB5Z(A'JR$2$%(J8!ZFDF1K,(IH4C'P ]N+O!+Q< MA[@VQ;,-E>8.K>.0P$T#_E2D?UENS,S#,)MW,2@U7]:R3[J?W" 'YM[ 5B_NG&-)M[>'X7^;--)D9\C"]3KWLJ[+N,;S M+1=V\\-=BE^6-42Q/P_- 6X"N410061I9[HCC%R8Y@[1586\0I%@'S0-U6P8G7=2!S=O_#9XEO M;H/(PR3+'B(!CGA[\(HB5-=)L##72FIC.,$8BH11"^;.@C_B)L;#'XB7:G6\ M]$U1EX=_3@4_Q.1M;< MK+:%\VTG\[=TX#B_9N#V>3E*[AO+9IBU02SB-N3< M(!;8+:(X98/QD+5;>FTT;V T9]IKF,DORV0BD:7B)E-O'#QQG]F8O?0X@W[; MWU:3LI,LF3AKKU@$:G>O&' D#DOB\ZPA+ 9ACQI4U:CAU.,]57!!,6G2F)TA M"\J(,^!"Z7'U\/3XUG"6W/U2),>?K?O%FSD(Z$^6*0#NQ 0)@/FQ9KO MMT\43#U+T MJ4X-X>VS'AH*U(7VS/!K\J[: IG3,;^)^N=XLGHPGLNSUF0ZZLH +Q;1P#*( M7PC!4FK03P!]\,H4&ZOR."4O\)D,LL"/Q/!BP?>+(<%R:OQ/Q7]NF]*"7;Y M1\/NW7 T7.!^G"^#49_<3V9DWH59=(UN@8BLCJ<%II1;^P6'YD@5NRF$&;[?;<[>DUBKDWW;&U](VI167#"X3!)]P_ M:N0>EA5W>X\^8L)5K MLL(IN3:5 J9B+P7[;H/:@^>4XVY)9&G@WMQ%$+FW1L:^!.W.CC<@@=$:M#* MWB\'PR8D;YBE@6YY+YL+9TJ'TMD@G_/F.?(AQ+INC&]Y$UU>Z$_CFVX=G73K M*'M'76U'9STC4>CX0RKB[1+' FOPBFQB3=NFF@%-QIUC-0[%]Q)E;Q3*P"3? MQM :F@+7>*7J"A!.D+7481"5_77R)PI M]!NCFWWC-YIBM(%87;3/U&.=0YUBQTQVZ\K&>*Y/VPY^"9 M93F18\$3KQ_)HU5NC5\C(82'HOM+\%@\ M%D0")=4F<"83P">RR@ ?S)<%=]SI]PRXY_U^A@_\LH<>8L15YE5\L(/I\(;3M#OI>OFYUCP3YAZ!]77+]TN3K9J?5NG)0/:XAMV"/!>5*A,O+ ME>31OKFY:4HJ8()GAG$^U/2$OR#-LZD%6!15ZPB^*FH%AE)4J[!M55$IG2Z+ M*@59F/ZV^IS:W^';192KZ#;8PC*WW5=-],TMU;R;;Z,=8(XL:3TB*"@?A SW MB"Y3 ER)PY8@7^(P]F[&%?_!?>0OS5>AWM+=#N=/\IO[Q3!,1P7G(WX#8S6Y M10RZ96)'E8,E22,43+EG(5"0GAUXD9\ _&\Z? MEU"@9W<%"I?13;Z7_'(6'\SB_9!"Y!?AN"'>. 9OR*>5U7@YCK/IG(=R-9!/ MH]UIM#^5%^2JJ1GX4)C"\@DAL^"OAI0WT?Y2[5R"^!EP)(_ MYB]S1<52LK!%8TWI3N+9:+5!\ Q#B,W99-#NO2^- Z\2 @ENE1#&R^4( K]* M"1&J7-7B31QWD&\+.:6UD:R<\K5LJ]G;>\V 7S!&.6,-CKO_SDGOC-XHFW:[-4$BRO=#BVVQ8P5U M[*6P-$N^KO# 37OGD6I 2!1!:WN6:4@'R!K'Y3M"S7[!7ZTZ';P&E4V@<10'^ MAH3[UO*2_AIM$]4:;!E? Q10X(NUP8,9U-@G:YB/O*K*CNWMDO')ZI$:]@IR MV/C0*!Y \=PDJ6,J5=!@\8[8->,_6*F#T77=/+$6>4@,JH"OEQCK-]; H4U4 M ,-?C"L:U1\9UGQ _&C2L6FITL'\L0H\78K+>X:/A.E=-VX7T22%IHHJR;N5 M#>HL"424B4VMHAIR@24B?NAK%<4.7'^,LQ$VTIX93MB&ACL_<;X+':/.S[NJW?UI"@;J[%1&)7I.$*@OO[C#;RUU?5)^Z\ZP8;1(IW\^T"_TF@9>5 MX3EDF->F>UBIE%7$-.4UBQPC>&:>JH[,!Q4&4/@6PW3^0P^35>BIAUC%<^2J MONK^28U8%0.IU74?PN)ZPWBB/@>"J@WSB2&JF+E/!F45NYF>S?%RQJG),>-D MA0]?C$QJ1"?<&8155"Y1F?<@O)R+>N^=8!N)GZW&4511G9"<%$-GN :# 8O M3 NWLFG09G:QSDMY%F_LU3@K.=8Y8LDOT%]@9XC6&?5DXI.K"/<41AA!LJ&C.H,'N<.O8#Y[RA>27K6S,K!$+")^H;0)UI34<&M!2J6!# M(U;ZOLT6I@Q21&][C:F!DMPJ74/!MONT6W'SN''G(Z]D._\G-53&A;N&!>A% M^N%$BBIVQ7VV8N"[J0OZ&C@%-&96"*U$FG?0E.]F+A[ M+D;<ZIHR68$M@O,>[G:+9:N,X6;U17V*-_OP_=,?W@O( MT?6!1)(JVFO\<]'1&$DJ6145BSYGWK77MK!B^YD\Q%54LD?%Y@[\;S7V]=BO M3,C#^K*,$)@%<@6;IB?A#^Z2TN4/7K3K>CZY=8_-^VXZ)U^WQ"=EO9&G^T*Y M*AYPH8S%6D91#J'8-LS_F:B*C21J(F7O@Z/LKZ=@I 8<1BN\]'0RIYB9X!RK MZ,=.!8M"_60\0\=PDK4<6+RIN?P%E8%]@P*:+$SL+4^HDF-&E:N8XUO+XQ9G MTXBJNB09V_U'_()4JBHZ!(EF%U$MD[**ZMW90C.8P/#44G,V8P8BB\&;A[IK M\.3P+$Q Y5*YW\WH'Z.=>R'/GTP=JFB_*XT>KMQ S;G\F+'>?N-//Z]:[6UQ4_M,QM97%^.^,\GO3#C;$D[A4I:XR7=,] MN$7;X#-QT2EF(DD5>Z(1- #&_#>AY:42GA7OO4!=WV9)J)?,7Q6\,]M&]HJV MOYB=6$6E6;R;6@JV;-S:YEP;O0]40B+%NQF7YC VX$'IO1?QBT9YDRBJV/ C MPJ8F--5D_"J8&G'?AMJKES^O Q>SE+%-[@<1!V/YZ5C^_/-.@K6,#V;.O9YY3 XZ.T-DO/__U M+U_^5JO]^V'4TPRL>Q:T74TG$+C0T%Z1.]+$ MO8$"4&FJ3T09,R@IMV? MWYS?U6]NSQN-V^MKK58+*#T A];$ML9)-L[KJU]: 55L?];N+NKUB\9EHZ%= M?V[O5^>8S&C]R_K%OY]Z8WT.+5!#MN,"6X=G&BW_V>%?]K .7,ZK2/6W9V*& M!*XN5FT)2[!/M;!8C7U5JS=J5_7S-\7-UR9#\-':I()FFM+#M8!,93*X/P&3$QW,(7>=,8]1_C+IKW=$!(S7')M-" MYUS'U@4K=I&%'H>8B6\7>X&W^M(93 <+2+BR.$W;:&%K0> -'-W$CD=@4_^?AQS$Y3#V M+ N0Y0@8@+2A"Y IB5:";.E@AQ[1Y[2!(4$Z9-)!1J"/5!T? 2*_ M.#1?,B M3ZNEL*IKOU %Q01!9T?XVRB5 ND;QL8K71%13@_<.21=FTZN,_1LPJ;CT"FK M:6'BHC^Y-#IO"VJ+X",FC\A&+NQ1LV1L5MB1,?OK3RGL;<-GERW7#,^$U*Y1 M@P[LY9A]NR.?,A N#[!OVP;3YFQ&X(S:=3JR;1TM@#D$2V;C!],>MF<32*RB M6)&WR5*81,5E(9=/=GR:MUV*C?HUU!H\>BXM\$3UV?*L'F16T>^_,X+48A)H M_+"I=>QCN\76E2:@BAXL&NP9+\])@@5R@G U#V3 MFXH>_2T0#T-5W'H^H@7PS844I;'Z%KFL)>JT75YJ-6U%CO[=&O3'@UZWW9QT MVMI#L]?LMSK:^'NG,QE+X.0H*4X3ZVL=,9D3B,FZ/C)R#J7':4V!\\P)4A=Z M!L""N:;U"VBZ3O@-4]UZ[;(>N'T_!5__[AO5D#05)#2Y([[VXT49/>/3A=\# MJF>Z1PCEM:"C6\O^?G-U>__I[JI1OZXW[C[=W%W=1J!$E*E)UE$!HH?MT#]C M^K4NO:#$A<,L%J-6HS.7%=:?$FS%^1DTAO, P(0.O*]G]3/-L5!+[' BBH9P@-E=,?>AVWG338^8P M14A9JAZ3 '/C"81[I9QPVW *J7$P_/#!!+RM@ E$*JYP3(*41!&([UHY\0T) MILLD=SFDJPZ7+I$Z=#6U8(L(L0"3JAR3"*5Q!$+\I)P0?8RMQ!7)6IEC$E-Z MQP.YW"@GE\@B*EDX\8*J2BBI>XFKR P"5&\).21P 9 1Q(&29;BU;#7$F!V: MPFM0/QZZ%,]KT2+5D%LJ(F57E4U=QQZ/[N@0O;!H#H60,L$E5*F&.*41*KOJ M9/MO[%^VY'H!9A#Q&\\Q<5D E>FMXP<"!<+.3F"=,;PMLBQMLQ*IAD(4@%G997,/@6=D(A?Q MH/W8Q?H?+'@.B<$JZS4(_WG7JP@F8RNP ;3 M"7@3+TIEJ%1('XI KJPWV30,Y/=E2/WBKAUL+(N48'OI*@E; J&R/B=+/\ V MYP'/!Q.Y'AO%UD'>*;"KFUN,F: IZU1.H+7 !)"EC[D%"%G2F:AI,:>YZ;H$ M/7LN\YHGF*Z4Q>Z$-!WU-"#/,JT8V,J:[(3DHH2!+JA1#8G+ E36)'\O[3A*"Q?(:'*853658S@W]A.H\C\ M7%UV:(7[2Q3NZDAM9GN7+Q<89N_T=O,MQC41$'L*S>8WDLWGC"?W?4Z<_ M&6N#1VTP[(R:DRXMH#7[;8T6?1J..M\[_7'WUX[6[=//'>T?O<%X_,\SM8_Q M4;\JSJJ-(;%1IJ2\T+ #CW08^#%0CVK+NP8\P"DF,+*FZ;RY!% 51C8@RRX5 M*P_:T)I4MV@'9UW;A00ZXC33O;6X-MCN+Q6P)EO58#U%];#<4-:?6)U63ATV M6TJJ)_A#RW5+9#4CFY35"+HB=IPAP5-A@E&DA'H:D)7_<LCF S8E,V>C^"/.F8'8993@BP';J(>+_+C;LCD:\= MMKZ(5A%*?">J55*/XAFA;/">.J!X?3I,G@2$Y=63?_D.NARSE+4W(>IDS=@H MM0ZQKL"!9#EI; ODI0-,G?C+6[^S-#S9T9Y*J]MZD!V]#66M6D+U$O MZ2C$)J-2CC$FUBC/8*><*1RRFYSIX,M^]&='JNK9@PRBCEGX@O$KZ^TG@0T? M"/@.C1G\!I#-OFQ.Z1)G!'43. Z:(O\A%&IXQ..FR";44ZY]:(N<3A;"P^HH MJ.^QQ: S?A2HH\FM')>:%J) !>AL#IY61VWWK; ?JEJDJN914@4W>T2X'^DX M1+,@UUB/AC@96]FG0">,_WK^E5O%+S?WTH?CTO;]KQ\.QV1E@R#229KK\!HW M=[>7Q^7@I*/)+JR28A[1M\NR!#>N9!*06\WQ=^VQ-_A-]6="MER(R#'3SIO^AS8,SBB+.M,IU 7V>]#=Z(L M(\%Z/B3X!5']>EC^<-@1KT=D UMGN5C49KXDW;V0G8""YJ44-=NP6+MP3UDO M(7R_B9T 8\AL0Z0_6TJJIR@[BBDN]ZRH]["G)KA'(-*C\/$+Q_'88U7;4F6R M5*FP&'/#WX/'))#G""Y6_>O:CD=8QX8$6LBS5H"W2353Q:K+-C\34K-=2O.) M_7Y#_WV]C><-1=8YL4Z%E2 __M3SK*7)/ZK3[&(&82[<>K$3D'(FR*G'6I40 M+'5*V;G[%IV-$FXN%I0_,5&G8T^]1+TTF5..Z! :/+TOB\R%Y==Q7]W<73>J M)G,Y[(',;Y7UJ8*$VPF>@#>6@!M$F=A+ 7- X .=JGBV#+0=SNH4QTN6W"DH M3)&L"?3I3FT;$KHN_#'P\)K@#+9D:[U34)%V0H9_D.WOMK[JF7_>Y$4SWEVU'T<5TJGC_*1IGC M4(.W#,. 7) &'2).?'T^'[&35*C4<821>J$$5&17;J@;@N4\&ZB_VHH55UM%?*Y#-5[@N2,-7]D'+U>ZOU*'#E%HGH %Y.*!L<%8J M])HE>EA)D4L 3PV;EG8OL,42A/_D/1],5Q%$GO-!72!^MW6"V<]:_02T82=6 M*!M*;<,%@3KBJ.C?)@R2SJ-HA7-">M43T(O<; @#59?**85_;UY"(OY[@1,0 M< K84(P%!AP%27+K%BB,7FS>$I54M,+2DH8=RDV]?0@!3Q@<9Y?MK2T$UCGS MB3+U^F-[:S?N*7N!6)@G,,%-G;*,0(J0#C-W.32![5*V,D8N+/$1P>P$U%.K M'84JSKK(R0QUKY^* 7OP'):&Y$#_("0?@_XOHHN"94BRX=%WE]Y?8PH]K,UWF$138/D=4T^QRY]:%95*]E>=]G/.EG75Q(Y' M(#<##N)='3.1DN4(&("TH0N0F>V8[75PA]@[5?JAV?K7C^ZXZ[_G4],"VO0O M3E[[1]" ZD_Y''IR4G 2YC?;RV/CU=2S2;+2D)I=Q9B531**XF79FA&#()!Y M0HTJBEL6;ND71VXW[D./T"F0']-B)S!MARXU27ACSB- Y%=@>C"7[6^DV/ZP M:8VWK:TUSJ^19,UKO/VCFQ]"=6IAZQG9'-((ZGAFHS_I&MZ@JH>FB*<5\K2O M4)'8JQ^OR&1/!T32"VD9SX)&_'7RO;=6BNG)B68KBL3(;6A_Y-S=W5_GMC$>?(H<<%;_1C )3) MZ.R!\"/6=-EM[X.T_:'W"O []<1&%=2_:[O GJ%586X-)G-@A[&'@RS_4_KP M,1P4XKNR9UE2-/9#F6+*E$7.ZAU7*9)=Z5DDF7\2D>SPK.8$O!W6W&]O^&,4[&\4 M2'"\^*BWX)Q.H:L[72=>TJKE "U^Z&_DB%$)K#Z)^#-[OCTVH_6P/9M 8B5< M 'W0/GR,A/U9\GS,5R=U.W*;E%S&WG4\6[O;_[73GPQ&W<[X:%+O5EO.XGRY M:)'24JM7G7A$-G+FOC_+3O#_ALD?[+8XK,/@S;<1="!Y2;A139J2>@9D4R;Q M05X43&5=CQ7 _!I048GGD[!Z>24K0"/P^@1<2! PF0:/O<7"1%!.UEEH'+74 M

=R8L.3_:,0WZ/=.FF&A3WC?- M9)W3T*IW&N#=.YI50@*+Q>N&M$IE/5 DZM06[1I!"R"J*X1='>10/?\/!*(, MFP(HKP_/NYN[Z[+?1LDF^(W7C/;"!F77(7* ^]3Z3%ZA^0*?L.W.$][$VH'H MZ>E1)@XHN]"1P\J&R.05%Z(Y :W34Y@DX,I&[G) I.V+]A1S4CM171%"5S;[ M4A[D(_:*6=V$Q$Y35X3(B\]4%.QEB?O,NLGNXXAVO3FE;J- _KN2.V8-V OV M[&EY^_:V671^K,^AX9G^LU(+8"_'[%LYM_DF'@EO=QXF[+Z2@+J&IYKNT_^[ MHQFTA:/Q?*-;&>]['0(CN;UP:3%SUHVN[;C$8[G3+4#(DEV$9;%T$P&"I"KJ M#64QO^-F7!J9L@[G.I(?-O#M#UQ=9AR\(THV_Z3K!+F9;RNOF.M$JQ+.G=7?54 M)C*Z*]GUX75?8@YV(0H2-3Q[88VR,Y<$VJZ=,5*Z$\T/S9+@B[+A4RFHR='3 M/*0^E"B='75YL>?FOP M]-2=/'7ZDS'/CVH-^I-N_UNGWV(9T#7-[[QF^;W73-9\Z/ [&@D :!Y#H-E4 M?_05!@V'(/QJ#K_B5/=Q!)3 "LGQ1)/9G;D; @KSYI>A9-N><'V1N7HY,V&6 M[DD%#G(35,<"YA7]VC18+!_4C0]DY%'6T$!.GH+R9.6"NC& C"A3 MW'\Y*J>I*$G@U?7S9< EN?BR=$Y81X3PU?7E)> EN?&29$Y71X3H#^>O9^QM MNK.>AU U)%\P_MT\\R\7OF@"/^_G_P-02P,$% @ -X0+55!@XRK2-P M*L8# !4 !C9')E+3(P,C(P-C,P7V1E9BYX;6SM?6MSX[:2Z/=;=?\#[^R' M>_:#Q_9,,B>32G9+?DU4J[%\)$VR^RD%DY#,$XI00-*VSJ]?@!0E4L*3XJ/E ML"J5L20\^H5&=Z.!_ND_7Y>!\XQIY)/PYW>7[R_>.3ATB>>'BY_?)=$9BES? M?_>?__%__\]/_^_L[+^O)B/'(VZRQ&'LN!2C&'O.BQ\_.3.R6J'0^8HI]8/ MN:*^M\".\_G]I_<_7'[Z^_L/'_[^W7?.V=EFI"L4L9XD=-(A/[R_W/YRO1F5 MA#\Z/YQ?7IY_N/CPP?GNQP^??[SXZ#Q\W3;\RJ"<^]J6@1_^\2/_WR.;TF'H MAM&/KY'_\[NG.%[]>'[^\O+R_N7C>T(7K/_%Y?E_?QU-W2>\1&=^&,4H=/$[ MA[7_,4J_'!$7Q2FM"MU?'VF0#_#Q?#N7M 7_=)8W.^-?G5U^./MX^?XU\MYM M0.0_&TR2-^>_>O&V0['Q]^?9C\6FOF+H MI9^P-0-N2Z_/SY\WGZZSM&:,?Y MB9( 3_#<2;_[,5ZO\,_O(G^Y"OA8Z7=/%,]_?N=ZE*/]XW^"Y[_H,*S[KM\FP!*&+ M^!2\/1/DZ+U+EN>\V?DQ\Z34,&+)^;'DN/$C-R!10O' 94!$/A>Y:(8> QS9 M(:P>J1.4IOXB9 O716$\<%V2A#$#^8$QP_5Q-/"\%$04#,,YHO0#!CN.OF+$^WF#^ [Y]%<4)'@<3K";,%T<+IBJ M]:-&27@D2/"(_!OV%T],,PS8SH@6.%4*T3B)N6+D-&*XWN-XR#;*)1Z1*'K M-&W3))6/A@D>F0<>67&,=C]0$K(_W50;-[OJC6;N7.5/D^42T?4$>8@>20_M ML)TC^Y!0]XE-\$!]%_,-VF>[<*J/F6QOU4C=M*@R:^>D&H9LU2]\MHMGRK=N MHJC'[QS]C?Q>KQEKEL=J78.!.T?83$CKIT>U>3LGU[[XUD\8W0R=D&""GW'( M=!5V"=O[.)S,(I@B9NI?K:^?4!CB@+'M"R8+BE9/ZR/)474V(*1AEE*0>,P4 M" +6+*;^8\*_3A&HG3)&DP$A3!,NF.TLL$DQ1TEPK'E:<;)."/.%$._%#_AR M'L=/F.XKO\VN.9[S9;_ 3#GF/8XD4@T3PR;8_@]MT4LZ;R?DNL&/,8^Y>DF M&2_)R0]# ;N#.%[_')-,5OR@P7%=3B\FD$[0_0:A,I.B$"US$X MC-*]^R% 830BX6*&Z9)9@ PX_QGS;X\D@^4D, AQ^XK=A,.V_TO=Q-!/!(,@ MTYBX?S0J%HH9NG'1!0<%O^# NR.4>T+'NN>&HW?D6P3\J/$!T7@]HXPWR$WC M"$=[$9IANPGZXT6JB5&,4J84_)DQ':_2"%*XN'WETLJC!7G[(P/^1\YJ3:J4 M&CF]*L+,#V\0]9C47B=13):#5S^Z(4ODYYY?9$%V\\'*?"WB@ZB;H[3YLXC5 MEB)^&)][_O)\T^8SR\NQ#FH7T;_MS%5%A^/E9R&K$/FZFY(,TI_PR)/%KC$,/>]MO_9A/^OGS MYXL+Y\S9C@A7:-DPIFT1G"X16/ GM\ARSD?-ON+J^/+NXW"1X_=OFZ]^W:4=9GA&WWDC(LY X MF/F, 7K$09J)I^_S^^4>88Q[G7=&A#V(;DIJ>@]Y85LITM+6961WPCR@9;39 MRLB'GE.RM&<",0 FB=A,9)7%??.>FS5YC#[+:+%#[D=#X)T9<;1 $\J4P\_O M.A64J$R[ N +"+PE*O+H*>>+.J^1Z\\ M.]81:P!;7XU&"!77I"$B<%=HFOIGO3JWO2Q79JE?=Z1X(#25\UTRY/:/G='R MM63U[Y'%8@0IB2S':&BUBEA)*@,)9,46D"JN5DMD@*W:[9^_^)@RDCVM1_@9 M!V:+5]'99 UKN@.@3X'[T2&TUENM= RK35@5:<@78@Y2Z\M.C4)QL>E A["VR,LPB(<)TIVXJ15+6NO(I,B4T,@&AM ME6B YLM""RR$O6N+PU42^2&.H@W$1@<2HC[Z PE9KPZ)L,D*4.U&I39R)/=; MU7?PH"$V40#1W8&#&.CBIG$ +(15<<<1PB-F=7K[6=-7ZZ_HGX1>!RA2AC3- M1Y [^W9C@"37#LQ[M%1[6Y:C5"&;;)SCHR25V$V. KK]8(D-DJ6(B3UR$+3 M,-P0X2A-8#F*5*PKC .6=!9:H<)(54G8F':H+@+D:.!;UQ+6R!8U144DN_(G M=R\*\?N>S.01*0)Y0Z&3)6_:-6Y2+U+6U!"_FGQ(+8V)'H!6_4<9P+GSJ (4 MPOXX31ZC- LAOGUF_^.!6977*&XM=Z7D[4&AK/8:9>UMT*[3F]0R@1B"TKY/ M*0.]Y$VJ0(:R9GS/1W3-(Z/C>7I=1[-JA.V5 B3MT2'B.V#XWCV>%ZZNJ)>0 MMJ.<%$9=:UE4.AX16Z@Z65\2+$HKS AZ"$MM\(*HI]F42FVD& MANK$!(C6UX48Z.*RD ,+857<^2$*79^_W)6GL*G/ T6M58=8LO;=H9R:^G-, M^8,+4TR??=@/83,P4 E](P M)8!"6 &_(NKS.A3\^3*%_.\WDTJ%J"$,[)22?]C0",,:I5Y!8:*;O'6)/P2V M*.]B(+LZ$I[P@(CD%'C[F_!@M/1K!T +[Z+N_2H'O(8[I#(2$>$TK1[5%L#* M3V?WP(&@764O@UVMB[\H]*[Y %)]93<$#%HI=?5A0R/<:]35E;A"=&"UKL5M MT"CJ=S'XG5\AF;HX9#L/T5T?*;937QW9;]DR8IO9OX71"KMIE3WYM1%96S&" MJM;U7!N1$)D8 -#-E9$RP-OK(BI (>PP5RC@90*G3QC'>5E$Q7XB:R[5H*H. ML+!6[AGR#E:8U[B'&'""F +3^LXA![ZX3ZB!AK!Z;I>K@*PQ3K,GQB\AIM&3 MO^*'HK?3\*Y^4,^Q>D6#E 8Y>N,=Q MFE2#NO457@G+TKMU%MA!4 59S<;=/;F"[AJ$WJXL3 EU]F%%(A1\H21915E] M(3]<\#:$5S1,L+=Y\YB9UX(,^P^A?Z?B3K%0M18D88@:PX)7TW2A;BY!#DE0PXPA)52>+EU&*X275:[K+E47(@2^N'370$%9/X='DO.S>6OL>EJJ// M>UPL $0J5!S>L\\;A!+L) MI7ZX2!^)_Q:2QPC39YZEEO*45P />7YFJB3WD5._DM7TO'IF-#ESG>^5*P5- M]$QYDXAU^;2YB!#"%\V;) $S?5 R0K3.#U#XE%47NUHE497UQH3P*"G=.$8 M]@5(%JV%8-#3GBPUVPQVK"/6 +:^LHT0*I4D,4,$P@K=._4PR#%2]# ]@823 M:20!3/-"GJ*/+0F:.^C39QUI0>KZ#$Z>>Z0%'<+:XJM]/"^\V:"*C(K:R@.' MLM8=OOY2>)J"J;Q[PNN:YM\4TX^5);@L1Y$2J,(XQ\==-2PD1X'7?EQ6C$YQ M%59 \*ZS)3'#+T.DOB)4/754'%CC9H7-8>$K\'^=MC< N?:=S4%_0\V-#$@ M'>UEAX ?;F-B@"&L%/X2A-%S"X<-Y7D+PJ90<-2GADF:&^);7M8*/,_*5:O%FT_*S(< M]#S^FH:6.<02I/8O:\A0*-W5, $=PMK*7ZQ3A08+3>3!KKU&W6.DCNN9O=K8 MP'N+$FH2U:3M1^!*0)9";2!?.!RQQ3:>&S\_(VLNE0-5!UA8CW#(V*%^UTW3 MS8H*^QV/?^M-SQMB!U+[+[])42B]_F8 .H2U=8/GF%+INZB\&.(P]/QGWTM0 M"N5!RP>"#,R<>QOZHOCD-&./ZR:A3Z$$ZEB0SFUL-/:SUK.-5)NWPSONS!F.URG Q5.-0]F,*FX*]4T@ MOR=?ZQ3M*OVCY)0T10/8*KP*S4IW^&NE%02%/ ACW_.#)/:?\92GT:6I==E6 MA[T[)IX<]B1.01_/;Q$-V5X4/6":T7(M'D"AC!N<47ZXW>R_PR<%V2\"GZBI M+IOQH/'Q6V]%#A$];.UOH':XE"Y02W#87X@_G>\1>L0^9K^4O]L 6\+UY>7E MO8L\BL^>2,#C2M%[ERS/4W2W>;J["KO8VWX9C>?I'L_[81IE7@GS-7S7W]$E M931^C?F!A+='K8N+[RXNG#-G.R+[^WI\/QV/AC>#V>V-,YVQ?[[>WL^FSOC. MF?XRF-S^,A[=W$ZFSNT_O@UG_^/\[>;V;G@]G/T[&WH9A%$)K2T;/UQ MU$T>\=EV61;7ADBQB-E0JHBF1F5/?73"H3W(#*)7!VT;XDA!/6XF,F2'2M8. MHT0'Z$#@"@-J2<+T647E#BMHUQ0W4NJ<+3>SJ%FA%*I2>9=#^"&0?_?.VP/R MO6%XC59^C +UI05UGU;9\N%(MFAP <$BU\U\#>R-XR=,.5;,>N :XQEG&=5J M=IGW;Y5U'X]EG3E>$-@XP3%#!'MYJ$?),UGC5AGTW9$,DB$!@1N[JW0,PB'[ M4VNC%1HVQ 44!,8[_P'80F-L8Z[M.V\, "_^D3^YR3R,VR!M^O.[""_X'[O? M Q)A[^=W,4VZ,JK9*J:8^1XW./MWF&V@)<]I0H* >8B\"K2$A=:C0-C!S#AM MC=J*^NF]FU3"8"S$?7BE"_&P(00+L**,EM?K(6K@&%4P8-/P131.XBA&(8]] MZ&UV01<(JZP&YJF1!,?&>QQGMM&(1+(];Z\-!*NP!D;M806.,RE"PRA*L'>3 M\)RQ[$@A?3CG'K^DO\BM%*.^$,S'NO2E'MM3X7"F-BJR^*!SJSS^OFT>'Z + MCLDW/)D(AY[\.?CM[ZVRZE-CK"I@!(X;A6.D&9$$>U*9XD<NQ3'(JI?J-Q6JSQ: MJP+T0R>V@!+_4Y&+;,>K33 ,AFM5,CYW8T&\"=%0"'EMVJ+M(,L%($UQ.I*@ M$NKZ]$/;LM!PQ,T6>7#"(#OV8HAC?Q%>)Y3BT"T6PQZ$7OHIR*Y(;(VO>QR/ MYS/T^D!H^D,<4_\QB?GQP8P\,'*$L42,6H:A70%L+FK8,ME.1G1Y;.Z&K<7G M++5VDR^_/6S.'\ZKS])F.Z.VE1IF!\O/EQ\=,Z#8INEH7/BG3,*V'Z43SU/*:&:CDS(KLTSWU!29QL[''V, D=&ID MTNI1MB-YYG)MR1CQX>+3QXN4#?R;WR?(0W2$$=\/>+R7(S=]3]^+,P7-ND X MO3>6+[O"V$$W=[@LOQ :J<1IJ4,G67[I++3% I M.='6&\_))J+9H,I0N6*P_%&#F;0;"NC2K4T^=IB"H"51L9NHY63'VV+GAM M]C N7(DE@>_R9; ]01^&7&Y']28#K_<#^^&UX/[ MF3.XOAY_NY\-[[\X#^/1\'IX.^5AC^V\3F%BYV^;J4\G C)F]=A-.@*)>VBELL0O [R:\+VGO E\_G7X_D<\[-"N>LM;0HA MU&$N4%O76XH/A 4R?L9T$ 0D/5(8Z]_H4+2'X%W9L<< *0@\FN#T?B:WJXIG MFA*]^*I$TA;$5RB=EN/5+X(4B\8#7G"UT7_#7KVET0V 8UL:>M5WDG M&P8>TP4*_7^ESNWN;:>!XHB!NWG0<8,\"G;//@T>H_1U69EY4L_8$$R9 MJC)4$PGJ"_I)U/!]PJDPGG]%83)G4V89A+SX]?ZJUS>'H(YK%>NM!E>BW3B/ ML@NYJ\"/)>M.V@I"X-QV!4F1@1< /TA!NR4%+C8!P1R#:Q(=F)AF72!<%ZZZW-28P3Z/S0Z82ZD*7S'B_;Q!?,=P M3Z^?C<,)?[J?R^,5BOS(]L3V0X43VQ0R!X6>$^Q@Q+2$D=4A[\UCM]--"N'_VJ]@98OMSN* M_TSX'21%=-ZH)YSSXMH%H:BEC&@!86_9 BH"4QF_-^H))*!O(=1"+JI0A,K% M:"NYRH-0LZX0 E,6HJICXB&"H+A8DM)4T5BKW4(O.">A':C< AT@L'A[+W<+ M[?:/G"73+S;="$P-EK1.DZ=6=6#'1FT"^Y]6_+7>M1("CF M"D)=>C/3%F<([+Z-8G^)8IY+7'4EVPT!X2CO2$;;(0R!RP7%M?WS%Q]31KVG M]0@_X\!L8U9V[F!_EATTM;0_*\D!BN]%F_$0:FO_2#$&O*W:0.*U=K8<7U!L M'H:K)(Y2]#Z8>4NB'A#VXDJ2*V2C"$,(3-N]-#(,HY@F',.)'ZGN+ZB[=*!_ M94>(3>I?-1%@<3:OO#?A# MK:;$.#$1J,1Z&(O73K;->0D\S^@W["^>>"#]F7G["WQ0B(I+=K'\49ZP:)MH M]+U]HE$.FH,RV)PH!SP_2+B?,>4*)16L_*%4GI7(;[8E^;V*O$1FSA>SMR;JF:0;F^$XT*_6X@$4 M$:%&9X23X]2,")9,G28)"6%S%,/'+^4K U/Z;D""4RVL/;V\%.D"@>D3S$P# MWV4;E;X6O:0M!/O'5';+M]>%Z$#@RI&BJHMMU3=\=V&MNDDDOM1=SV9RLF&M M?7SX\X2AR]R%[)JLVF4V[0PAP-6D-)G2 9RW7'*=!L_,$\FJ:Q1*_VYN;/*0 M@:L1A\JC0=A?[!:"M/RN#=JG+@[UB $,]A^Y$HZ0!X!RL!=TR=\[. R^J/6! M_3 0-HKJBL >WY/EO&K]6XX!8?57%?@JW#^I17_#+2;L'1)B6_*HB@ZP&16" M2FA,/&P( 4Y@TEI8'$84;+:V%(URG;9=R<'-9>..#@!V#>Y+,,.L,[FJ]N/J';[:(@&/0D9'([$IA,W'_ M?&P(>K3)@&U-9 *=.3/P&##,*MC]0$G(_G13.] V/^93E=(I*0#.#@*G!,+) M)+_UKZE)(6X*)4^DBB 7>2?&#@*+=IA,N;^'J!=] M6WDHQA\N+C]=J"^$&O:%8+BK)+&TR,Q0:H!S$8T+7&.?]CG&OOI]PM6&0%ON M_0;GU9O:M. >AITR0+@H#G[M6'<)Q:5$R:Z%^2NCRC)92JFY]WN7:D3"^IR< M>Y!V1E#TJB9H^?%["-C%KJ.K=>&3V0TQTV$ZL2T$ MP"E"8M+6<()?5=E7- .D:$*P!D7 9<73U5>C#/H!B7EI9%+'J3VDFMA?4XW& M='_\Q+-DGGV.W/0]?1_(:T%JNT"(51G+UG8GU*(%=,GH?"-UE^[<'A-4Q+>' M3-4A&"6Z+:[@). :14^#T./_\+J*SRC@3GA6>2_-%V9.WPW._M5D5E8;"D+% M.UON5\,4'._S"F(SLA'0G XX^D))I"NI)N\&P7 ^1K!%9=;DV(+C:XKZ1N7P M=+2"6*N6KJP'!,NK+FXJ$07'2(7LW>-X/"]B8[]8!4- ,,!:6+@"S"'%@!\2 MZCXQ[-(BJKSRN,_HE5<>W[["5BE$?% 2<2]$G$_MI',[I0^C QHR?1A9#AAY)JX_(40[\4/@MPXV9WA%W*Q)>PV[ O! MQ[&5 $/4P'DU@H@IO^:Z"/U_86_H,:C]N<]%=O,^]<9&S]$MOU?-VB1+S)_Q MU42G&I\5@N]40_"Z7J* $[ZW[5)K]I:&5UR3WO=IZ"@AI:X32OD[&FE+-@KV MGWE/BP.S!J:&M.&U*);M$/=-B_,P?&;M"5VW(+^%N2!MKRD/6-RV\#Y2L,(W7#P%_FB3T^"G@:A.3:EJ&%7.W*LJ?WJ0H*ZC[IB5Z M&,8H7/C;QNDJGCVA,&=,*Z:T%H96)?SO;U+"#:@,3M(U0MB1?/P 1CX LZY. MT6W-)>K$W_D,1IR:(.6;%LR- 5S\(3OIBA[06I&HTS(,[0;Z+]ZD/!N0^4V+ M^@V>8T8!;X9>"S^V(-^RB=L5:CC'5VW0MO$W)VK=:5R7)MB32V4K,[8KCMT? M6[5"U#>M4>])Z!YL*B,2+F:8+F_P8QM!)0,8VA7LMWF\94#F-RWJ[5H,'>KE MMWEV]29ULHZX[2;KM2VH)W\@I2D/FIN2.TF<;)93NX>U!TG M/![YSX?AZJV"8OXVC7>IY06Q45V-JF5D*!<)3ONV5(U,[B]0]1>H^@M4;_," ME4)-7*V_HG\2>AV@2%63PVH$.&_1-Z0?K:@!7 !VX-ZCI5J#6H\"1)]6$']# M;HO1AL#QZR2*R1+3]&DJ;C8_^:M(6=I#V0."WSJN@:K@#FIM1)WLQ/<,^4&%_J;28=%TA:.1Z1$2'*;B MMP':>[6SOT5XG@0C?RX+CQTW) 25?ZPL'$);]88,<'Z"K0^= MJ[OTS[3UU3Y:>YY&Q^J^VD=?[:.O]F$Z& 0'M"K7;7$%)P%]M8\*W.^K??35 M/OIJ'VU:7GVUCSW9>P-/D_;5/HZJ]E$Q(OQ]K?4^^JAQ'S7NH\9]U+B/&O=1 MXSYJ_!>/&L.^6/J7J@914T&1QHG2NUR0]HF^&D3G3S/WU2!.\59\7PVBKP9Q M^@+;5X/HJT'TU2#^0@^H#OIJ$&],IOMJ$,W*<%\-HDE1[JM!%%9Q7PWB#4IX M7PVBKP9QHDJJ-9>H$W^GKP9QLH+95X/HJT'TU2":E>^^&D1S0MU7@^BK0?35 M(/IJ$'TUB&;U;%\-HJ\&<<+B^R9U$ M^ O(H" MS'S0ZR<4AI@?MWS!9$'1ZFEM=WKQ\>)R__1BL7[!8(%#U\=B?]RL"X2(F)W<;0\KM+@U* M N&';2"X1A6I?(A,4Z)]A_E+GH9"+6D,P>\X0IPE6#5!\?3Y]RRRH9)E83,( M=GE%*@OQ:8*^Z=U).5U+/T-X9Z B/4MX0#!B).:9+@:J[]9=W-,4I:*=HK92 M3S:(N4&#/XXN$MC;5S=(N._*'7/V'_>A)0RO-!*$?;R*-%1"%EZH81AR.'$T M" +6+*;^8\*_3M64;:3A@UFD(9_28>O4*4ZZB3_T888CL(AH7," ?=J'GGWU M^Y2;^%P/Y4$EGYOZA_$$3=O3"R!H$&I@LS7C1[8K% $2!@8T;3N. QA)UI8+ MC2Y3<2H.+.58*\/F)'V'V_(,_GZ?5LNLYHO?F0DCDS MY+,O?O\VW3?A"S]T:1,8D[,(, 21[:WTWDKOK?2W::4//,_/(!B&/P9^)CS;\V!_R9J,YU/V M;31GPJ&YRU37X%VJD.K ,^..QC?\=$!^]%CW)'!\C'H%2Z"D:J,9!&OD:)QT M=DN=$W1GX=1/IEH%ZXU836H"'"-@,"PC %($,#O/".Y=$>=CQ* X"H3S4@ " M423):8J&BCY9=5)9]M,VGMQO1?7&]8 ME%9O6/>&=6]8]X9U;UCWAC74/0J,85UX="[-C=R_+#9-EDM$U^,YSZMC6V>,_^QRYZ7OZ7G%+0=L%PC4G^^?8M&CU[]]9UI,_Z??O MMOF*.6*;U"_5BW>:/G#>N+/8030X@6!5!I%RS]AK V1_,!*R$C?*:#2ADAXH MX>\@**X$[K> H.^%,K!5-?L0-T&WTB4)3)]]5W6M4M4:@CI7TU,%/02-D&LU M741;T*Z[P+04Z)("D&GNDPT8YWA,2!#<$?J"J*?A5JDEA,5BQ#DA].#"=# K M?&I6C$!T3J0J9PY:_DK1IH8=SSOV_IE$<6H,:'BAZ0MI@1@R2H,16"[FSU?= M)#0+J_I$I\O$72 <:%CR3(P(6%8QC+"_"+,JDNYZ1E$89>_[?F$D&I%(M^I, M!H!PE&#)1A.T3B;JO_^#;=#_X_%!?W]7 09E%6 :#_E+_)/"FWJ,<,-PPPW] M&^>B2'\M(T)[UOZ-U#78,Y9J9'Y?SZ"O9]#7,^CK&?3U#/IZ!K9,Y>_YJJ9U!"# )7>!U7#1FRUI0X 2&P,&@KC03$J*VX%"RX;V?<=F@8'B$0#6Y3=8JRA/]CQ180((*E^;N_>ESETZ$ U(C"WZX,+Z"L"_ M4'DP7]\-@FZWDVA#?F[P.R5.#EPW628!XC6 EH3&_K]4E\FJ# 0\+E"=VU*, M3XG_#/U*:AM\$*$Z7U/L3HB'VDIH9EV!AQHJ\Q-T33.-D;%],4^30F0_3)>K MMT%CRYX0 $7B0/#-Q<"D:Y<+O5'6FR#?=9[%#7Z,=_FFUV2Y0N%ZRK^U2Z3X M='A[\N;V:L83)3:CI]#E:V2G4%1)@TPC]Q33?,#X@;N._(5E#N>( M(-5M14T/"*ZV*K%EYX> >J8IX0<73N)8 M,/.62027E&M$Z9K?_5KR2V 2QJB[=!XY-.>0&A'@K/H6HNQ4"7L\S,-AWG@G M@]!+FT91PGV6:Q*ISG&.'K7S>&%5AE? %9Q,%#=9GD69>4T*RU?4N,ORO)8< ME*$ (6Y[CU^N*?;\>)O$:ANS/;C\MHG9.FQH)QO;V0Y^,@_9<7Z.YQGX=\CU M \8GU5-VBO8 ]*["R1>Z]-JU#Y"X:( M)4I'1]#Z \1UV=0XCC'-]:52KL5-(:1GFHJS&(-&8LD\3,=W(LYOQ5."XG80 M4B2-)%H,/@2Y_A51GV_Z$W5AT\-F'1@R$JFV,F0.$8'&!:41(VH(Q(2129*, M^I#,%_ZT (=)J=?W&T$P4.2"4WIW?0]R""0?D= CX3!D&\TC"O\8S^>8K6 . MY6AX-9ZH=UBSOA ,'C,&&2+4 -\B&A=XQC[M\XM]]?N$%_40[ Y[OW6P)4@V M9:,M80_Z3HDK%/>#7SO6]$)1*%&R:T']RJBR3)92:N[]WJ4&E[ ^)^<>I)T1 M%+VJ"5K^O4N-JR-H&5(06Z! 2XTTKWEK^G3WLK<1,J4]3ZZC3S;91H331O"V M22G7:,5^B=<6#)8/ <'$J87SCG'Z;EVFYU17JEJTX#%0@..V M8._>*GO_WHCB M5:%7'V-EE;&V]973V]!+/RU(<8>%%X05C5OEPP]'\D&'3.-4+PO G?^*O>LG M1!?XFCQCRD":\*=L9FR,B"=%BGAA/42K'/IL46R9;S,2H^ >QR-< $?/ M*TFW=H-3%_4S2()7RTP9AB[3I!$>AD)X;A(\(^F+%H4:G<*G%VL9MEVF'ANJ MJ0]O".GBURA$GH_"O1-[RY3Q[R0IX_GH>=IX/GZ?-=Z)B=EGC<,Q]_NL\4:> MJQ"J,\5C%WS\GM;7EE$ QX2WF>353'9M.TE>#:K0;R&#S,M50BEA:I=)9:%/ M#<<[S=S#Z/MB:"N@N0TP,3Z1-S2H04 M!$[M*TIE1%O6&,(9@XG([15C$^("@2G[FD 7;E&T[R[4HD6BR V)[CO9$,M. M&N])!KWFZJ2L.830B14GY:B <^)VH*8W)XH:07# MBF'B3A#B)A5Y)D8(EAMVAWSZ*PJ2=(>M_";])P-?;,YFZ-^ M2ZMHQ^/H"@6\_,/T">-XQ"=G#+I:BVV=J_4OV%LPQMS@R%^$:5N56]?DA!WE MQQS"KO +YLD+@?%5@!CP<#UV7>J#=B)AL/M_M8 MS0IYAAU'Y+A 8$QA7]UNMKIXBZ9/=S$7(V2*O&G2OG@#P9M,CVBE(&\& M05M:B\ A&H!=_X(2T7*EU!:"VCR"-25

S&-,9^A5MN?9C@(A>&/-4VLLP7$[,W;)]NCJ/;,_+S]\98;HDZ(J<5V#0WA_SUIJZD*^Z^,( M+OA,ZE-!?F!>3917[V6+@'D=C"#\6[L#B<\7E_L'$M?CKP^W]]/!;#B^=QY& M@_LI^Y)/=<;G=;)Q"H!WY$@U3PXIXLH4O<[A@G/F(XF/]_?T6-'BV(T38R=)F^RN0F!')(!$"VYO#=!]R9N-0@-'_G; M:,KF$ [HFE]HVPL02EI 4CJ-+1#]@4A[ '1YNM(VF8L*YQ3,@A,^\K$@:;'1 M[2O_4YY^>.RP,(Z4NI3[XVG8^(W!^X23<3R__9.!P&^&,&628BS:616-81Q2 M=<%L'64:9R$/'<6[5&9NM:-4QX_6JONH@,(ZC@ I! M137>O)W.*<[WEP@I'XI< ^%?Z23P+=)#T-L( MQ%:9]>3#K!I1K&RY5B$FA-@#,]:83DX!+^ 6'89=HHH!SCHG.,6 9O6U793% M.JG8A!DFW4OE(4IM%PAAROJ7Q]:$TN(/03T<*>JU!AZ5PY](6-& 1#4$#:6; M7!_@^\L'^"PE\ 3"=UM?5*I1\\C4X 51+_K"H(^Q.@YD.]3)A?X,Q> XJ@!@ M?0K+#8KQ-G&.OTQ'PFE,W#^JB8!FR),+#]8K"AKJ !")LK!R/>4R:9T1'KJL M0RGLCWARH<(F=<,^<<#)P[?PF0%6S_:P&PM&[CD0&=B1!5Q*^B!(1\?>#G]S M:]*T,XR4\N9L1E,Z@#L12/>HHU++/QH=!:3SG'Y:N9B]Q3C)U?I =%(58!;^ M/WK\3E1(JN_04E7HK-P$8DR])M86M4(9:0C*/H=(&;_>;P0D!BV2,A&UFPSZ M'JI+3FAYQ%?='D*X5RP16T-'C0 $DZ25-Z6-@6@MYM C5-8E-Q4M(=P)M$61Q5D@,!5+1ED5-"=G-8Q<'=GIO61 M17Q:>K3]<+('I94IFV4Z[.HB1.G+$[,G%&:K*CO5B8:A,(NZ_>E/0LE5$^/6 M: @N_%H9=2&"7RB):M>?JID@G (#DTD5N=Z.^*7_*UU]D-4$K'<*"&?-P 1. M2*>W(VF6.OXW["^>F+LS>,84+?#AX7S'^[@!?!".SX')>/U$AKE 'O6T>3R@ MS>O*I]F1GM90K6=\"&?[#0IH/42"*6"U632MZ]F3T*:2W -@VO3-Z,RWE[SR M0YL"="II*]D[WX.P^"3_+SCP[@B=H@!;I:Q<7AR^ACB83F]G4V=P?^.,AH.K MX6@X&]Y.G5]N1S?.W7CB3 >CVY/)5LE>2YW&C*^I8!3>QF<4''B>G[%N1X'H M:LT^K$B$ N:G)BNF$C8WIWD;$C+'(L%,:>!L@U->96UM]H[>;VT:.\4I=EN3 MP\G.:5F4R^_)MD-L"+NH%=C:@_?*HP$Y6V]WC9=N'E6E7!.I3C?HF6%/U]_^ MN$,NWW/7\C0G>5L(1^U'BO#TP&AVW4I3CV5)XOSC.H(#'D5_0#1>SR@*(^2F6-L%IB\/ M ].3V]%@=GOC/ PFL_]Q9I/!_71PS2]63D\F'+U+4951Z6I=^L7HHJ356!W= M4S"!4.&:VPP )V1[%+O+%Q?,T8>PO12A4OK;HH9 '&Q[F95QK,G(Y'\AICYI MQ$\J4;AF6X0\,"EM"L'3E4O,-N0HA1^:Q!>D1>=LZKMUYR&:HB2^@V&E\=IW MTC2U )CA$5/_,>$0_88H?B(,1'[H/DD-C2D;[Z"&=94!(/A5-GRN@F/C;_P4 M$9@P =FD:D1%L1/QRJP?!)_$FD5FJ(%S2Z])E*:VY. 6T9!H4'47"!GR5?2H M&BMP?,O?!1K/LS<2HBCA3G.*A81OZBX0LKZK\$V-5=>N^33;0&]0C-)HUC"< M$[I,PP=CNHDDA(M7LKS_W#84&$Z>V7K[?W,^=F,!NPCXC/[?B[R1DC M'))/[^#-_,[CVMEL^2?HX&]H-\$K0CE:!5IO"6OX#I+Y2-VD4F]#94G$UD84 M;6!2I6]I^D!TX:T96K*+U?A"T.'Y8E>^(U)N \13-Q+ $C?*:#1ADSY0XB5N M+#Z;%K: X(4+96!K5.Y#W$BF5<&GF&+Z[+M804-5:PBNE9J>*N@;T @1C0O: M@'W:UP3L*V9XAA$)?"_5:ZF9(]#BJH9PSG<;91J2M'67:M]$I(K[IA0)"/SXRHP ZJ-@@ET2\I14MLXY.DJV MZ#IUN8G8'"P0F*32Q+E1NUK7#1XTL4),\6V2^39UL5M,$/^,PP7>,='GM M)/[8]'42Q62)Z;9,)8]/L/^\&7J5'IU4& F046@M*)40!A$"U5$5@IWM7H "OK!P 5 8V1R92TR M,#(R,#8S,%]L86(N>&UL[+U[D^.XE2_X_T;L=\#VG;BNCE!65W5[[+%WYMY0 MOLK:JTKE9*K>E MA84K MFA+RAX^_^_AOGW_W^X\__OC[W_Z67%QDE"Z=A/6,0L))_OCQ<_'-548U"O]( M_NV'SY]_^/'3CS^2W_[QQS_\\=-/Y/YKT? KDW+E-[8,_/#O?X3_]\18$J9N MF/SQ+?'_X[OG--W^\8R!?SK(F]V 1]=?/[QXJ?/']\2 M[[M,1/A:@TG>_.VD?:;3YS_\X0\_\&^+IHR0EQ9M9;K_^H/X\CMF.$+^/8X" M^D!7A'?_8[K?TO_X+O$WVP#8\L^>8[JJEC*(XQ^@_P\A794N$_E&AEG;@Z6C;ZP:@^Z:DN:5L]4LLZU/TF2P8' MM-,/(_=LK9D(5.@\9W^5%*1O*0T]ZN4J L\:TEPD[O*<,M".W!+! ,(XBD]- MEN01D5#WXSIZ^<&C/N#*YW_\%OZ\$']R:[%__O4J8M@Y?4K2V''3G!K7X3^^ MJ_J^I4U ZY0C<2Z'>L:<=-4/N="IIS_:_@C 1 ME ?VQ7L:^Y%W$WK7;!I1H_]QNQ'X8:5JQUY8:H3B8473$;BA2L&3D?>H'7)G5(I[_HA<4!X6$L5<\]8/Z-UN\T3C M"N4KFB#V0)5"N><=?X_4XY1B=O6T;%$!%(D@.:B'/="U#RN8,+US-E5CKJ(9 M>D^K5JSL;>4VJ#U.(>J97G>@2H#LH)XW"]TH9HC*%]*/*1OLKZ)=F,;[J\A3 M.V)3+_1^J:5VV4UKNZ#V6CW)SW3B$I,)X6Q(%).,%0%>@WKVTGF;>6SRX*]\ M<4S0,(2KVZ/WY@95RWZL:(S:@YMD/M-W&7E2IF]C$C#U/&:Y)/O/W _I9Z5! MJMNB=]0:%N>KZJ;#X6QU0H M6NF=1VW'X*(JD52E9Z::GE M&'RT6F!32"JH$T9^R)42X/J=\HHFB#U*I5#N5YA*H=S#CK]'ZF%*,;MZ&*="HA7Y_..'I^])3G\@-UO& M#B1"&A'D!D:MFS?WF8E-%>=[ MBF:(G:M.L6,$D]L@=;5:4;MZ7$Z4Y%2'/]^[VL4Q#5.1-0&QQ);"NT2YUE$V M1^R).HJ6EZ#5;9%ZII;(9RY#,^JD($\$_8&/HE,*2=S^"[UV4B>3J>944]$< MO:O6*WI\ZES5%K6K-HA\]CES01UR$YW<=P?/"(NOG)2NHWBO-,1Q*_2.6:G6 M:6I8T02U&U9+:B!!+"8YU4%][G'C!,'E+O%#FJ@'\.-6Z'VN4JVRSY6:H/:Y M:DG/]#E.E.14!_6YFPV-UVPZ\"6.7M/GJVBS=4(UWJE:H_?!6C7+OEC9%+5/ MUDM\IF_FQ(F@3C+RPSKIVR$]7%Q<4-NBJBE^]U0J>.2;)^UP.Z9:W'.]\DV^ M,2!H#SM6/],@:(++HT;HW;!*J:.!6FJ!VO4J!3UWF ::5@"0\=Q 8F_D_OWQ MV6'66NQ2J)8!NYWJ#87Z3NB]44?IHUV?FAZHO55+\'-W@#@/PIE,B&!#)#[# M.C1;S\=., L]^O:_J!I!3]OA=]MJU8X\M=P(MW,J9#W7'P59PND21GBHC!BQ MFW3K)ZX3_(4ZL?H>=$U3Q&[8I&"1-:-HA]09&\7MG$V3;8T+R@1(V[H7?5#N MEGU2M0>D;HG8(QO4.[X4?=0,J3\V27OVE6C9'SEI*\XHUE9Z[EAN.QJ'K%"Q MVB6EAJ-PRBIY3;EE5D!B2,><,OX>URYPJI8]Q]\C=L!*57*G*WV)U-&J9>SJ M7 4U N3.=J>5DSQQ-KOD8NTX6^Y3/] @3?)/N&M=?/JK6#YW0]5D416*;25%XKF57I$[9Q0#@KVWZ(73E3N)WGF@N[AX7\]GU='ES M32ZG\^G=U0UY_-/-S?+1HLM/DX2F28-SGS1"[L;52LD.6VZ!V#45@G:&6DZN MIJ"B$852N33I8%I9CZ)L*:D53*=M1Q%3"A5/0^NH(?H(4\E[GDM.BLP['!%G M6LM<.\=V %XYR3/\[^8?.__%"9A,R33T'I^C.%W2>#,+7VB2P@A_O(SM1 !Y MJ+8WAAR_^KT1!W4')3K' &/#XIS]?R)QF_!:QISA!0O.#9%8VD& @4W"]7?A M#WI@:'.(=EVH5)0\4)D?3ZAQDS2[(44!'X=*X7=,><:1KB=UY%,^( MDP-U%M@K%FMD&@31*[Q80590!2NFGI^2>90X0TA=M\3LD@ M7K1[2E>[@#AY%];D7_[M\^\Y+OS+[W[[KQ-&)-E2GND=G'_\UQT9 /E"1GS/ M#*4PZE$3Y)%?I9 :3I*%Q>C:K;(XY#+;&[K]L$\0GAY,7SF3D#BQM=@RC-M:4' M;?-M:-?=;78!?];:H]N8NKZH^ _-G0V4O_FG^ VI'_[:?+Y\V>Q)_W3[R>? M?_\9S;;T-5U1!DX>/+RQH4OG3>"?&@]J.R!'@V9E92Q0MT:,!!I"=\[.SD@3 M09N_=Y$/V=9 8 A]4Z:HDRD:6MTXGH4IT\5_"FBAYLV;&^S@;N67*/)>_4"] MD:[5%7D$MS% ^3"JN1_BJ&XE?O?3D9R)'-;D0\&)Y*R^MW6R-:P5:F+>B,(O M-'Z*4*CLT94?^BDE 9N/>,0ON%9#^X"(UX!JXT&N.G0: 0(9<[:<4"\1M516(,JO:8.G$ZM')/=.V'(0P _:K8. #T M[H1VCB#O&'KHGD*6VB*'O%H5%6>1AX:(P;!>7C,GD@?"U@\EC>MH?1]4Z%6[ M XP_O,I*G!X?( Z@(P'-WL@:\IS T &!]8"8^\Z3'_BI3WFZ/M1O>HX"CX$$ M[*JF^X;;9BVZ(P^JMH:0PTZW+^+ ;*U"5[^7&!4'"NG>^@4V&_I/R%?ZSW\Z M(3S(FIE!W.IQ8IHQ_TWV!0Z$T+N!6MMA/"B@<1=5W7HU1 MWUS%X, "P16T>VH/5*5ETX*[=$')@- I]]J2JC:SNGK67_JA\P<9=?12?3Q5YK!LRFV)]VX4D8MPPI5GG%+.C M:R8%5R*S)07?":)Y@FW;R3N(V?'4I/[2RE!).Y@L@^46SSP*UU Z)H^-=3# MJ6Z)'775ZI60]+099G2LD;:S;S*:HE054#UL#WYU4GCDN+;2C2=I?>@7/GB'8X=!QEC M&G.^E(VQQUZMDJK! M?ELZ;!*"G-_<:&R-%%#TE 5'J6UI&%"][U(0O M\5K]- :>O(##L+R6I'=RGVT"4]+2Q_E N2=.FL;^TRZ%74"21O M_]/S5ZP] M9;]:0E[]])G\C4%3XODNJ,=\GODX6]:N/_82SE7HW+,-BUN <-U17ED/?N5Q M*$5E/[ [8>+9PK*:6HGRJ@Y(84Y?V9.4^6M*@R*#O4UL< M02IIV+R\PQ^&%>HH-@T0!UJ5E :V":SO#IB:EZ,(''@LV1>U\*>A=\6/ ]9L M8J4.I/H>R -+0]W2 Q'JYH@#3T?JSMO)!]H\0;Q$W=)K#P.JZ\K4R8>[**7D M]R>5" :,WR7=;*/8B?=:5V34K9'';8.:6(KZI\^\T\_VYQ6M+Y\.^;KMNTNV([R2FV/ METAETOD5406*6)^ ]&F&TDU9Z_,06+A$(=?WSP!;-6NGHV;(@U6EV/&R76Z# M.#"5HIZS8HU"PBE.R)_%D#7C0Y&]Y7D?&M8,T'^H':%_^OWDTT\_3G[\O2B& M^]-O)S_]VT^3G_[UDZF!NUQ7U^8P/O4\7QR)WCN^-PNOG*V?.LH['L)+S]=,#W=:CV'O?>7E^[F MQV@,T[9L^D##A&&&N $%#VS>T72Q6CIO*I.UIH(]D+N9Y>CF8!L2F ._HR9G MW#(LRLF+L]T2Q_SVX0=@^KTHR\O&0\;9V@U$:^:)Q,M6)?,$C)E%1'F@J>.' MU+MQ8JB2F4CB7M.5[_JJE;M61^2XH:^\#!7-O1"C0POANWI\SH+D/,@'.0@R M-I;J< ^@_[3TO@:GB6I+3GN3 W\ JY6KWWI#'* UP@ZPU6:OLG4/>DMEH-G M"W6N;5:W[E_!HM:UG5RG'A04*4\)KCW2ICJ+"O-H=$..MKJ*MZDKBAB)M44W M6T?4>J)B/\J>9"].R.8H_X(; 5FP3X,@>@60O8WBZVCWE*YV05ZH[8&ZU'_1 M*%38D@9R&.ADDM)>2QL"B &BFQYGEP<\D)Z00@1>)^,JIIZ?$MB_L%WGR8YI M8LDT3LDT7B8$O'[(V^+8Q;V6WE]D?P<4_F /)6>852^%=F\PW4N>>Q(9-B0 MB@WALVACQB_3*IK8,9$EF9!"%CXWD*69D*.W72?EQUVM[R[;-:GJ#5CMQU_Q M),/>._$B9LMK)C+/!+BG,<^:4?P$^KV1HUM+,]2DNZJZ(L:FMAJ82VUEK B; M, AF(A.&,';B30,4":V]&>,HC75RR([!@P9M7ZFL['I-&,A2G[%%CV1QWD+]14W2$:XYFXCO9E[)@C7V@,: =$B M6]):9/-W>/LS_?D-D=^_<-^3!?/#[:+.WP0%]HN*.W MS!.@Y"78Y&<_?;[:L4#^1=Z-$O*8.,,\Y2NBK+0AYRN_-I.SMG>OW(:1X"X]O(UHMQ)TDBY67Z+(XQ=' M:/SBNS1YC +U#D1-!^3PT*QL>7&C:HTXV#6$[C[E2WCM!TZ<)YSFY G0MS7) M[5W?-=M+7B&.M2LJNSL9I$4', MSA5"\]IL*[49\A$?\;QQN+YYV]*0#=P-:\&Z]L@#JE'5T@L^JL:(@ZU9YJ[. M6E F.6GK%4N'4)9FI&T6-Z$!([K^0D,F5 "7:[R-'_J@*E11S)17V$B[,_+( M;6>$4F$4K9Z(8[JE IT+J @V$Y(Q$I?12JSRT+=4H'A@.ZPE.S@E5E:WMI@0 M.Q>>FPW7,/=6/454V1!YD*N5*^\[';="'+PUPG;?-9)($D[3UFY0S[I!Y+&0 M"Q.'/UY*W"I=!PT^?J?TWHG3_?(@5S[]@&TQZ>,$ML;D+DHSGDL5?5@;,5L9 M \XBB1HPS&C6/0+%O6E.C4BL)H>)/]^OEJ40>]:EKK8@"8?UMMQZM'JZ9'-M MK[N4PH\J2M5JU_"((U\MJ[DUNYU-,_.:B4);$:9E>J'DH;YRDSE*+<<2;J?J M50;NLY 9@R9I_0;W:2OD M$:M0JYR)6&J".!I5DG;UO9Q>/SO-?Q *A70-B[2Z*.M-+_MAQ<-;B2*J>413 M)^1!IZ=T:2);VP-Q2&H*?M[H4#M&6CH-'D+O+'PG)*0V4S;:AN^(([=5T(XQ M7OMS60M!VK0>[4_9;$<(4Y0>UMQYPK0?[ICBV0(Z"I-+NHKB[$&NI?-&DYLW M-H>/8L\/G7@_2^DF819S(=4ZXJ?2^3Q".6WIDR-RI!C W*?7A7IAAQBMAM"Z M^R1;VF\[7*H0 I*#A.2)BYA#(A=R0LI"D5PJ.S@Y!C/S7;_O$3.*2' M0O39QF *&[49M>A'UT_W.?1"?'*:6(*TSN:-IZ9';=!'I*5*I56*G(#Q.%7+>)P4432^J%D;[J>!"9A"R!12.6/B&+TTDE\5],V M>=N116=)Q;K0Y U'%)=E>N"+VLZHO [EMAD &:T<82@*4452@T8AC]3?_W,1)BR>;JSIG>[S1.-%ZN3 M\FD-,]<.9) ';E?#R!'=E@;B4.^L2M?0R!F2C",1+*$\R>F+"P4\6)\]V[.3 MD]GIM#*AS=FUKCWJ9MUM:;P39%'.TEL1> >88F;"VQ)0+$[XA[5+?XIJ;/U9 M<@$U5I(+\F1Y9:2P23;"Z9;E;D]EG+#99!8-X%21&!]T-FHR[&RLI[/7VM+7 MUBQ3BRF>S=7KT":QOZJ]BC;;F#[3,/%?LKR:.YHN5DOGK6$AJ]<3.52V4/_H M;8.F;H@AL8WT9]2 /_ HGWY/")QO,#QD_":*HW#KJ],A;"22Z]V2I;+S'G'Z M8W,YRH6KL +\A%=.\GP;1*]_HMZ:?G'\$#X4J7D/U V<)/%7OLLS]J8K9FIU MI7'S7) #3D]F/;G#8XX%8B#K2]/S KH6^D L G(1+MB$@&C%MUE:Z;& $^* MB/8JH&,S]+W79+" MLT()SQ7GHPI@8[#S!';" -S]/Z&FK(AE\;'YMZL.=U$.[9TBPOZS&+\/I+C MNKO-3M2(JQI[P)ZP]J-9\L"81B%NO1.3AC6O*QEF\=[&(@V#GC4?Q(==.Y%@!'"=[]VZ!'?,\%)+KE<&%G@^$%X?Z8#J.MRX?JG\ M9W#SGR&5S"XM9C!OC(W;L@@'7 A1\T.H/M61#HHMS::["'F? U=;S7HF#UDCN"&IQZ4Q)$[ MQT&4"#AFZ.O#H!TS&A@:'LKB(0;%JKW"X]W!W@^.6C,<*8":,W;7(Z%VW$8( MM@:5'ORPI^)PYUV+N<3&?74^7-]?D<SV='E_EM"O5E8O/TW=5/_Q4]]VN3JG0@A#X#NQCDJ =R2"N)@.4.9 M%4&3GB#]\BCN0*(8V5^Y[ /]ER&[Q/-3D>]!V.IG@U; PLA\V' M*7VRC!XH.+8?T%)-[65D9OSOB15R'.C3P#*B],$',3;UJF[GRS[2OB+#KT(L M'NJ%L\_A7R[8>RO9^_ DGH-B_G--MTQ^G^]RL+\# MFN5[3C?RW-41I M_J/9%S$.M%;AC$O)!2/8/;^F3VQ^DB0[QI 2SH_'1\'1TH3#ECVBV%\S;@'Q MF4TH\3)&W"8>V$I\[H(@77##]6(*8/#CI]_]](E# 7QRI.\L?&&SFBC>'UFG MH2G2$-=1$,*YKIWET/4B=P<3S:IYF);89]808(XI#UCY>5?V?E_&[&,OH5J% M6GVK7(K(@O*P2#2HCL5O2)*4;B]V6ZM+D16-8UB\N2W>36WNA12=6JI=7GO4 M=D$\W="5O/MT6]"77E?N^X%5_>7&0*HC>5I#OP32MVTM0-D8>O/5* MEM(0*ELB#M4&@;NZ*2=[ 7][Y-[9P^2&3..8$:/9Q71F==@UNZE.K1DF6/M2 M/HW@XG'FVRB^CG9/Z6H73-W:Q7]#%^0AJZ/PT;&ILCWB\-42 MN_,T,B,$QPW4?X'#TPFY8H./GQ+8DS^,N0_TA<6:$U@:='NU0D&<+X<^P#D M4Q:.3<#CON?EU"@O%N3D]HH+>UD,>76AA_)E(/6%EG84D -"!W/(^-"B.V*X MZ*+%N9FVE35KJN[56:R1:<,N],U]AOD0!Q"+.,%6*C%EDEU3\5_I5/7*V?JI M$S1D7[0B@!PEVAM#!@G]WH@QHH,274,A9T4^Y,P@;TG*4<@86D]0&- F5QP4 M$EXX_)!%P*88V@@Y[3?-&2;/-/0 MX]5:\+7Z=H0E M4^4VR;(ZQ#)"/ SA5!H%Q3KAWMG#C":W1;'>FA_6/ZTG7WHT1X=%'4RFM^30 M(#@J9.JB5U^+E$P&":$.VQZ2'%CV.X8T76&CK60C 5B!VC(H+ZXK[-N* '(\ M:F^,;A?4$2--!R4&O)!NIPSKP#;1NH*%#S)@#9B8J'513VB<$*)A' THJ:$R M/DC14:8G:"E88[HY:L%,Q[4NJNQBM=:%2+=+EM$4#H-BRHS#L##=WS.%4S9Q MNV&?;C?JXGRM""!'EO;&*"6%:?=&C"0=E.B\TY"Q@GO1&3.2L^ ?+ML;H]N*'?%0 MV4&) 5?HJ#;_^K()'PEWP@S\LG."?N.OJ#EQ[L9?/:%QPH>&<31@I(;*^.!$ M1YF>8*5@/8*-OS[-=+SQ5V47RT5N74J]!(2;PXR,S<7X93W51*ZF/7+<:%3U MZ&IG=6/$*- L\QG7&3EE?GN1<-I\<ZS594BY5.V-:U1QZVC:K*8:MLC#ALFV7NZLD'RA"MO8:M_F98?^K>QSX; M6K=L[7]0.QQ! $.].PUC920Q_^YAJK*QVE+"S%JG*W2F4'%'YXE$L<):2CW:#M99W!+ M+:$J*^&W+OT0TA="*NI>O3+NA&ZV0;2GE"10*%*\0"NJ35F%)VD7-J_8OU@Q MLVRBD%>TU-B]5?7##CBZJJN.%2H[8880;=G-[+P7+T# EB7G0C@;^^<-0VB? MP--1GA/OF?HK&G/$S'+X=J%'X]?89S(7CT&8W%RYE[:%LL+4F<+\K8NJ)5AS M%Z31W$;A8BNEH3WV311=\3L/9"=[)E',7R>!^N,[7HC<\V,VN 5[,;;!)HM7 MU"B7PMX)><)[NH=PV#&/'_I!B;Y-=2]MJQP*U)>>OK&RI=*WWH6N.;AU?[W& M\$*+:>Q#=DCH*6M<5[9$BF\:ZE6M?*1FF&K@0!+>!$%R2;B!%!$G!"#K*++^$V]O%GI0Z%3B17BG"M#F^99GJ1 M@V)V]K;>U0^Z.GXJ@;$03ZVX^<_&_Z '82V.76<9^9XMG2/OM.Y:9GKYYQ3V M4?S^@PN!?$RR\Z/(X\^P$B >:RP9XISK/D8&#R$ZJ2@(*0\LY<%+Z&!G<3*V MWTF8S7^'@T(?/] [AVSC"/Q> 14+/O:"<5N.0C=A;7:(??-5@M6$4"AWNR)" MB1[M\Y@Z<6V!%[06>J)K/PQAV%3::<@WD'?;;< 3G9P A(8[PK.0+5XV?$74 M<*]?OS=RW&YIAM*SR7I=$6-Q6PVZ!H7,AQ0WTHG$ROK5?"NF@+V(($IV,2U* MA8FK^A)GRP^BB??@:7+O^-X=K7E-\;0A\LA7*W?TSL!1*\3Q7"/L&2\",))$ MY(8"45[9SEJ!?]/J\9CC*:^0(^0+95/@8+MBURQD]F#3E*; .VZ%/NHJU2J' M7*D)ZGBKEK1[L EZ6:#=O.7[+-E[G?X_(3LK:S09L&Y^>I7336 >K17_D$=S:%*7D$-W.B*.^O0Z=TR $)ZE&'JPL M#QDAG)OUJ?-P]JB9/#,A+J[J;(6CW%4&Y/S--,]/F?!P4LESDB]WZ5V4_H5R M$%7N;6AW1XXB;0U1WAK5ZXL80UJKT'TD%1=)94XD9T6>=BF+G)3LJ9ASV &0 MP8PQ==UXYP3B,4'G^,$N?DL@,Q>59+&Y29[Q8K?\8$[@,R:-_Q.0M,6 MG69?Y$#1R@2E[3F=CH@AHIW\G?%AXF,^NI\N;:_*X9/_Y>G.W?"2+6_+X MI^G#S9\6\^N;A\??D)O__#9;_H5\N+ZYG5W-EM]CB(JE_""]RGQYH['X>4FI M2H=>EEYB1^RY2R-/QA?DR"^LV1M>F,Q_I>1UM'%]5N$/5%KGSUJI82KBN M:HC86>OE->6DY!=!V*:72E?L]:[=HC]V-V]KBI++ZW;& M[/ZM=3AC^RWG1#@K4N)%LER#>938K8R=LAD/]6Z<&)+UDMI 4#9&[O7U2I9K M95>U1.S/#0*;<-YKNO+=TPKV-O8AYDQ5?LC6M*B5&R)W3K5RE=L,12O$3EDC MK(%M,2 J#H-M+M1.[\^<[EL_1$%P&\6O3JPZXFQ/!;DW=S3+41)B&Q*(XZ"K M)F>D+Q[?7X-+5S+3WY!LU^,78$PRSG8WF9ET4.^*>M<[*$XE[J?]V0EV](Z^ M\F_4>*_7%WG0M#)!>530Z(@X0-K)WWWL@!JN@@T1?+(;GQ/"64&6[ZMH8"FE M59!43W0=CTYA?UX[>"D(XJ<=AXGC"B,H($C M1SW'!R0J!?I $L$++928-L7=#A:: \<0A*.!:8?N<]T?J'Q4X1"ZYX1E'SP M,X*)S923IIJ<(ZK$65M_.K];9>DO&CH M,E(CI^Q. !;DPG#!4>:?SBNU1@U@/#D77(J?#YG_(@IW>VR&-[*,.7 MC_WZY8D8B093O?.F]?WLJO&AD\FAR@^D0$.!;2))8F?.AMZT?'J5&=65V.-; M\G%]J]^,^1)'29>=I'IJR$'R3#/I[C;5D$(,:>=JU#F-4_W;K!%1(]G[:@[NQ46*T0*5AG//F4>,# M)QUE!IX].2O8?D4*2GW:JP1'\ 38,PT\$HL7-TD:\5UJL8V=T#05-0?XSOYH M5GUUF&YN=!@M0.F8Y\Q)U/@@2DN;H:=.J$&J5XL91RDD$RI5FCDD?E\SL[XP M85^HJ'XE3,HOHQWGCDW!,:1]PFGH+9VW>Z9=J*J), QGY(@XH/EE!!V +6+$ M'5+[KGA3T*$Y'8@?0P_ MR>&=@)7CQ^0%YL2 \%XA'_LN26/^X*[-G;VIJ*8# V,4^*Y/FRKBU79 CJ#- MRAY=$E.T1HQ7&D)WG@C.OMS-;F=7T[LEF5Y=+;[=+6=W7\C]8CZ[FMT\VEQ* M^>O07_FN$Z:G^B_I6WK)N/]=-4/4[8S!RE_@A31(VZC_YH7@CKF% :^B"/.IU%)9CO:X] MX@C7$KMSMLW5?WZ;/-U"G3U M]IP-D?C(17GMCV(#&0))V#_0%QKNZ"T+@ZLHY(CVLY\^7[%U*5O4Q@VCEWYO MY('?T@SE4@=:71&'?EL-NKK\P\V?;^Z^W9"'FZL%F\*!Z^/U_*8AKT7W\WF\.\3-&!*Q/C-PI1IXC\%=)HD-$VTAYVV-) '=">3R!'> MB@#BD.^F1]=X^+)87/\\F\_)].Z:+)9_NGD@L[OE].[+[')^0Z:/CS=+]('2 M--*U)O(>0J5V-&Q'8>S!8F[TR-GQ#)0#0R(XXAI&AS8-;B"YID^I]M"J;(P< M&.J5+!7JJ&R).- ;!.Y<]^+F,=K20!ZPG4QR_.J(-@'$P=U-C^ZOZ7W] M.EN*%_1@&G6UX!E--W>6TYFTK- T>K4F\AYBI':L:T=A[%%B;KR0V/&%6(DA MKB%S:,L@!1!Q,V+IO+4X5*OK@1P:--0]JL^N:HXXZ'6D[KY+SSSYABRG_X7- M;9M/U6J[C,]Q&T[5U.W'Y;HF3]7XE3=&?="A2*.D;[]JXPC9NKJ*'TU :_L@#F%MT<^82MW?W#U.(1V)W,^GW9)S72^FX*H_?OK= M3Y^XH\(G)>GOH5:1:EAI;HW4+375!&]L:&K9";W(Y;=CJRJ?Z$K>U0>7SY0P MUCX;/[S#4 )55D^K77WL952I"L&^M99)$T[;XD*N=V6-P(RIXPBHI ]+U!WU M%EL:9Q><0H]]L8T2)_@21[MMTUC:G@I2##O3+.7"^*U((!YXNVK2^7H,/SGF MNQGSV?1R-I\M9S>/Y$\W\VMRNW@@C]/YC=V0D;1F,^Q@Y_GANMI*+8[ZSB>+ M/ZB,&.XHRLZBB3OLS*C6_84((0 1$O!:+4(&(@M!#E),<&W%6K<@_3[/?+J\N2;WTX?E7\CR M@C,%*?UQQH6W0?823T ?X9+\*9$9D;KE%R4)M@!(I' MNH;MG@>ZC6(XK&T8_FJ:(X> )D5+I9D4;1$'=Z/(G:L.W7R! W9R/5U.$?FI M_D"FUW-DWJLY<&ET&Y%/]P'*&0]2,,$U/@UB AP1?NDD?K)8'550VXO_WUB( M2;<61KB=W]^%0BCB^2>]7] M/O9#U]\&E -:B17/%"ZP[I[IEA_J&\SKX,\\/&X#/ZV/UL;&2.-43\DBJ4/9 M$GM.1[/@9QRCY)-IYH;.H7SO5L0G&W92QP_ADS3*WNY(0)"!\SOZLP"G3#AI M^Z@TG*XF48:R$/6<>+]8K6A<3(;JP::Y#VK,T53Y #T-'= CD*[\?0$19)DE MN1"LB9!B:!3JVPH% Y)SP())PVMN$*%N-C1>,Y)?XN@U?8;T.2=LV+AHTP\S M4K51O4 KG4[8$:N5#L-,GW*1B)")9$(-#&*#&$:A*A(TLVD"B_LWWQ*Z6-TD MJ;]Q4JIZA?RD$5)TJU=*WI4IMT"\#Z,0M*L#,G* 2@5!?)LO/2ML,=1N'3_F M3_Y^I0X,#S!4M3DO:=,?>8"V-H4QVZ!@!P$L]E$XD7OKBW;1&; MR%!3!T\/&EH10(X-[8VA639R/.C008E^RD7B@PE;IA$OQYX8".^;('K T9H( MG)W/RL4U$E&GN3T\.S$U.]<;^Y%_*(UE1;CNF&+HBC6E?RSMO2&7W"&!#. 5] M]VV#.YJ2K"[6AR!*DN_AH$88PV)TW]%7*:$TCD+VIROV*]IL'78@@SS^NQI& M!H2V-! C1&=5NH?+:^EE]Q)+?.@QN'W85!^NJ"A-9'/^[SY3;Q?0Q:K8#@UF.1OZ<"^H"14?IK@D2@DA5Q90OA(7QG\"H5%@[=%" M-+?UOB6<:I,9#6*V,TPU*.K1& 7NM53%!+0=[V84H+9'"%M#V>> 3.XS(\$0 MQP])^DPAHR^&*E*O0@+ (L"F.*N>X4*)5Q2(<[QB!@!W>16\8,5>^A>W:.//HDUF-+C5SC#5@*5'8Q1(U5(5$Q"5LR0RSPEYVLL? M9!!U@DM#5NDX-ZM;(P^-!C5+A3>JFR)V]":).Y?6J/!A\@N0QN:Q M\&=,Z76T1>7:U["9]?$)R)N07P::3ORLN%SXX MGA//J0-)@]?^"^,9A8\?XX_!5[IYHO&1)32[('7<-@H7MPD;VF._2*@K?O?3 MHZVH_I'P+8<-I\JFZ:LHWF0/:I1N$7)Y2"80R24B7*2!KQ+V;AJ@;_*=F[T3 ML!];@@9UC-:TQ1R<32H>7KA1-,0>CHUR#Q6'F2#R0#/THS=]F2(CC&M2.&\L._8!*?MN:@I+J/!*J-FK88Q(RQ& M@7!F-341S0>)R$&D/.,M%^HD]2V3"R$H(K'PX9Q6P.66J?S,OB+;V'=I&3VY M==G",_ W?@B]I/PV9P/YQ FDN.4_DYPD)_\^+FG9@$J4Q3]V-$C9- MBSF>Q-0)_']R4_$5'PH$R4MAZ8-&58_1X(12W6IH.&D^"C102VWVSLPZXV/R M=8FJ%0.O".?1E7H-<;G_ZOPMBJ\"-G^O'0-[8X(T OHUZN'!"],E]*=P MUQ!EY':!$\-<5BY2OX&7*L6@(^2Z"/CNPLF:=\)OP?$=3)CGLFGO!D0E+L@* M7[K!CE\M@729=1PE"7&=.-[SVR9\ZY+W/?V-NBGDW91IT+=_C.9Z-]]I*?]!%T MS*X91L7K?OP7XB(-_S /@\N9IF+?">,B)VP*2]@FHM%5-MCEWO"92-<..NS M4JQ6EN>N>/:]ZC8()0BX>=O2,-';#CN3)-(1W:3!2K77SZ"'>%9L1*W.]DV;B@F%&@6&9?TZ>VFW.5 M79"#DH["U2OMT_:(045+;!.;;4 >#2(,IG4V(?Y-0CS&"$7\?H49/4^X6*SF M4;A>TGC3(::UR8PFSML9ICKV]6B, @]:JF(B6@XLX5_ ](*%\@8K=@QEH<,, M(C_:XQE9\$(W)&DY>UZL$;X/"I-UA9O&S4PV@Z+,KND#D^+QU=FVVJ1L[HP4 M+;H9H6)3L:'G>#8+=17IO GX3$E:N1'H9YQ)#(&0 &]K&TY]6T'>2,IY$6!& M.#?KH&C+')%DCH,;] )X^:M\7E&+ %ZCC9=XTCP MG)""*^%L)X<:LY-\;8JGVJP-0\FEL'?\8'CCA_YFMR$!Y?>$\K5H3+.$]%WH MT9B$47CA.BP@ FZ[J+ S[X9C7_N1KD'V![J%O?EP/3L4T+C<9U_J;X^UI88< MJLXT4_5F62M2B"'K7(U,#/\9<5*P)A)O?BT\;X$%OZQ9[8!A2682STD=%!@T MVVP=@,U;/V1HR4P!+[3X+QS$M2K(:A 8#=+H&D.1"M_0>Q1XHJV$D0V5C!DI MN)$#.P058A]W3XGO^2QV'QT.&RF#@YH:L77ML0=!DZHEGU*'Q- BB%)QAL556A=5ICS1:M565QP]E8\3#1K/,75T6 M*%\4I(F@;=%K'\035% @8R^-CK9[JG[8:B:<:FLH?>:3YJ?S_IO/,4[5*2,2;_W=EL_V^2\9\0)L' M4_F^+*!6T.[5P>-]WGQ7=MY015ZS*])8[F* HRM_C?T0#RVMQ#_C"M_)MO[D ML.O?>[UYMA!YBAIOZO5OA\?9E[O9[>QJ>K[Y>SN"[E?S&=7LQN; MQ>@7\=H)LVN!5VP.' 6^Q_\Q#;U[@==9';',4$[P"(5Z>,[%]"E)8S9Y5JTP M#=%&#B!&35C:53!!&#$$F=6O\VZ%),6$E.3@13%D2;(RHT(6PR<2QE M-N PY5U6N6.5I[5!E0ZP(3SVFX@GU0^R&%QSW.U@@@;7H\+=BFFR@WW2>Z9% M>CQWT6B.%&YT%2W6'S5ML:]!=$0WM X).2OPS8W,C&PYMX%7'GWJ?5O#*%OUJYH\N(03T<=MX*>*R9"Z%6:<4:MU.*D\:8(=56HD[NQG$S2LF3OHY36N3FP%TLYFF U(\1P%L"=W\8^>G^[LHI0=U MV32.+5_AF= '\.C/BIE?!S)(@>=EK20+Q*ZJS*6>&1,?P-$2P)\)P0 M*7+X4BEC3#AG2SG=5LQ#$HZ,<97>0V+(L\.,.DN2'67+/-^E]S3FGZF,5=,> M.RHTJ5H*?U5CS''>*'-GC^64B2 ](9PX8=0)_\)2V/:F+:4U^R#GX; $VXI%/U:^3$4S<\X\RM'?,!*([[=L>6"#;P^ M&=10.3-AEYP=R?@1P;!(IIP0QM/"LF90D]S)?L/- JZ09$G="8=BB[.8^^P* M;Y;$GIOC*DI.MF\UNR"%SS8*R].9NO:(9S1:8G<.35YQ):OR6WH\]2MUH)Z.MP@?J+N+06#6X"X*X_R?_(2L[L*M M2?K(X=&X*4MI.Z:((P9>\SIV3@ J*B5-2,&.@Y/,$,%-W\)DE_O,0 !=MU!4 MA(9NW>4 O9YC";EF]2N#2=UM#&&B(7W7 ) (DX*R_8L A>I5BM?>#-#K.19W M;U:_TMW5W<;@[AK2&W;W,VX9].CP23$BU5YBU.PZ0I=7&:#)YX_[C)W M3RG*Z&%P\-)@QJ=RK2D:.%?EYTTM1D=> M%'NQZCR&M"2!/"ZZ&$0.BC;]$4=$)S7.V@BU_7"]-'\L_OR33V/F.\_[.7UA M+JBU5*COC-S[VQE!L7"HZ8G8XULJ)5 3&$""M].@G3A#MF<["[2Y-.$#\J+=56MEC+%&@5K?2YT^; MC\'#:Z3N_J8%(T9^M.BQUS3V7YS4?V'J)6G,TS2=ESJULB]MD&@3M?U3EY7A3#;/>,I+EY M4\4TPSR01T0O)C6=S#D?0[&V7O0TD=0I!.*K5DFD_(#,(W Y6)WWF1TRS]5E MX 8$ *%*Q19P0YDSG7[( U5;=3GX&CLA#BA]V;L&B> PD4^-#URLUPL;2O\_ M8HSGMC89;2V,T+IW66MGHCC MN*4"G7>B#VRPCL##6\+F6%RO;2<3C3W.V\?W:./:5!UQ)\B7D*OB@^90QQC? MUN-:4>:F=J.!OY6S8HI?TO25TK#JM)R? 28BN?#(,KTP0 H!_1FSJ*1CE#KV M4CO]*-MY&LW)0.6)-&<-_W .>V&!M!>VD?;"''+8_'H2TI)5D1J8-^4'D &7 M>.!*/;CL+,&Y8I^Q$(ED,JFR](5<9%J9C-SOB(#0L >S:3GAQ'X2]]?HA4LT M"Q]3!][#])@);]Y2&GI00"[R=F[ZLQ,SO5)XL2=F.M!K*O[[$ 7!;12_LDZ* MP=H<=:3C44]FE.>NAD@CGN2:UK#S-;U,#N*'))>$(V,N"\F$(;DT9.JZ\_(+"$(97GW'EY\[EV-WGE=%ZU)<9/DXM:'Q)UWX8ME'ZO**XH$-RI$1> M]ZUJ'MSU5Z:M=',-,6H!VYA;HIG$_%W-.43"]U9!2 MT1DIQ'8S0O.T[[CGZ*:!2@6&F19*J\85@].#--F3 I9*[0YC*L;FQ>>/G(#N M;ADOH(2V3;AX=)^IMPOH8C5E.GM^L(/4_T?88N8;BS=O;K!C/RU4&8>E["Y_ M!?+&B6&2F.2O+M15GC7.!#G\]&/4TO,D1CD@AK.>%.T,>YDX,,^3!2('B4@N MDIA32D)!IURLP^LI"$K7GFG:RWTU@9H[D_UR1 X/ YB[E*W9'SO$P#&$UIU7 MK0KDL'YCM%KG.V=3?VM4H]LH0_)4\>:X.O0977!4B&[8PR<$>&"X3_I DS3V MW91Z_&6)VNNDJK;(?;I61=F1*QLB]MYZ>;N7X,VIBM=@T,&P]M@U;[A#:I \ M\A P;4B#TZKY""Z-&E?1](2I]5)KCN*>Z+&A'BCXLA_X7/:&.RS:G9''9CLC ME*I':O5$'%A\=GT: &5.UJ^P#&2(*R=P=T$!#*_47S_#..^\T-A9T^S] M0A+M4GYNEU\TA\5,,\EXTY$48@ Z5Z-SGA$5C,F'.0^L M@CF7.M(94FO MI97,V/K=89$!#'H_V&,/FK#0-G\1LQV+ +(S]G4;"IF9@S]GFA\+;". MSQ"3Q6&2-O7^MDM22.-IF.2<3Q4YP!@RFPPX9Y)$#$"F-.M>L\X5=Z.<@.2R MD$P8L4Q+R#1-8_]IE^8H=9UO?MRL5O!HL>WID&T;9F: O,_<,DFQ+61S!B3] MN!E>,3!$O2T.<0LK1FE;E/!LEC!S&S!FO7"OS7*J(P\@((>7F6,)&ELP-O"*S*YWF981RXF&8S2_#,@X#*8@ZF:2/' M-J,F-'@.A:)Z0X^'4*8*-I@Y@9I8J1^ SY07A2W]HF!^0F@FB=4=K->IZX*> M3//[. K9GZZ ]$4LKO;.0KD%6SG[VZ V_?ELYO/ 6R&(U]:(MC.*UB8V*ILB=ODY!V;>KVB%VX5IQ M>_%4^UFX!_$*Z81P/W[Z_+M/]2_%Z?9%[LVM3%"";IV.B/V]G?Q]! PNOAD M\+6Y)$XEWV?_.O9[]M%?'V":53%%.?X.J=]6J@!^6?H"H=]5RW?&_>?43U+? M=8)2E4#3P[^^2U6"Y>FWV-WJ%/".OL+L6H9 2^ESL M3X+:"/=OYPUWIDS01>K'QDUG8B]W/H+K4>9TZYZZ]UK>K95E@,)E39NZ<_5] MJ*'RJFW;\(&Z/.E 94:#U0YOV)QN \5>'R![:K'ZEHABWM^V49AO_"Q6)9/D MB]8C\QD@AQ2-3!FJJ*!X!BWLU15-J-:Y /PS)33G3V(0X"):7>P2*EXQ(+LM MO%:020&GX2$#*^<0946)1+C8X(0AU D41;$&+HMHTXH%;_*06Y"Q%V\53 A( M0*:2"8_P/A?#0EE%'$8SZG9] /T<:M[E[S3LS\7Y+M1& ?.=S72*\JU)C0;D MNVMF!N,#7K\Q?Y=F/T* ']Z"!ZCBO(N79_;C '>;!C/G;@:!_7*7L(5'DEQ% MFR<_%+?4W7_L_,2'/Q_$4PY7\)+#=+V.Z9K]L\K W <:V,'[ M')7.0>TT@FS\IXP["Y."YT7IO1$>+%"P7&HQ,#K;,%'.DTA,)T1B2S*^A#-F M7^6L+:"Q%1_B_J-T&XL;O/K64.PXM2* %'*[&T/>F]7OC7@3MH,2 Z&&G0W5 M >TQ58XJ?LC+G'O$V_&'*F&$Z3X7,XPI&!. TZ9ZCX/'[@PWU*SJ20@XUYQA(!IHN M=!##S%GJ=*^0ESR+6T#PA\27(PT\5%+Y[*?E*A163"661LR_$]^#TEP3 8T(X%TO/-_6M.\?"K>-;GT5D@ (7M*4I51TH*GL@#U\- M=4^&_NKFB(-61^JS?#8G+HH22.3-!NH?A*HAWW*L?9RW3XWG+.+_6!YY+<;K MERCR7OT@N&=6?(9I1W% )5U155A)MR_R&&YE CF:M3HBCNMV\G?U]YP+FYEG M?.138XF3K6 ?Q@S7TGN_ZXPC/\V*J7AM,7O%E\U;7-4X/LP\91A[R-O0&^G. M4/;.I%.P0K #*^U-0\7W=>C_DWHSCPGGKWPH,\%3R8J-H=R ;*F7YR+ 2UQ) MLMM0[XXV5?_LGRMR0![([ U'2R99(AX$AM+<["'6040BRR@240_;R6R]5XP^ ML%LDB4HR62<$Z@G;WAG"_BN(3:1M/H!O8]^EY3TE;M]M3 -_PQ2(]V3E^#%Y M<8(=)0XOQ)6PH2Y7:7R@7FGB[#%UT1(N9O@OT+/%47X?K-\GO'?Z 0Q@?"N^ M[P_HNZEO!>W5$)_)FW7@!'.11X7WP_X8V<2?XW9&])W@]BQ\8>VC>#_ SR/S M^A4A\XF)^X+B@M&O!'M/]44&MH6 XX=6<[;.*?FG(\Y(,;0T[-S'%#:L;MZV M-$PH:[](GVDLOAMZ"&R0Y5>$P:U_HD&FRW6"_$HPO+T]D&'\\80ZTX%D2O". M7(VLQ?B'@N%^LMR65%!_E^,%M]?0OUK.]-JX_TK N?& MGZ OC%8R_I5 =;/^R! [%YC]!2*+P\Q"ZO%#=W\_2$Z96XRJ+#92#)^%*;.* M7S3FP]7RV0GS<^%!MLB:9?@58;KV3]+?=GB# +\2C->W S*L/PA>GJ"3E E? MY+.,'_/[_X$D2[ZKJ?M@V^J_QCWS83;$?U6[W;BWLM_+!K4A*V>5=(3U5!=4 MS%@'.+U'ZXQT6,GVS^0OL@2@>V=?\USHT#+\B@8C[9^DY]U\M0"_DB%,WP[( M1K=\KU_ZZK$M>- M=]13(^\P')%"[H#FKJOI;)#=",L_]Z%]YSD8OT<(A:L<05P.<5B5 U_BI,<5 MH@D\GVN_3#0F4_:UF9;]+M;&JC'8?GKJO.]D-7$7A>[)2FP>A>LEC3?7]&F( MY"(=&9 .>%9_DKZ6&XT"_$I6'OIV0(;I!\'+NT@@^P4#X@T!Z<>_).G_!SI8 MS*NPV$@Q?]AMHU$L7 8RAIJI'9G\9#6[OWS"DK3'JNFFC@MC>30Z%Y(9(G'JA\5-D MI9[<$"8:K"H,N:W*BS%!&/JX8-)\\AA@@ MBWB\,*E=UR@4,EQP(4[O&TB+$<@0BOF!2]5P0G[AXIR4S,01P9?[K\[?HO@J M8'@S??-5FQ/M*(PW(E7FT(R\X^[CC#"E%CU%TM.><(:$L*DSBV;H5)$89_C4:M)/"$U* 01LR2^"L%&KW/_O;Y"O=/"F+VM3W0!X?&NJ67KE1-T?L]SI2=W[E)J--8IFX10=> M4OITKZ_9%[M2M3""[MU9'Q([>3O[.^\T%%YMN'CL>W3CQ MWQL\^K09=N=5*%;RTZ,VF%U2)6IG[RL(6O2^X@4Q]8QJSA;5LY1N5*O3EB20 M>VT7@\@>W:8_8F_OI,99[RS!9D[#4O478$DX3TMOH QKEJO__#9[G"UGB[M' MZPORH&XW\'/M.JVQ*W)(:&. T_5V?3_$$-!*_#-7UD'#-J^=:!_$ I6O_>*: M ?Q,_?5S2KWI"XV=-?V6T-4NF/LKU[-5O!0N[5]'!-*G_P\QY>=YL&G#O[.$\*@&KG M;LJO;%Y3;^>FW&C\2E9#%H(I'LC!JQ>35F57&6& &-[ZT?/L3"I)'#E!*N?- M+VD?N!/!WFZR+@X+'FP51N&%=S 1O'\,-[6WNW@;V7WJX-I/G/4ZAN>BF546 MJP?Z0L,=K4OR:>B"'*UT%);!IZX]8BS1$KMSN8$2<R*W,';&*!T?*G1#['#MQ*_\X%FQH2\,BXD M9S,AG!').-G/=VFR16V:BW;GD<>!.JE%K^>(8\%0"HMF-)R1MZ*H1?/M8_(Q M29T4GJ":LW[!=$U#UZ?5QYV:79"ZVQUV/1%;^KXS[0+9.;0ED[ M/V23\8V8Q\"+"R?DQ0J9W!()R%*8W%':"Z :RZ M&>; JU&L"+F*-MB#K4[D7L.LQ'C@\.I#Z1)-@P'%W[Y1!U+Y:\P!5*%($3C2 M=]@#IDK47@,EXB\\)7R_P!7[!0.'BTF5*Q^4M7^6,V](MM7HAC3VVBJN<:XS M'T$BK;;H/9SOS&VGR_:N?*YJ5C@"N)B+Z21.I7AF_SJ.9?;17Q]A(P: ^@N- MUK&S??9AQ^?TW*JI+=*HU5(10K6V(<+XU).W7]+UL6:5)TE- M;3'[99.*A5^J&F+URT9YS?BEJ4O*"74_KJ.7'_CK,_%>.&?V#^Z;8A4A/O@K ME[@TMY._0.IOI\+S-4/Q*4)/JA"N\V8-I*)ZA..ES02HNRC\5G]-LMP"J3/5 MJ"//>J6O$;I7G91&]BY.%I>6DS+R:F/[["$OA3TTNR)WS38&:$K'..Z'V)E; MB6\Z%:-@5#R)9V?5-JP1I'*O$^)6ZXTE\K/EYJ%,81<+5A$9,QHHC:*-"R<4 MQHH0:D5ZQ(JC/9!_VKHM.;!EJ'Q*T &XL8 M4QAC(W;7[VG,-]U9'"Z> E_LEA67'?P-:[)8/;)/DQ53HJ&LIS'BR#')K!%E MK#)#&3&&&5;PS @&!,L$(9(DY""*?'^)2P.[W+(\"*XRG&U3MKB.TVM(&U1? M>C#.Y+W'>*51C<9ZB<-[COEJ1>W'_H1PR0B(9O\VQ]EFGC<< !ME\-[#_\28 M1D/_]!CS'8;]J9+V0Q[!R38^N_9S!MX/ )YCU'<"6YT1:>Q@,R2.V"QO,)0Q M4J+P'>#@U2VN@.) 8.V14:#( >!RX(@80 M@Z8YD(+Y5MP$+(3RV0UD!A=;L-C!IFY"QCKXD;*2I4'R[P&>6AC2Z)(KHSUV M0&NCHOWE%H=")A-B&!S"H(65TL)*B<3&(O;-0F8B1GP/-0.39_%&7C(-O9^C M^.^S\#Z.7)HD=S2%#.R$QB_*9["[44*.:&>81P:O#F00X]0YVG1/[\IX3DC. ME=>H2W@A V ,A[49:_YXI[C.(-C;@1\;=BJ,LP9>&("E.Y"\"^#H"!3C!H9A M@ !YU/=H!"!]X8<76T$<0Y@_.*]?'68; M^F!W7QV52TYZC52J5?%)N@-D'*^4\ MW^?,%V9EBQHHO "?.BDNYA.").!M6'_MW'<9P:A\7[@$C^&%<_)&0R;:S])8_]I MQW-BV=S>=^O*.]:VQAQ.S6H6H:5NBCW,-"0_HRQ/09HX2>*+J)MD]Y+\<#TA M[%L21G K:&U:_CO5 6T FGL8W] ML&C.AH@@.YIBT9W >=4N6RPZ+/P#QB7FD0ZG]CY;OR;,ZP>.\(%L;G%ZEJ]V MY@VIW%7MD$)"HVKR5.VD$>+IFEK6SJ MEB.)L KUJF),:C:"**N2]OPX ZHD(VLYTDPJ^+C;L,G '@9S*+>YIG"GF1\) M(XG _*7*ZUTL\G+\J"D4%5U&$I-U"E<%9U7[$41IK=CGANND>-.9"/I])I>Q M>?)3I!>YO2@M/6V((%X9,%%_'8H*+NY^&3MA$H@'%AT_G$=)TT15B\!(8EG? M&%61W=Q[!''>0HGSHSYC1G)N1&)'@!_Y !R_MSM^#V"2W!!N;HA4,H3C_6V7 MI'S+%P%@\*?I&RR6MQE)V)=4JHILWF $P5N6\_SXY/3L!I\AE8 *IFGR;+-U M8&8Q==W=9L<"G7KB(PASC5%7I_](HD_;%%61V=AY!%&KK\/Y$9WS@AEWP8T< MV)&Y]8COWQRRZOY!]8#1-OK<$*1LIW3NOS!E0F\6>G1U^&06IDQZ_E@Y8YLF ME_NOSM^B^"IPDJ0J8>2PGU(9TJYK"/%M;!^VCTFRG+A?<, D6W9Y],[9* [6:YHAQ;PFQ>3I MSG$;Q+,:I:A=O9<3#(&@W2+S;K39TI1.US'E^82-->?5'9![9+.R1Q7I%:T1 M>ZF&T%W]E9&^R&@3IR!N]2:/]GA3D^_=3=*XXZ?.O.TB*$J,N.-HUIM^HNE26DN#ZS[ MR!WOO,J9*W+BS%%%&DJ&S7;^UL<<279>?]L?IQK^[RT0U%L@YGXP$]L@8AOE=XX EPZWY]NV!3:_V==@?E.A,8+ @W& MT80%!95Q D63,GU!AYR'(C-&AR9]&:@.7V3C.#7&P0$Y;$;5:1HV:BB1E-9? M1(P3(F3!>UPTH(M\$WK717EO.D>I$UC4^;9:8\SKHF\)7>V"N;]2E6K3[#I: M/#LU@!ZJ'?J-$MLJQ.\%X29$<"+ "AO0&33"S]1?/_,IW0N-X>&,&K7QG&;? MO&452/(-WFX'G%5DD -"5\.T.,0^H8$8*#JKTF,JR(>":U$UTM*=0(O6.9T^ M6403>1FX6!V;06&\QD[(D4)/:1D7ZGL@1@%-P3O?P)'(P\E!XQ'B,-$]I-;P M4E:8V)P17$5)*@K\\@K56=FMQRC0V375[HP\IML908YMO9Z(8[RE EV]'MA, M$.QO#J1N59"7FMC%?KK'G,G1OS%ODM3? MG)S"%,BVBF)26KV-8[,SJ3"9>$W0H_%B)=P O*##89D^Y?%B75OSZ1XK:Y(= M)_*UUJZG?=CBT4I9H/Q-4"8+S$XD($0'>H/9L601N/ P&BR[HV_I\I4&+_1K M%*;/'=+=](B^*P13&:T[>!U3?#>XI51L6,CB\[1%B.XX:1"3,:#X:32 !+_4 M\C4R8LD#K7<%/TW_P(IOI3( !4N\+8DH:V0 9$& T,&/$6@P _G540'/+;&_,AAFQ=P0&L5!4'T"@Q$@?Q4_O8C$5EW_"D<> M]PX5SPG#'6FSYHQT)>7VF8?%] M_B&4W1!5-AAW\-V"?I*_&@S6.>B^C<3#'<1C7Y,/["<.^#-[VVT<.>[S]_:* M:@SN/-W&(/$36QJ)K-ML^4QCRDU@<$0ZO-5^39]29>GHZF:81Y :Q8J1H:(- M=L2O$[FK8X4_.,,B3Q]*Y#3)8D6 *H*BPX_/# J6--YP+1F[F@*9JK9(0TQ+ MQ=)CZU4-$:_-ZN7M[*1 ]8(A^(;[Z(0 9?NU*D^4K:U'J6X]-F=5UY54-!V3 MPQJJ#ZEP6?,%(&=ALHMATG\?TXV_V]R*>7.X5C^%WMP%J4>V4;B8K32TQSYS MT17_C.FQ5$I1KGG(%FPIB#.+ Z["^#3-3*VPP M?,4#=^D]K'[@_@M T3QR0G7T-O; '+QZZA:Q6]\<>^AJ2M]WY.;;*ULA!VRN M\'$I8*(0.[';LV6N:C2V.%^<1^$ZU5O7*)HB#6T=!>5I8E4[Q'/$6G$[5S)F M1/$M:8Y5K5W1*!N/S$W5ZYGJEB-R54.KF6IG-;^8:9[]C&JVTS"[&==LQM+L MY3!5L3)3,:WU.=,01=#P@N 0H?DVACIZU$TQAU&#@D4\*=IA#ZPFL?N.L(@7 ME \B^!>XIP?' %:"K2]+<+HGNA@[_IMGA?Z;SVRDEI@#KEX]Q3E@W@Q[N#5( M/=+30&-ZG!X(SO/G-VR\OM&3ED ,P\G1913'/,FF\8"SU!(I>&BH5WE:=&B& M>&E5)ZVA4R([.:(]*^;9#36PZRQ,TIB/"E=.'.^9AB(+3V&0AB[(@T]'83D* MZ]HC#D-,DV<$I)%32JJEX?S[54<%:9[.ID:\UR=& 8W?-SIE> MDX, $R*)0'(9R(=,BN]Y[KCHDTE"N"@]E*K_@S!>2-=07DD?E8:WH6PROB7C MY78#:_%/_-Q:4-[.)J:5]FQ$!2^?)@]TZ^SY0^R+U7WLAZZ_=8(V!9\,D$6. M:J8,=WQH=0Y-Q+AF3+6S)DS+P\0P+U>'K9"3=4-AJN+4PABS4+.(T[DTWP\N MJ4W6$91.";X/1*K1RSP<]5JD26--9] MP,14V:$&#+%6A,F*,2S78&JOYQ=,"DJGU81QAE(5$Y*PMKQI1L@19[VY#D*8-?2@7)';ZQ9%#-N MP-0/>9-M[+M4',$X*6.^X;: >D3_NY!2NP1&:QZE&&S -P[. MH'!=.6.LIKI#94/D'JM63IU2B;RN0XVPAA(?[1=T*.MXYVSJ2SK4-!^5?YXJ MJO;20]O1^&J%R,92=8%V'[4=[NBK@.SI.J9\,CS=K7=)"HZKOK&NU0NI:[94 MNUBO-7?!OC)KH4'W\FS*BA'/E'S'),AG"(4,WQ$*6VCBO=R(")'(CY\FD*#X M>>!%T@ FJK*!Q:&H/!FLF1Y5-D0:X\W*R0//:2O$0TZ-L)T+LQW/V6U/C\HZ MUDZ-%$U'Y9?J*5%5N]'XIJ&IT(EWGC$),N2?#_0E"E[8P%96N'*^I-L'N<=J MJ2R[;FT'Q#ZL)W?W"Q@9=>(*MUYE]#O5P3&UPT?3%"Z:"(UKO5C1%+GSUBE8 MVM*K:(?856O%[;R1QXG"5I[P4)/UF>"X'38*H71;HEY=*MHA=;)&U0Z5F2H: M85\SULIL?I68\(R, #:3H1[?T&=DO6C[>*231:3_LQ/[L!__X*1U=8XKFB$- MOB;%9'0_;H,8V96B=O7!G" !BO87>+)^MD$7)?K%9*]L-R"\0^J!"TJ_\!.>Y[=F^$>%$X@^WO)R?\ M^V*U@GUP$&H^NUP\U*_$-/LB=]!6)CBZX='<$;$[MY._\VH.:"%+'IIGY4*5 M11P:^F#W:!V5FQ*)B@Z8/5A+;N,)1?.\\.WI#+;??.]A]+9< [=*N:_.F[_9 M'0J17CE;]DVZ;V&?&A(C#.$""Z6 MY@!]ZR[7R@X.=NA^/-OC4D$4F&22GK-8J"6"/? [&:5IP:"F@!D4NBEB?-%0 M\$2];.C1,M,7QP_$M56\2X=+)_&3QVU,'6\1RN=-G[4F7+7=D6-&6T.H%Q#J MOHAQHK4*QA81G!<1S."F=NE,$L>[&SV:8[K=!K[+]=TX\9JM&#XX"7'.6C#-0O>U1D/E/GI,:#@C..>' [*U"S/T"> M0$#H&3J# ^#01CR9Q'&61/ D.5/"N9*"K07 '-HP7YO=J3=LY65K[F@ZIY)J MS491=1L/AM8JKL#-RC[CPLIZ%0SAHZB;%=*4!'34H-B/M4Z 4-2.8GQ(SDB@ MH'7LZT?_I<(]>@.Y6>BR97A"9V&E0M<[NHR^.G^+XJG+_%,4]:RLC&B&['A M\BS#*4"T$\UQ@>QY*AH"83\3@OUA%)")MP.$AT*]-(8RN(ZDA%6TMF/VB@2' MS/"S4(GLA G#OB1<'"++8QWS[5AQIN&M!L>'*R=T/-\)-:2<]?$1YL!PV*L%5#HBR6/0.+#%&ZAU"JDR#!"?"U:*>59U M>5X2>E[*$[#V$J-)Y?+*UX=$(23AE$?WMW"74"]/:"@='QS.%5HD2^C2&U&@ M=C)54]Z0%K&10$ WG8QG$PGV10+1Y.ADCAQDP)-;-(S),LL$8#DXM>TMFZ"\ MTI /)K]M68 I$PLT^R$%C=:J*W9.JCMAGY:WTL',D?MB17:"-O8DA$&,<[)# M(5F+F2KC9"D[81 +U*@XX/QJL5HE-$TAOSQA?R1U;S&HVB*%."T5Y3E/94/$ M\YEZ>3M?$"BH$D$6P:L+QYK.&R[]U[4?F;>>J%KGL47C$7GMJC MR-TG?#GA"MVX7IE2%RU.C?V#+B],<-,5H-H'3G MT9J)1H1L1!(.;MYR\0B7C^0"3B"!\-".Y$(2D!+!IE:546O*J-]ML,(G5==AUW=>F0.;*@NN\J%[1=H M7Z3/-+[:Q3&\RLBW9FL+9-ENUH@-B%]:3^_Q-U61" M#OL."!(*^M4;:U*!&$P;35(T&TV4EA6K#DS19A2Q>"3J^>$G,GGL5<_K3S&G M2C$KP25- QKM4&X[FC"K4+$ZUJ2&HPBX*GD-.&=.MI^2MJTBKR<- Y6&0RZG M(M>?1TERY23/MT'T"@_?29V3H$4Z:O-&!(N>$" M67U7EXTO3 AF(AJZ^VMGXZQI,GUU8H]Z?/]%\3MH=40.;?K*EY_3;>J%&)): M"-^]?DB2$(G'A&1<2,9F(O8;+5WZ[]\ @B9Q!$V#M_F/9+_;P;'&8G7M[!GJ MW?H!O8Q]NCI2O%U/I!';0?WB3K]>-^RW^EMJT?E^#Z<+LWZ/488)P8K1)@X; MZ9)M!*/8$_"![,-MP$;:IC*$'?<>]1XV 2F7,^7T,+. #@8 0!IB0S[@% M- #P(3<)Y\KQ<.@]=12N44 BXV0SC6Y+H6YKN)Y#9=<;L>Q4S(-5;9&"H9:* MI92ZJH:(%V;U\G9.KN6F24!;L)]%?G'Q/2,9W MP@NC_Y*SME5(9DCK'%G%ZNXK_Z&JM=_GNHOG;CV8T-SZB>L$?Z&.*BGY+(+( MD>1\8Y6?D.]*#3'*&%"J3\P1QTOWCN_E3TU[8AXMY" @B*V7Z:T9KF0(V W! MCD<,B^$T;. M(\BF"9W0A=>-MY%XXI9X<%OA _N% I#*V6[CR'&?OQ\ZY\;*;]_B!"\11WCB MA[4T0%BTU/*9QI0K/X()YIGC*MX1I*LANDPDW\$$/)Y.<06NGK"B;H7E+YTT4AH%;4:+P+TP1H>2IRCI: M/;'[L;[ZY2HKC=TP^W4+Z;O7)Q$\H*!"]H:9N DHUC %(UNEQ_JWP$%91Z7L M@'%^LUI1%ZH]S'BY!J8XOU/-T^AW;,#.1NXH5*5WM"* /.K;&T,.?OW>B#&@ M@Q)= Z%@100O#@F\.L$#A1^+31&S5PZR]VGM8((5B_!J*W:??7ETGZFW"^AB ME:/B5;2!S'J!AW',=.0[-S_[Z?,L]/P7W]LY@=@C8G9Y?'9B>LGT\O)I_C3T M[B,V3Z*I'_.>ES2D*S]-+O=+/P5.!S*L+?N4*5G-ON[YF%$(CAP)1V'#$P3& M+S5BY!^1\;KB:ZXBO[V83T1E-D12DU=J(0<))Z10E7!=+X"H5^S \LWPLKXD M5Y@_U,-U!M8'FKP/? 7O]2B%LO^0SQ >H?SM:UX,PB 7-:'+&:UW* M C;A>DGCS2R$K0NVIK]GVE>^):/1'&EXZBHJE:)1MD6?_J,A>O?:G*LHW@A7 MW-(X9:X(7IU&)'VF)&"<+U+&&DKJ"MY0=BLV!FKH[PXW\T_&+=9 MF*1.$' ,JIIYUC5&&BEZ2A;K(F5+[*NB9L'/KZ](@39;^QR(#[SRZ5W)Q2WA MM(E,W$+ROIU?TR"LP%L0?$I3N5C],TT@!_F>7TJITK]==\S0T\$0!1BUZ(L= MGKJH\BK53-!"N_]&M5 MOJJ" ^(=L)X4M90'6GE$,+(DS5/3#I&"V8DKN[,<6]E/Z MMD-!OQRQ8TI0/)T*S4VF']:31PH9?1G2X$Q]_MX2 W54'##+I7HE/Q]50E^? M)C63KM=TK*3$[SP?@3_,GGP1QV"U>\:M22'%)A,&.CUH:D<'^_3G7+7..>@/ MBWR6RC-:Z;0 SS3)EKVDPZ>:F=1$>EE8\)^03 *;AU #V^K.A%\-BM%<\VLG MI;>.'T-M*VBQB<+'-'+_WLVT323'C=E:!FN!W;7TQH_A>NJ=@^4\Q$2AZ17C M05Z "2QX20)3*PA&E[,D"?#DP1D$/->+>OQJR"[,_K$+X49(99[.F,:!?FVN M.QYP*0B(04 .7B60\C0%^"VX+"A'AGZM]\6VMUI< 4#"A\LD7T:0+&=BW#ZA M..ZQ1<=9[>'V ;.I:$0NDN9$X?SB7TK\YK=T:*W]V,(!\8 MZO5$?!S84H'.*;RG)W?E*F!6+C#8, (11BAA .U^8=_XC81J$\@)4Y?[DS-, M#JIZEQ'.IX\<3(R;LOH*PIG$$4.2>1U-7#R0$4R5L9! <>A*J .9$-PYX!,A M9T-K+@@<-4$>;%4*R?$B?X_8Y2O%[.JU0(P -?OYZ+E>M3GE)XU&XG/JW.YR MBQ'XG:$<:\GSS*='\_.8TN52<#IU;G1#>Z1.IJUJL6U4UQC[UI"6[%V]\8%N MF=!\6(9='E^9'LVE.+I?34"0@;=\>K6&4DF;FP]\JL;8U,Q'CML@C=M:E4H[ M!G(#Q$-#M9Q=O4],@/F5&NN3DNZKBH--0D]K:M,3*^0QT*>!2XOA'O@@CLA> MU341V&?,^4S=?]UL@VA/*1_L%ENP3^4$4:<]\B!K5+5TV535&+&[-\M\WE1( MD/S_VSNZWK9MX%_A8PLX&/8^#'#2K OF)EF:&QUJ!E]KS0%(-9 8Q<_^T);]"4HH6*V*(L M,F=C'TA:]Z5.HBZ.7.[U0M-5HMXO0B#(BYLOMY?7R_G]U*]Y9CN84';$!MPY]KM2KBE^ 1L^U+^^YC>10R;0G$WU@>1\3^?UQN=5B.EV]^ES&VOY$TSEAY MXD3V^XZ'K^(P>:++#(@K)!< CR%=;BG-YO%ZOEXS(;(@^L1X&"4\AP$]?X4O MSPD/HL]IDC^#(,,H7[-X(]HD<<;BG(*H:3GY*=\^FPX[\IE@XF%HSP 3H4;L M^:>6P.B;V"N4I,0I'D2IL)(V6K+#BZ"4^?C"510E38;\W;L761G5-)C?M7.Q M4OC5]2U(RM('B4%;Y#4>&G+K/E!,G8=5QH%";'^'::]HBU3#C5AL*NQE#;%7UVOIMO_26 KT1(5J:[4$HO_FI 9 M>?AKXIKZH\F@S1.I86.9TRZB@'/VR,(R@Z%X#EC;"ZD%#V1;.A?M=_%ESE%0 M;FENZ6) %K9UB3,/T"3]_%5SPZ"KKY.?JGZ<0.JMLKLO9N^(X$\:K6'2A:_T M.LGZHTQEJ?MX:#Z9QG Q20W&')0O9C2"(SO&-2,"]1G@/A/(9P30RU*+)YU2 M7&@*]Z>E +EA.QB.:3.,"P_N#' AA?'+4D$K:8B=D8I<4M!;O*:THYBT2!;[ MV6-V01:NGY[U:7CFG-.,%Z.P8,%*+)@9B%Y,#02F!K*$J<'E970%>3>/'>FH MA7.1IRE(73(V!P%$[IL/%U;G3KS1T!![3@M,V8J^=)YL1DIB9Z2BP-$U_.XD M5L$A0>FCMK5/XFY]TNXJ]#L:B6SJ;9!FK_=I$/,@+-SS^6OG'Z,K^(?!0NZ) M#A)1_]7Z P A]C^'\6/CROP*.BG DS;FF0BXNG^[/U$B$9-NS6;0#;D)F3+> MMA9='\2&84SZ^(NG)7J/8,'@COE1F1W)[G3]F!?$!%G*5KF _S5(Z3;).>6P M\KFC6<"B)<"C;^UV% "D%CQ>&,WF]J#>V'>\QS%CZ8+YW5.#ZQ9Z\J/!7RQ] MTX("\=HS])UX,WQ:\51WL-P\DC8^LD-( ",I49(2IX.7 YW(9(B.6'2;;>=_ M!WI;/6S&VUZZ3T:&_3 [R2&L-[[1I!-VESB(AP-J$@N@H+EALHG9OU0H,<^C MXLH1,0PD:^$C'^C/.B/1^3W;!K &3RFA$7MB<7U^" :7)Q%;%]]A51XF3RL( M6&")#FWBD 7"5JH4*/](?K!L"^C+..19,#ZQGYU$YMU 2Z AS3"HPJX)?.I$ M_ /'U,%SM49[4!AP*A0^.MPT&([9,T$RFI M)=T4\XI$0LH.R U7SVS;;.6M$1NM =&'Q_([X*2&[L9<)^$VW7'+)=RZ>;FX M)*;D'4++UBGU\]?J3\,WB@= 0F[B!XA'\NZP*1C$3N$0;JR\)5P")@U:TL); M[(W4+:SOBO T:]D6?'MK5_ 3S/KU>@OH*=+"/24$RH9(K4+/G%!Z>2N$.FU M[/B8M 6VW+6P7@0P4A][S_MKFGJED_NG^E7MO-%+2V?W>S73_8G]ZEA*O*FC M+N6)?'EKI)IJR&8[;I T1:BOIA2/5=D&+H:@^0NLM5,61'=4##>+1.0CC$BI MK]I.R-76C.FV]JI[(%9B0\+'IUX;L*7S=;G^DT?P"]TSB69=D:OU$ %TEG0& M_1"K^"#R1R_:5 LU!*=Y)A7"IR +7!IZON+T>RZVDT3E/9^O>)8&H>STO:(Y M=H/6,-HQ8DE;S(:K(WFTGCZ<+R__?KB\OB>7_\"GTQ=/\II*?77 "4%5 1GG=_PJ8V4Y,W]TE-U1"1IZX^^6IST]W36?; S%:^= MY$"U5C+0HIB5, +)L!@ 5 M 8V1R92TR,#(R,#8S,%]P&UL[7U;<^,XEN;[1NQ_X-8^;,]#9OF2 MZ71V=,^&+,M9BE%*:DE9-;TO%;0(R>RB2!5(VE;_^@5XD4B1N)&@"$**Z:G, MM $0YSL?#@Z YR__=_WC6.\ NC;GOOWGZX_7OUD '?I6;:[_OM/H?_!])>V M_=/__<__^3_^]K\^?/COA]G(L+QEN %N8"PA, -@&6]V\&(LO.W6=(WO $+; M<8P':%MK8!A?/]Y]O+^^^_+QYN;+IT_&AP])2P^FCVIZKA$U>?/Q>O^;?M*J MY_[5N/_Y^OKGFZN;&^/37V^^_O7JUIA^WQ?\CGJYLIDE'=O]XZ_X/\_HDP82 MU_7_^N[;?__I)0BV?_WYY[>WMX]OMQ\]N$;UKZY__N_OH_GR!6S,#[;K!Z:[ M!#\9J/Q?_>B'(V]I!A%6F>KOS]!)&[C]>?\M8@G\KP]IL0_X1Q^N;S[<7G]\ M]ZV?DB[B7W-\)"W^7BB?R'3]]>O7GZ/?[HNBAFQ*TWNQ$7J&\3?H.6 &5D;4 MQE^#W1;\_2??WFP=_.WH9R\0K/[^T]*"6):;FZN[VRLLR?]^3(B2_MESK8$; MV,%NZ*X\N(EP_,G [?^8#7,=6IJXL1?/P3ST/RZ]S<^XV,]\+49BYLM!"_ ]>U7,$3F*?[!I(L@E4\_LJ MP=(K/HC6-E+.Y L/N4[)X3CT?:7 MCN>'$,SMM8LKXO[(F)M-N*N(_@6= R'M=MI=MH&M[8062*HTDY,DQHR5F# M>M0F6QI/V+U8F.]UQE.FB;8TM47>4N1 39%77D<_QPVU,_]$PQ519&2;S[:# M#"[P?P&.]>3!N8D;JC@EL9IM:99RL..#W-M@MX (='-9:^(EM]>.TP36T4: M&9B57:1L$^IY?HUZ@"U[@M2^+4PTM38C=MITZ^YO/1G+6E+$%:XG&+F]MMWB M>G*5-*2DBUQ/2M[66W.7ZXF7;4$UU[F>9!P-MSW)UYP4B@VI-^_U+"LR>::3 M.7\2!OCT&8.!)!F#('-2 V!4IDDX:_=) M/9A[EK?%$AU^ 3T7_749G81 -*1X?J8(L#@319H+@-Y:RNQ M;R@"0Q-['J)?:7MKN::X92TIN;F<3/N3%;9;:X"L>UJC)@(2/JPD8,/-%DW^ M>*TT69T(*NHGE01IK]SC7YR*5,3O*@E7$P:WWC?5A&GCP<#^=]33P3N.7@%/ M'GRRT7P"1O8KL$[,MNK]:>VP#5^BL4('(+/K(:OB[N;XIS5QXFBX/8%3B]!; MKR%8FP%>T+E+>VLZ4W,7V]21YZX7 &YD05'UDZV!- 9O?0B0/>BA#LO8@60T MVIJ@?=,U+=MTXXX]F4OL@===#7(TK,!X1[8(0. ',\3'^9NYK6L<>5M70/3] M;@WNF4R*5+ZD&"/M8H$+GV51/_*0Q0@>_( M=]F$FZBOR5SES\"?H8W,V@_7 G#LN7U\%=#! 1O)32YW'$,M M1/"-T"\3B?#W^/K$]P9(!CKP'@#DFUG[G]H!_M;5U=77*^.#D3:4_:OI6D;< MJE'M:9%(5B2MXRUS?7'P^S$>S.L1-^>C]J*V?+#\N/9>?[: C1^TN?[S$_[K MA_BOD9+1/W_O>Z\ ]I[]Z( O;0TYG<#Y^T]'O_NYZ;ZDJ"U0JT==.?[U[W>W M7[Y^OK^]N?YT??OEYN[^TY=,![/4Z,%\9TVX3-M&?RVP):^&I,3/V^AQAP_+ M%]O9:W\%O4T!H^1+'F>//8A<_;__=/V3$?JH']XVWMX^(=;_"-%D Z"SFX&M M!X\90"G9+0WP=#Y1QDU!&4B8%8!H93:*42%V-NII!!VN9'L0C?M(NR=3YQ2@ MSR([9J%)AC:&Z?V\)]!M8X?,IT@[&Y*;-&9<6ZA#]' MSQ,=W+6E [R5!M'(C!"+7B_JXR!ZN.M[%EDEU%I=TI"X((G"OK2EL(7Y/K3P M%@^^#1'%:=(M%Z%\EY0D(D*BGONVU-.ST&K2]Y,_T+H37!-54U*V2VKA[7ZB MDJ\MJZ2/_CJ!"^_-92GD4+*#ZF!T/EU17K6LCJ]V_/0M525'Q3NH M%QX)4N6TL-[/]77J^8'I_#][2W4"R@IW4#'L_J=J*:[\&U<+'LT]"$R"(K*_ M[@;TS!ZG8+>P.L=O;CO3%\\EKP:/BW0#=*Y>I\"WL R?XT<+$#&N;YX7>,^\ M!/CC(MT GJO7*? MK,,7T,2G'O/=YMES2E#/_;X;D+.[G.+=PIH[YY05RXOR"8GR64'TN7N>*J&U=70_A%C">%L2$P:!%_I$9Z>\>#>4(BQ! MJIS65M%1["T.;G@%^#0\Z3IE.ZJL>)>4(R!!JIS6UM-X5QGVT6IF[<$==<=\ M7ZI+JF!W/#T(;&T-/=^8CO,0^K8+?++)RI7JD@;8'4\UT-I">; !<(V,Z#?H MO04OR?T@HB9*2W=)(_P"I)II8:V<=/7]<.88'P63U5(HVBF=\/4^54@+Z^ED M-+\ QV&-D&RA+BF!V>\4_M8.M_%5 WRTY2W_*+PR1O9V*96ZI!YA.5)UM78F MW@?X+0UGZ%K@_;\ >< AZOK)(GL_TY^_/M>BLGJR781%#8:,%Z\."'< M'A"K6F,,59^$9< MJC\JJQP#.#1)4C^/:%JR *O7X$?W]\G4(._ M 47YPJ/Z(FUJBJTEEY)WR?T96 ($RK,#QB H/]+BJ9('[@X!]ZF[?!$65-(E M++48DCZMN4/"$QB1+:(5 YB"$6]K=5GC4PBVIFTE=[GIQJ"TK%80>%6L MRV2(7F+,X4=@0K&@5C3@%(]X;:W+'(C%SCQ@,O8"_,['9/5H^UO/-YUOT NW M#+=!J!&MN"-!=.)5O.[SBH M+4&KL2U>=9']2UH512DA[&0(2JCE4N,QZ?K^";T82S(QR!7TH(6@?%JN1HX? M]4;"#]YQCA,<\I6\&$Y^J M]%!6#\7SBZ;QXH&Z:M!#SQ19M%P@9-Y,Q<VUWC1\6CS"H(JN3U=,^EQ*Z$X(EJBR74BE/@I(RE'0%B5Q#=X:(BJ[EZ>T";'!F [CC M.M,CE-:=*2)BRSH*5IDE?1/"'1HLO0T^FN@% ;2?PP ?3RR\J4GQ3X3;48Y9 M(E1@$JFB_%J>\PC'%_".:@5((]D<"4I.S';29;ID'NWZU73"XX>72,64HX:@ M+LN]&*:$6EJ,GF79L1Q3T[:&;I+.GG3R5UY:/T*("*K67IF\,^%P$T9)L*-= M ?SR(@0OP/7M5Q ?AXX\'^\D358+\YU\4BS22A[>KW?W]]==YY$$ +3)_@!03V\N#[,A\5_,S_J*#QE]PG_N.G MLWYD\/?6O%K'\=ZPVI\\^.B%S\$J=(H/(S&B'T7:4,Z:\*JGQ)6M+;>>"^BL M+X8$08!BL=#?'1"!ZEJ]#P55*WF=2)BDY!HN9@_VC%'4]$$ M1OA;T6[7%,#HS7Z^\P92[1R<]U?(__C:58;5D5C+U?H1('&&AUX8O*!^_?O@ M&]&)"0$Z2PUM-=YJP1-4R MI"9S(B?HKG#4U(@Q5:75,L*FD(2*Z:)0:NA)$A'71-M@!PZWA%!:9U*PW9': M^[]J$X+MBG!GN=.,&IPNR'4Q0Y!4@IST@&#_0W^RVM^VC8.<2\_P.8\-;NBY MB.8+],?WP7@Q-R9/QF0ZF/460U3 Z(T?#53T^W0V^&4PG@]_'1C#,?KWP/C+ M:#*?JWZB$..T%YMQB$ LW5*LPBMP0_"$1A<.<,<]^POW;A/AM M*_0_BQP/4Z$EY:(H%1:[L]_@VC^F$)O18QZRI3HLK)98LC:/%:.6+[+ MFA<32LN]\3EP'/R",7 1% X^I;0VMFMC& +D22; D,(JN"KGP;R^N[^[;9.DE74HL%M>,&IXA:>@PS$,4_X+PKNP4T M71_!AL1*D<0>=^;'/O:ZLU6(I*G5JH8,DX^'EO$!!:!Y71OM*,,GH2S_1DT_ MM[@G1J+!H:1R1*CBVS+$T3(,?^RY7E[^A/F,50ZS7I<944TX+0_RAR[J#_+4 MZ,N;HU+*Z;Z:0HO$X)&S[L+E:TP#%ZRQ)Z(,$:+[CT0<23,%M9*V-*D@MI;+ M'%&ZG!]3*I%$K_W5@]>5'C39;HC@.!S:/H"5!T'F$>_!.\(8@6&[)MP-T7P> M/76'CZB\:+\I-=/4X\E&OJ@<406\GE/#HF7"H#TXR3A^ "X@GPL12G>?17PB MU0U44]15&H. N8;.E>FROMF"G.;V\8EUG+[ED$;I,I;+I.)YP&[N[C]?=4;S M0C*=*,2L918\F+Z]Y*1 5%8Y_0LIE*'.DU&(>;9P GJT)L+F,.$6U&.1X)S"U29$U-C%XVAA<: MVEPDU(9R/))"CNJ<.[,YC0!+8L5YKUX(MG+FG!."1\2U_%EG/0Q388WQ%&SRY2H*EY*%,T"E"B/K_9-_^7)\=Y^ =8: M?#-M%_\PWJF>@:5C^KZ]LI>QFE=(+/+U'LE?48Y^53E%..!L&"DMG2EAX)JF M\(6\DC&JZXTI>J8A#%H$4@$YEW*[4N8G\JJY;?])^Q;I*PJ3EE$&)-2>T+1D MKY,TS,MLF#A&"/_+B?&R_A7Z4:*L5&U3_$8A^@5_YI^3]N$,1\#I<-3R@AM/ MA@-YI.=L]0QI7 <9+6/4*9"+;PYH3"A1J4^32%SI5U^JO!Q_0W\YOO(3,!U[ M9%[*DS"_M[7Q*&D'H_'-)!4M%D67C6T5,6S899>H*5I>""E(1;W.X4366L>K MJ\87R6(?S"OMDR:T;0B7T]QS;\TW3 V W)! M.PM/C@EJXE/G0\Z3H:>EJ\^3C8M 6YZJRM'P9&PI$K4R7GK:UXS4^\?.DS?A M$"B/MA^G*2393,[J%P)*PDPMZ[?$2T#$K)NKN]NKB%?X)T<2#MU7!+,'CY_. MHQ6]\*4"/EJ^C_>8=%WL]:#2,@8CO30+H@-+! '-ZRHO?.%5)82T M3-D7(>HC04J2/I,W-8A5+M2J@9.6SP.20^[RQ[GD TF!%B[TDP=;W<>7% U3 M1\!#@.S](XC_S$#=-[=V8#KL.!7.!BYLE(::E@D+BYBDTP/2#;!?\1$L-PF+ M5?- ?E8BFT@=#O"0BA,%35]@+>*1+L5MXHOMU#KG2"&6^)I>WRH",85@:]I6 MNO).GR]UK2C0!*=T(RX1JC5VCFRKC$O=;;0\#1<=F1BGY@X;]12?O3I&MOEL M.Y%C(CQC)IJO1 BH/H6^[. ]T?'D5ZR+Y#>G]4Y$FSIANHJAHNH3E M![SV7'D^9*N)R3DY9_L@J;K.&:4AY8@GR3D3%5G+*"($RA( *\JN,L(6'6&* M)"'&#Q'+YR&[N[N_^ZRD>1+5>NDANP $6@;'SL V<0@F*Q[6$,N?#VO$(-#4 M7>>B"BYTG2XB2R]V';RS8.2O+T/5#B+!!RU2PLNBOIS MHB86=3?#%34AL=!@A$\,IM!&\F]-)UV>DL*Y:'7T)U)U&.K&GZI\XI<*/@-. MU#EO8;[_9@Y\Z"<5H;J!JXI:M^S:8NC[(1ZOR%'T-AO/ MG0?>\@^.95EIO3.B624H9.7];/3ZV#3C&R9W4Q(!HSMR9;X4HXK^M*B,@J9Y M0#-0V!ABUR)>NBB6U)\NHL+7S2.JLH?$#V[MO>8\ME\0MC>:$JLF)M)2EBIU MNC%8K< RF*P&[\L7TUV#&1H,$Q?CA/\?'V6_FD[L.R*P[24:*M&)HVOE?Y I M.7273HC]RD?;WWJ^Z7R#7KA-KY%':<2!=7B-E<#@]CNFW,@0/7U1%$(M8P5K MH3H%J/]6,2HSP3JKOUBGA#%SVDYT?GPH )>>#[37P;4):I\W4VG$JWO]>!N- M B0.#"[T$U# ]7GS[UK:MD],P(&KSC)_'FZW3@2NZ:3@#MV5!S>QAAD/JO+5 M[KQ%JR.GKO>#X[=N@#\U;0LM5LEWFXX*JD>&&LHM4H538"W#?88NZ@\RK"Q* MY$KEX;F_N_]RKQ9UC[+E+A-XA&M>U]IM70V1]F0&HO/75(Y!HW&DM M2>ON+"M)GN2F:'3GV+*#$"D1&5;\7HSU$ 9C+_@GB$84T0'FJZX<=>I1H:HUM(H1%$$N![J'UX !+M'L+*7A^!41EJ%3R)I%>:_]&:#7R:CQ\%L M;@S^\6.X^*?QE\?!T[ _7*B>+"MCSZ*#\1QF_"D7:'7;6?ND?5M0GK/)%U+. M8 CI)K>D8D@ M+K&D16NKU%@NPTT819F2,I31:<);7T_*U))>TBW)-NDS X%IN\ :F-#%:P\J M5\H+YZ'YJM"=V1K$$!!54G1%FRPX NK1VR#A26%"966UY "_I)*""I1898P0 M[:-M&M;28E]07>576D_0Y=+ 92B&T!27W3//<9X\^&9"TOZD8"OJDH2N[]+3 ML=J"RUV3M+_7742 :#V."RI'#!GZ+3,O7()+(H:244*'U7JT;>U/PL /3-+"# $5O?BKPZJGS>Q.(!0]**^A7 9T\A M;K'NH1(N8&K+$+J\FCY\D,L31#BTB,;(\_'S$#. "65;@5&M)QM.X+^5/X_R#9(=_XJMG0EK9:*CY6T JJ\B MC8W,YG* ?[U"@+=\RMJ"9R@*CY;1P^(#5II=/&\.B@(C[96*+M"/-D#E6<+S M)J P,BD#];J(18K'(2?>[;E6]"\GIL;>3X^R-BS,]ZD'HU\$ ;2?PP"?#2^\ M::1\ G=/VHX1B6J;2R1D\:G (S(MKPB_5S!XQP]FQ&8EBFLY M5G-OA0Q!9I6+X4<@5QDG$K]\YJ.C:233,:'A"9&$L 1]^<8I>$J/NB<]ZCT> MT614@KZT$88@)5#= QT. C5U&1,_N.9X?@C!'/DI]LI>XNQS<1I7[+Q[CKW, MO ])O7EY?87^S_A@'-K$US"'W\;#IV&_-UX8O7Y_\F.\&(Z_&=/):-@?#N:* MW[ L(L&X5DFKT,YL05/K FGRP2&_2LU7.3\VKM'8^-*N>6!K+3=;5!>RVQ>Q M#^,TROSGV[F'-!E#_:8XU'O]?_P8SH>+X62L^KA^2+(?(I/_;+OQ*Y.,D4VO MTLK8+NG202&LLB(]SB;0]]R()SAI11^M(M$2%#)&/7?MEBZZ47O',@&\ MU94S H(ZS=^!JR&S+A8!/V/C(E+R>_:?BJ9@.$:F8#&9J>_%I^+N,AX/?=A3 M:[1TOZG0(];PIE51;DASZ"A_7TE0-EV&[C?/L]YLQ^FY\>7N(6K57=O/#NCY M/@AXQ_/GXGC^-ID\_C8^-&8+'X9S- 07_3&WX8/HX'1F\\'"]4'>@:< M8URXA[Y@&ZT8 ZX^LLR#6"/Y0773?DA9)5UG38@$^74Q*ME4K@S#<5.R7TT][5T\I\.QO,>WJ\WIJ.> M\@=T^2MFT5MV4:97]B3/J"8ECV]!,Z01RBB=)_!M^[MPO+#O$_,*RJ;+Q!IO M$R#W8F2;S[83I?O\!3@6SH%N'IZLI@_4ZZN2,_1HFRURT$?#WL-P-%P@]]SX M93!Z-)XF,V/>&PT4'[KE.1SCY(Z'9(^LD2S<2DM7W[.=R::U+.F\P#*^9K/* MV96*G,C?JF\ $UWL46*KIR8,LI<,.#V&ZY*XO=E@%&5+F/9FBW\:BQER&7K] M+H3VD*!@'O2SJK5TPE_>+7Y;(M""3ICN47?XQS='3>7&-4M7 MN?#],:-KEU&GXTJN(IU: M3[82=#W8 +A& GV#WEOP@C?.39MWGB'U)-7RJ5%* M #,?>_@;Z#Q]:HJJY>N@C*MP?!P2:Z3S/)(@KJ8O>YK8:[>FT+-"A(D)H>D& MB6TF[5S3ZG2>*>+2Z?GH9IIL<@I@]*H.GUEAU.H\.ZK(I^>3F&/PE@$/>B[Z MZS)R[WP13UBTFT7A&6QF,DBT9JX,[ ,(=Y'C,Z-(D4Q3]1E?B,_[#ZW_W8>7:DE M?DSC:&AY+'> [<@!3#';"7*1KQF-Z%9#8+6.]*0SZMAYQ -M&073.F$ +$%B M";6F$;_JRWV:(\;3/O\GY"O=%'VE[". 77&,)+\&^/NGUBU$VKVL9A]VF7]% MBF&:!KYFE+,)+.70K$(-D>7F/V_U1V!']3RO%+F CU%B3GO+F: M/&K^;V -+:05>V4#*]F>CLV\E=^F1K]#EEQTBTS*5_+JN;N[_WRK$4V;@TCS MS=PGV[4#,+)?02$R;8^Q?G+PX$O69Z=>6&/D,7-+>A M@J2ZC'A6/@HA,_"Y: 9XLE)TQ3Z& MMO3?X*>G_AT18?".W[OE6P+5:5(G:C:&ARY;*CC)B9"C=%=TE' 6GJXX0A+2 M\2C@VNRUQN_;%*LH-\[)<-.\&$[!-#^-^FX&(8R.-R:KD>>N%P!N*K"$KYDL MP)^N;A# G[O(G!K"JN6',#UC-.1N4\/K?=,",21.S& M*U^'.P?)$S?6_B[59(5%[:TAB.YNTDG K*X##:H)>9HGP%K-_2;D(7XI>HC4 M#'!=<1U/G@JN-4=S!-#*""0Y#=SU""#(]Y?@DEF3[Q)AA9:4,R3".BOZ'+)@ MT&7K/O-"O(AIN2ZY]95])[XKED32@_$*+$2/NS9T5Q[<1 QYV"6_Y%]]"+6F MG)V@J8FV#*DOM39F@?:41L^R[%BN#$"/(#!MA\]\?+HJ23;#>F#C@W'XKI'Y ML/&7Y-.JVQJ93V_66D*.:R K>+RR\[$Z^7D@HJIYRJRGG M>.M+0%H-1O_D%<">XWC18GZR)5XT99;7CP[51-;@QBDI:=_#+OL;BOO WX!Z MK)'M3]3$0C,Z41V*8D'EZ%%3FW1Z=,N#^"_317WRDP0A0W=)]B (1976+K_' M("*=!AY#B3U,3>6(\2X!3U7E2"%]1JB,@J3C=>3./'OMOE$P@6O330(,JXUS:@XBIS%8)G.'/TD?E"9L5DGI6WE6%B9-"7^;&, J1501IBWQB&VSCC4 MR0U72)(PRFOFF$BXLKF+4EPYDC2GV:,I3Q243A#CD-&08&$(I92C@01;(2*J M6H%_LG9%L>SX8 [U:O!GB/HR]@)P0 0-+S2/XL?%9EBUUX3)2+099;@D0H"2 M?5(98JME-&3R:NC[(; >8ZL)4)^LZ,UC?PS>HE\1CV6X*BO#H09\EQH(J!6< M*HM.D> Q(%-H+T'Z?C:)0:3R><@^MQ^_+I,T0D)W(GWM%'I+ "P?/XV!!4-0 M@2%^_\5TIN&S8R_3TXLQ*/5B1.KK2 TY(&B9\79J[J+U0')VD@+3]_S" HFG MBH[LJ2SW:=+FMAV51DE(TPL.]PB.^&9ND,5]\_P7,,T8-I'XQEW\BQCW-K*H"":X@@5&'LN+&8\(FU'RVI?.1M' M5V;)EG2C2.APZ)$"]+#+I+Q^@N#/$+A+VEDX1TWEZ-,L'2CT$\1()V*5"4X] M+>>HJ2ZQ!!5-H8R@])I2QM^/16KT%D]5=4DCJ&H^TG")KQ-K^ MEKI<:77FHN.C04C7%%_+0DH]K.;V?SDLR:B62* %=4DFH/22S8.:"&A@D_HF MA+MH)P;?\P-6;X-7+:)4$FQ%.3K5)4*16C(0T8!>Z=L5F63)HMP2:>(,B%4; M#@WFOHSUW__U%QM I)>7W0B\ H?/GZ)4SD.''QW]I,B,=WJW2A0F2<>\2C L MNTPIXB"\.T!L0UV^B>N?<]4G!(4&<^%>WJ&[#0,_PO"&;Z^@6$-=OE16,84V MG/)K0))' .U7I+=7)+,?P#!Z@\/V:3?%:574I7F "(4HP90C M5C4E"Y#E?$B2&9'B)HFOLG+T:<,NU8!*RQMS=#PJ\4TYGM70N2B!6C18+<>/ M1^^J(&G\R2H>SA.8@4HT3+SX.C(S3'S? <-;&68<,^[!7,CX.8:!?Y5T=XEJ MK/?8/X#@#0"W;&"XQ[82QQ-\[2+-VUY.]\ M]UZC$3)TYX&)7XS$J1T'B*@Y?+O")/(;&"9RJ,P2PLK1YHF25 2F,D/BB0&;>-'# (3 M!@4>W"N+Y0J1T522$H\Q0UJACENV$.$ADCH\;HHV7P?O2"1$[\,,S^-G@ M,'V6<6!"%Y,WY19? A\9'\D/_OOVM]KI:BW:M!/ H4$$3DUL'G;E#5 "1!O\ MHG*<#,@T8-@,H+G*7B*?+7H9 MC!KM6EJV(UQB:+)("'YA-6!!S?$W8H2ZRFI>.:YU<1ZEHZG!O==C@6*%*R!DI9G6;G]EMZK:3M1KA4/IY_WW.PCXSB";\G@ M8,76E"-E#984*2<3E L'[:4<[BG'.9DTJ4W")LF73X[4/OV.=J73Q"O%W6FZ M[1-M1CD"2C5Z4M#0\CB7%QF:K1-J0SFB2>%&=J4 M30FRD%I.5[YCE,Z551J6TKQ[@3GUPU!^)I^-SV M_5(+R85BORZCE8IHA/%=A=NE<0>,0P^,7!?.,GSX^JJU,ZR_X!7LT,V6L)$'NG6HX<*UVE3/O-&U5G;$)%M\'>*3]ILO_I,'*1#1XGM% MVE".1_)I43(WUD9( ZKAES$GJVB:07VGQD.6%56../656B0*M^ :\.$ 5WKA MS?^QM

6?H>W;N"%_'FXV M)MS-3"2UV D.6M4?G^#T^O_X,9P/%\/)&!_7)&VCOT7-=^9TYB'T$2F'+(32RO%!BG:+I!$17U-NX+]"0'^?A%E/.;Z(*):/%FQYVR0(P9>- M)G'D204O.%#^%5D:F;!Z"WGH-P1K]L\QD5&A&.:H(Z_3(@LC"0*TMDN96 M9P1P^-=JA ;RH%XC4.\[2RQ)TFL9N%T"ZQ3 )5;N&MG[7SV\-90FP?43CX 4 M[5^M,9VI)@$)+6\5]4W_I>=:^(\!DOW5=/#VYS1Z@_KX^6S&_E.5IG2DG#0< M)#THKA;ATL0/"R\9;"GBP/\&/9\T8;*J*4E%BJ-S<: M."Q5@"\BBJU]6*H 05HZ+%54TVQ=U3DL54#=73@L58 ;IYLUZ!BT?E@JB2_? M/,]ZLQTG74D<(E8S5WP)Q.&JFT?O!J'W13GK0E=UD2W5!:]K813=PAA:"PU[9>#A&@?G[$YD41[1.3F.H\5,6OA]N ,XV*;[)YM!]1>4]N#O!H-E_ZS)*&A\E=*RUC"QJS,A,(=B:MC5X MWP(7+:A<:X(W;N+?G7JNH?7E,JQ.._D(ZT++^*K&X(W0//7XBCYZ&4BG'4AD MT),1\_DR8@@X3J&W!3#831W\>K%KX:B:+5YWGF#@$+]]&3^-CQ\Q[)-A='<9 M1D1W.3#=M;TO'%FDQ8OIIA0XR?*(T8?+L#K!LJF*#I+A]46KX<5@_H645%+R M\.5>*[[('(8G6UM?%LXG,JSL5?'79N.N.SP:DK52]A?QH;X_-7>4L-R3]N$R MADZU9A;407J,>'69;0BX/B8P+,SWS"]/,*C*/YS7XJTZ+SOH,Y($@$^'CR+' M\/SOD%2?JI=+& *+/!1.\,7+&,B-@;803\E_.3\G 3GVW&5A6AYY[GH!X.81 M/)]B'Y;9A\MH:GQ&J::#='Q=#N))N)[6(;O,0*<<,[RS3^WS-E@L-'C/@K9__^P&U+MO#)=NT MC.S7XLG;?N;PIR8,#E?J,OVG/4D@H>4NV+B<"HOVJ"D4]+R,6O?A @4HTI3" MR5,=#R*:TJ6!MPP4H)"(8OEHP9;W#-\R^*2FIMFZ.MJ5K"*T!O: 8F@?=M_- M?WFP[Y@^+3N[0 O*,>=TTTQ=E#3('TF!X # V-S0)R+!5KI$.2XB"%&+&Q$- M+%D_] -O V#T"CI>4KS86Y^:Y)U2HTNTX59RD3JB"&A DP58OKB>XZUW#Z9? M B:-,%QUSX0ZU;'08"I;0-,"&Q/^P>#+4;%SH0:/V)*N[K;)@OT[T&041XQW MP42:Z!)[)'O/M6%J/:^U5!_:H4%^376G(HDZ3YT! Z?AH_3A,9E,O]PA\SXF^CGZ&YP8#G_IG;U;YP#=9L'[#0ONK22IKV_,YT0N=*"40"? MN!.U)Q\XV]/_S^>2!%9@TVI!@[Q/R-P;MOE@Q3M5CRQ3\37 ME!L-G-@KP!<1Q=8^L5> ((03^V0:S\A!/JHGE>V$;MG:.3JC%Y)6SZ'/VE"D M55&.%*>;(.@8M)YH0/&L[ I015BG1Z9#%@9:;@+R@\._+",TH!.Q)$E_-MMW MK69EUXMJ$I#0\NUDI;*RZT$Y:3AH^6KP2;*R*T D:2PH$JP2%EKZ80UF9=>; M0J(P7+*RRT^8I#?#:N-2U]W:4RY0Y5B3+R=[Q5//SU*SLI_[R>C=.9^,WBE^ M,GHG_V3T[G(R2CY!4H /4K1;\614;VXT<#*J %]$%%O[9%0!@ISL9%11W;*U M4^ED5 '-=N%D5 %2G&Z"H&/0^LFHVH^5J90\6P'6"M.+ZRRM<DD@RMXUTYF9%W70S>?9E++0-O=8!%IHDS[Z,DI-CK64 2&-&IIO)LR_# M2CE=:!D&TQB\JB3/O@RD]D"_),_N?O+LR_AI'?M+\FS]DF=?AI4R.K@DSTX! M^7(A)0<\E^39*B?/OG#XM$#+2IZM[6CH8/+LRQA21@>7Y-F=3IY]&4GM G]) MGMU^\NRS'P-M(7Y)GJUA\NRS'TWJZ."2/+LCR;,O8Z8%M*4ES]9A=*B(G\KD("[7._*OY%O>R ^_E#D13:]TI:NIP* MBU:I*13TO$Q8]XZY A1I2N'D"8\'$4WITL"U*ZI:M MG:/=2"%I-1CZ+6;+5H RIYM1ZJ*D08I1!;)EJTTY+B((48L;$0TL68/9LM6F M#;>2B]0114 #FIPX6[:VU*F.A093F91LV?I2@T?L2[9LT2:ZQ![)WG-MF"[9 MLBMDB5: 8K453W*7*^"@Y<,U' "WERU;3P)*QT?KUV R.W%=RI:M)W6;!TR7 M;-DS\ K<$"1A$KB],0CFI@/\AUW_Q71=@,,BO@%O#./&L\[8QE_-GI+?IU^N#-1 0F@.!=&WW.C M8^'?[. EW<%@! APUO[]IB5KAW1I)EGZ$%4FJZ2_M" 6I7\T/J*AM;G=FV1 M /Y%JR,LJ0;;5&4H1>8C-1[D QF>JLH11%C')9N95>4^ [I0CU3X*BM'F24M)[AVUZV(0%"NN CU5- M.5)(6(A5DEF7O"R,G8[!^]()\:XAWH!%_\,;H]7VK,I:Z@J;Z%0H,DH6%*7TDX;I.$;VH\F6\V5G.;NS M>:O6O"5E9QFY0JU;& '\:^PLIY*JMU7HPR!#!O2O8R*@'_T^QQL<^!G=],#) MQAL=Q2UD:EGE5"^LO0,!Q 7MJN;!^EC$TKU@:EEE-"^NMB.5"TFHC,I]L/RX M]EY_CE[%@[M8Z\D_(J7'R]'X![__F!\O1/>_4$N10LK(K#CIXBBCM>IS]MAS M?] CBS,EM- IKUP:Q(Z?8B.AX[-S+9DO&PFR-Q(49A.="O(W$B1/,@IN)*2P M9%[L$=T_N.7;/TB_9&0^==DTR"U:/RD43I)J:9>\URP03')<53GK(J /ON 1 M+HFUO%! 12-O;OY-S-,LUL@9T8E/]M-<"&AC=NI9EAT+,W17'MQ$'Q&=GS[Q MS4^';QGVX6.7&2I'X<_M>L7B#]3 ",5N4LP>7;LV$W<7SZP-ZC(9#5' M/_57J-LV_7TU.8WGA^8U&IIWW3!+-,^Y"4PTV+&IC:%U-/]3=[7D?>!"YP9QU&Q/C0Y3':KJQT(Z,2HRL4E[J=9R MF L.],,EYL6ZED-Z:.7"0AF :7FMOK8F4 7;(SXR(JOY"X,;15*76_9#%X&$ MAHKP(<6GX@WZX?C7P7@QF0T'\\[L\:3R[S))!^C[.I0:K5U^W_<)OU3AO\2) M(_R>:_WFP3^&[A1Z2^#[8Q#@8S\?P%=BTIP*+2EG:1@:*EH*64)KZ7_MP:G. MI;/@3C6NZ.4;[<&8F6_?3=0WVW3P.)J'VZV#IA@AUO"TH1%_*HM[&E>D+2:1 M,UAEBVC$ Y(TDFYN!EY@.FUZG)F<5M&EQ^,7M>;A9F/"W62%[U"N@3_]\;?APVA@].;SP0*G@$IZ8'BK MZ,4GU ?#=HUUTHO.N+89H(\QYG9VA=IHS?V=+Y'/%CI@LDK[2SN;))3.#[H; M-.B^M&M"A+$O&A41434X;)&?M$D%'H@HL4@!$2DUI8#\1$PJT$)$L7RT8,NK MX+,],],RX0B8V)5XM%^1+)X[_P@_4EX&853IA*;9NCKHO++0"JI;>MXM;10L M)*T&MX#VMQA3])*;4[1,6]0ZRM&BWL0O+JL.I(AEI$[UN3+J*5U8;26J9TJH MH&6?0@^_;DUYK2U?0CW-,5$_LM@<\BBHI]SC* "^VDO:"WODTMW7GZ!L&IC7 M=!X:,8(2"^744W:MN95//EU2YJ32SCS'>?+@FPE)MXY*2N:1N6W_:A&?[L@Z M9\FFY2%P*CQ#[\HJFZ4TLKJ;U/$V"C"*XN"5TW2:E:2WC%X+P3>ZK7^%?A#Y MH@P:4.MJR!%Q>;4\_=\?6"1IPHR M!*$'[+4;7^U>[A;0=/TX?^XWY'N//)]E8=@-:,B>BD++"AQ0TM:(.R377:=! MN4R2'HB.79*!:ZD<(C+<;$T;XMGUL'P3#0XI/-'*&1QR^#:.#TF_?@D*(08F MW+5L(;Y!]G02EHI"TV4T&+'+5'NN_!=[ M2W^JFU(C#]+GN_N[*V5IPZWD(G5$$=" )@NP?'$]QUOO'I!S6@231ABNNF=" MG>I8:!"OLH"F!3!D#+X<%3L7:O"(W68"4$DL&'LN6N!O00!Z:PBBX$IF;@A" MA3-AAB ;285E7;?F'LY05E;";:B#)M.M[Z2@9 &$Q,#!H%U5H66E*&=3%(( M4XT;&1V<:6E^4,NGY[)T6LD9NE8R'K^RV1X1@K@EM:J,E6E^OLJ:,([.!Z%]118X6A[^4_"@Q8*PJBG#+@EZ%R(16?ISHT\F$J*W M\6!@_YOVW+5X0V=+,1$\M R=IP-=:58\6S*19-?RG3PR#C]\L J=D;TBO8/% M4S4/Y)W2Q[(R2<1 0,N0>H:+NL_LR0B]%VU&&8J=UFN7 I.63N>*_'T@;QM9?;-+E"*T=\$T>B5E#%) ME351M#<5)-9R.Z'O^A5[^29F#DR4QQ;"'R5=:1/#'@SETNK0@,D;9R!%/(]!0&N(=% M#E8_RF$VV7%#5WJK6SH>6LZBM+WC(CYQRB\$PV3UA-1@.O\$)BGF04++RM%2 M.J?$-O/KP'9A+QBC*7GQ!IQ7\-US@Y<*YY4;!_X+ O[]P5APQ+3?@Q'#" M0WGQYDEA:=+6A9QU@#JSS" MRUI(27HZ2Q(MV6&^1_*F*8RS8O=6J#<$KM5M[IS8U@A6"=_NU.!;5R*8]"9: M#402.GWI>F+(1_ <')YE[WN;K>GNYOBG8AO7=\7$CX^#AP5^,BEI/CUNFYE,I+*Z-Y<15RJ)\BHX+W M X!OH7FH3)27L85=37+D5#1_:\BJ@**CE^$SR88O<3 MQ]M@,$:>24N.2*VADXHK2*K!"P,CSUT'?)-W65%E"%!S[N:634.54V?N\L)Y M:.[;/\KFUA];]10)%;3H; M.LV,*:HX"_Y'!YA!,085%,7I8Z'26(FN.4%0C M%8I(V*;EY=K9&"57+=B;&VE)9319]4T(=SBCVP:G=J-LM)*J:$0+83&U#(_* MH_##->-#'V#A#60,1;*5T'.MJ*COAWB# =]HH!R%U6Q56Y;)0:+N!/4U)J(+ MUOB-"F6HF/6P\)N=\4X'9<57+*P1<00$E!6)I,29:9J)IK=>PXB@4VB[2WMK M.E-S%V=)RT(C>II:R)26GJ8>$M"8Z9#/0*(5?[+:DT3DMD3=9O.#\>O=_9>6LW*2U4:W+]*$U]*% M%D!JZ'+>=ZC5YKGPCE-R27ZY:NF%A8"BWUNHTM3YD(PFL);7#\31H=P^J-;8 MF;&+*+*6EPB$\:'<(:C4UGFQBRAQ)ZX""(C+O =0M:U.\D6^Q&J%\E?FRP+O M8QSO&I2^"U^U+9WY(B"Q3K'Z8_#61QVV@WV.(-&=I4+JXV1GR4!-&W';QK[Q ML]HVNFO+#[%=?/#\9ZWB10K7RRH' /J6GE.$36("L]+2K7P9465 MTSRGYE@J5]2R2U+Z#+QZSBM:O>6%IF;_H];) W5]=_^IY=AD;FT6B2 NJ()S M?:W[ 1U5(*]8&ECM$0@"'#T0HT0=MV5%=="VL'QMIBHG723 L=/85\&,+4^^ M2BRG@P[%A-,@C_BO)K2Q&SHS ]J5R^-BRNFZKG_-)6"; [8!?5-]ZV)!Y73. MI3.ZJBF2:>!5/YA^)"5U.LX74EK)%&T5U;,65W: M!L)/E>%&,BCV+PKTS2WZ3; 3H JIB4XPAZYY/O8( :#ES;+\R7^T^ !^$*U= M0H@0F0+418O *;[*6K*IANAG\(B#W$<^].0,A\"G2A7=REF::S14+>$EW?F2-LL10@^01[?$JEG'R30V=H!E?2K<2J87UDK] M%425=6&KT0M^>3H_V>_ ZK^8< WZ'F(9DG2&-82O5/OX4E<9 02;T(\6,@!( MR'+?(;)$=Q?'(!B!C)1L@I16RV-RV_ZC\9))P2]T0H2O'2+"T%VB"= '0[=4 MS,<0++SOYK\\V%O^&=J^C24JO2$LH5G=B20/E'2/[ZI9IIWF0G'?=$W+-MVC M.$/!2\6?")>*T];3B\5I^V=UK_B+0HMA"?>*%3 -9*#YEK)DJ=0[Y&WO7K$" MBA93'FO-2111.ZU+NE>L ,X-\:E4_,E-Q2E/**:Y6AG".W3EA0 M#4:WM%O$"NB^KDWG%%&#:!^IMX@5T#RGYE@J5]2.=^,6L7(TX#+\U075@!%2 MKZ5^NKN_ZZ[^N>73P/I+N=6H@+KKSO=< EYN-2JE51^I57'UN.KBJP^JW&;BF0*8=Z,Z!JMQH[/'-6E_9RJU'"I3Y% MF4/7/!][A #0\E9C%A4.YN2!^7QW__637LPH%5#3I'6MW./0A#.UA-?UMF() MKC]<)**5VM7E*?YI+BB5*2[].X9U\:F+^96U\TG/LS*?MX\@F<7]Q./F) G(+W_08WI)E=13O'\RBSS0@4%U8H/?32GX4&R0-]DQ'F3JRC'!V&=TFC!*:\& MM#B>[JDGR^6%\]#<(2=+&2IPZK%(!0%)-2#!L2UE[9\3RRM'A3JSA)B4#3RZ MU?(\,?9B$1AO;)475YX)=&W2)@<.0;7<\SX@$#VVD#613'(4:FC,#SY9-7VD M+P4AW1@54Y)?L>QW;1"7S)>\:>B MO2;#/,L4Y9];,@I[/?L'ZOL/IF.Z2S!_ 2 8X8\C58">(0-%DR8:+B*2Z$(&7 M 6>@>EZ==SEBJ)Q77CP%"DFIP8S?C>>W=,=:^.[5. M'J@O[5.B=2]3'"[]-O%CF\KD4UQ,.0J):Y#& HJ0DKP)U4)+#[)G["J3#)FR MFC."):FF$>P];VF//-_OF_[+D^.]83,+^N$F=")4OJ%9&_^ZMT*&;&&^DWP3 ML5:TI)(,#$ZSN]_*(M?;(!E>@.M'83E+;P,*8*40/8"5!\$,+!W3]^V5G6PD MT"DH^2M:4O04&$D*BU?-3@I#US1]+\25AD[=Z/VO,65=L#8#8"V4,K[9 ^52 MI!;>0V: RM.*3@&[\'US7>T GOQQX!TNBBG<2T9VR TDG(8M1X"<+ALY?=< M"Z_V44G@+I$'/D)#R9E";PE 5%TL$N#+U?5Q)$!_\OW[%@CGX??=#(?+$SX0 4%+FC!(3:^/VFM8>PD+'?]VWW:&[,-?![ M;R8:#U8T2 GBL2LJ9X*$-5*T0!6E5BM>D7"M\4BV<8BWAR>K1W.'[.J3[8 ' M:(/5$1T$:NK$A[IBJQ6=6(40,[!U=I-5)"*659@7QPWD<;I'.%UI3 \NZ4]U M(;]EMP3-\L+.R(VX,X(_<_% B 2^;6L38 N@B7L6:6CPOD5K4>*=V;*R'3<< MMZ5KRXL F9J[J.0,_!G:2,0?R$K L>?V\=FG@X\P M\P!&39I;.S"=Z-_[:&AANW,K:G?BSAN;N/>&@S]O;)/^&S 1P BQ!(;KN1^6 M>QD,+Q4BKN8;IFL9RUB.I*5]J/7%M)&'6&O/ >1(F#D,2_G[&+($%6FBXX:P M?).RKOQJ+;UDK=J![P-0CLWN8!QQ>)"%?+SOE2$D&/-V,7;\!Y!?&&;!U"EC1WH:,@-FKM1)R8C'B(+MZ.TWM7;.5" M/3Y(M(S'$ (&?9FXK2[:SH5UO*"H];9@"[Q[\L):_E^FF0OK.#$YS2.&=3?Z M.26- CX(3*K>4!ZWKW?WG[]JPR7)J)PF2D%1$U;3=.E,,RE8).3Z4I=<'MYE M;7$G.8YB6YCOHJ=*]\40E^&X/_D^,!:]_Q[,.[/!>I!@@61]0)_Z@_6B!;G& M[^W=K8A)AQ097RS!X17Q^'0<[PWODA-O6C!K*F<,&!HH#O6J0FJY^318K< R MV$>P(DRB$,%HPSE$=B*QB)Y+VF[B;Z#[S*DIZVDVC$YRX(A/5:.6IH[I^B// M72\ W"!8T!<0/OBG8C/(U](@R>E@/.\MAI.Q,1WUQE$P OK4!_PM8_\Q W^M M,U-,%KP9<'"(=M_S Y]];$>MUMID]A:3^AU7SF#RD+!H-3L*M ;/>)P";R*RU.?<6^Z7/%WY&C0WV>A1* ,5N(?NNA;K/*C9N6Z5:3_[P(RYU?,[+?NQPHMOFN2L6E87' -G#X1_A(?HQ^1F.T_? M1K2PJ8*.!K:OYOB5>D1$ M:5XYC>3F*.>%1C (,;I1,31^T-&* &]S"),XNZ2E!])"H_PWA$0#Z MYKE84^=*.^F8=>N ABAP).*C&8#]4]SXJ2;/G0?>\H]JO*,V>>&?9.RZ=73# M.?"PC5_BQ_X]?'8EP_SE6[RP4"YT:CVH(8F$/]Q7)*^#KZSN6B:_[H MLJW7M@\[5N4C(;O'^K K#+S(1/,=2==L/S\6[]J/P.%1*>TTN@D\--AZCAP M8DVF_2#Q^@#1@SF"S M=;P= )&HDT@ *GN(Y2\,J@K2.J7TU)]7;R T0TR)(T &PEJ^6EL9T5+< MOD'/ESX!D+]T&0A-@]EHK%EK]R*K@A?])W>G_5HVV4L^D5?,E_;/S=5G.2^* MC8:P=8[>@I/D;\!>OZ"U=0]Y?N8:% ,(6W:3F/V[#"PU52 IIH^47!N.D H[/;ZJIACIC>? M#Q9SHS=^-$;#WL-P-%P,!W/CE\'HT7B:S(QY;S3H3,0MEBS.102L0RHB!![Z MQ=;S3><;],(M*P!7L)76$L_$.9CFB&7QH#,=G+EK_@) @#K;LRP[YOQ!W_[# M+B\#:B)^[:U<9EJT[HF^KISQJ\".HF%K$SP-SLR;AX\2C7::CRO'^S8IV\8 M(BI!@_$C! 0S@*YB:V?(<"*GB@27":J"D=^/YBN"&.Y^_/%D+J,4P^2H;U)9 MY0@D4V='H>%"&.AFH?J.Z?OVRE[&RJ2\$4FOE0?KOOUS9[7FU"KH:1 Z1Q&; M?]HKJZ<.MV%J72$6A X-6-?'0 M@&S-3PVLR-\3]D Y4JLU,;>MB0;";=HYJXGVTB>K'#1T9/HAQ%PAG=]4;O , M&4_G6,GACUQPM0P#SAP*2:1US58OW&9RNPF$3_.^9/,GGLD#*5,3!KL%-%W? M7$88BQUU7A>/.F>#46\Q>#2FO=GBG\9BUAO/>WW\W-"\,P><)&P8)YJL:@JD MNB%U\6&7^PW7\T$";2EGJWA451+>(TUV#99.?!!0MA'Y&U"./O*(4"1935@T M8Q9U;[!84#FFU-0FG1Z*;@02#J/^RT0N!/1Q:)GI[I '1CZ+(A156KM2BK>V#YIZ37&/L/N==)$TP,D5E!O>-+"+HUA0 ML-,XBR<=P=&YY]!=>7 3-3R!R?&/NT[GP8==6EYPM-]01_L'P\3?-NS#QQ' MAI=^W@#)]XWGG>''/3@[$Z% ]H6CKF6XLB<&9YX%WI:Z8U18F11J2:S!GM?A M%#STD8/E^ZEYI9R'4.NH1PU)RBZAD3 ..A FF6FH3VAGRZA'"&&UE:B>*:&" MYQI3Z%GA,BB/0RXID9/K\Y4"FF.B?K3+Q"&/@GK*[I7. 7RUEX"B,W+I[NM/ M4#;U;I_X,,B85O2O8[.*?O1[WW-]S[&M2!71%D?)Y$LNJ)Z:I<^X@L)KPX/2 M69965!DN"&J,I6J*=!KX5/L%?>J)4&\*$4HKKGJ*!HONE8B(&NC_.W)(H6TZ M,[#T7'R=%UE*C!F5!O1*.K&A@J3JS0"U-Z@R<^>(E:2!HZHR!#G!.KTJ'+I< M=)J!5^"&X GAC89BM#&&LR+W0S_P-@ .WI,[!GBK&?W/6ICOQ%@GX9;4(UI5 M.I1%.\F!0ZT8%XE!#9/5-\^S\)E]NGR;>P>]E(0TE%?0F4."4FL9_Q)E+IA" M;V63SE\R)70F TM,63.2%YA.J^>;X;,/_@QQX!=^R$;H,M?7KY^N;TL"%7X\ MS ?_^(%/+P>_HO]VYQ;7,1BLHTA"\=\_MQ60!+TE ):/IT%,>'^RZB,F$L\M>(\E];'MD4J$LBCH3D:F#.IXS>O_T<:R+A^7_^?U!+ P04 " W MA M5S&9=W\1% @#E[QP %0 &-DR]:7/J MR/(G_'XBGN^@.7?F?[LC#CY:6-W=9X)%[#O(@-\H"JF0A%:TL/C3/U62P&!C MC&VPA9N^<;L-E$I5F;_,RLS*ROK[_RUUC9A#VU%,XY__4C?D?PEH"*:H&-(_ M_^7ZQ5CZO__O]_\BT#_^OPCB[_\=BQ'*,->M$Z(I>#HT7$*P(7"A2"P45[XE M^J9E 8-H0-M6-(W(V8HHP?"1S$WR)DTE4S"@7DSC-FQ- MW5!/F^3#5^%&Z5\4]8LF:9J(W]+IVWB&:#>>M@\ZJBMC&]BK]41O4<_D9AR) M9R\)'NI!>ZX(D*B:8Z)2N"62$,130*1B(HPG8_$4DXJE:3B)"0 *%(A#2(GT M5D_H/W_++J(NHK#AW'I.3 + ^N>'[+K6[:]?$^",;TQ;^A7^@"="Q4@JQE _ MPD+Q'R-:,.=QP2 OHG)IH9!X]P( MINXSA4PRY.9-:"BBNSNR\%6)7\&/ZZ;*THVA0>^\83T)Q4!SAI@YOUP;&,[$ MM'7@(H:BCJA$C$QO$<^QW>>T1E_NH;.R?(G*%+/USG5S&TY>Y$KR%_IU>];* M 08^I:P(E?W,0S_XPY[%-T-VS#A-I0YU'K0(']C'9RJ3R?Q:8HAN!OP,<3M- M\:^/V'D'=!!O]X_X-<;2,3JY@R5E+Y:2 9:4'[__EB$0?_^M0Q<0@FFX2$O] M\\.%2_=7,%_\< S./&7^SX_P]YB[LM!(?_W^VU5<#?[^^]?ZOT%?8U-<_?Y; M5.:$XZXT) (ZL"7%B+FF=NLO]/-.&U%Q+ VL;@W3@+B!LKS%O4$[ M^%,116CX?Z(&11L(>,Z$9RAN%X.,0W_P/41"$=@BS_4*?*4[ZG2R7Z%Q?W(&5RI.[< M6^VR9MF+NO2#,(".QALJH]N\J>N*BY6[DS7$/.H/R39:&!3H_" 4\9\?97_H M_*#-B* BCRRR5RE9G6! M;:_0++,Z7@^RKFLK8\\%8PWVS3:P$2EV9B[.YTR!:WMS,C9,.!EQ3BU66>E" MV/NQJ7>X1*:0K0@[ R]XMJ_%>(JG J;US6T. MSLM2$DX;/.>U%C!>CJE%U=Y, RG]6Q9!$HT)-'$Z22;BS'K X0#/.MZ\9V-"%A5' -H( M ILUQ *RUS9#;DXXV^TRB[@:FRE]LCFL+E,/$L_@(<=B%(U6Y<\<;R&T8!\' M7$3?.)OA5N7%0[=#T546IHU"O]BT='FTX.-XN/@57S?6-GJ!*>Z.5E?L5O*! M'HMDBTRZ)9[6$GR]PR?P:#N?.M8L&JCH#U8#TF9\2G?LMBTI/E,'R\Q*3K:$E=9ENVT9UQ?'W:LI *)=^K M0]\\VR,4Y^FF"RN+.,E*.L6"3%S+D3U5D-.=SYSN!YF+C0+3Z+FFH!Z>Z:HW MM154N^=L.79D"?%9@V*=&^EEJ3&77)8 MS4F:D/VQ7TI3?,A>)*6I#:^U4448F..T2BI>93%;0KHC)%_CM3]O[,HA1SE@ M=]-T84 -2U-<9"2%/G07OYO:H4A5D9EZ9?U#Y M,)NIH'D]?@B'RA?@!*+5!MEMN@4-QW\F:R/O08)8\PP45T8KIC)71 ]H[%+0 M/,Q"GZ=^G*$-5FO3KVTZK@U=Q?:?S$$#3A37R:WZR"-H3?:^:*DX//:$^;II M2'UHZQ7DYZ#5>@[;&C :4!]#FY\XZ1D3RXP=$MP7ETQKYDY4K[.F.7[\-@\< MV1_.WG[NH(-MTD#9[]!Z,A\NR#F46URID%..5K2 M]%8IOVIF6AH7R\XX\GXT#NXPEZT:Z-](&)9:6 MEPYOT/-4/'F"R1XRO??,=+WP.[;+=[%,^8C'GQJ*H>B>'D)\+8U9<>HY@2]5 M-.TF7&0%/^2$T6N;!OI3@(&XX7XV3VT:KP3ZI3B62V'+,2?6N%6<'0+[#BUVY\Q<9* M'/GVT/G]-XYCW3I^B K1F?#C6K$*(H;K,ROT8=$29!K/ M>+>E5T(^3:U"ADYFQ"8WZR]SA5F\GFWP."X3C 3Z?N7ZDR+BSQ,%VH0_([@W M^)JOU';=RJ_UV#8C^;5OVI:_JFY&[0+;Q;ZJ[]CA #%);?K9_+:AG[C5E/&] MUMU?UI_7+_FU X&#B(CO=;H^BHAN*E5:+J%VK^ISOCAU:AHOL](5$<0I2>.H)ODYTN=(%B0)$%MH%WM-8" M]%!=U;O5H<(I2K>J0VLYFD\O78#VS_644A3L ;E[!&/]RV?S-RN*"A8KH+6! M(E:,/+ 4%V@AF^]Z _/^P=$Z9"P]LR9,$@ZA=.DKY\$I?W-N"X*G>QHV05NN M#&WEH5,% MK4Z15.[[IIO(#3-"Z^(E^TN4>C2X?;1.OW=3F8%&)0PNWZ0'?4E\<,SBI<=7 MOUZGGR7\FJVY/H;NZ. M8_-Y]\%T*VGE?GC5Z9?+[:-U^G(P>]"Y"NERLW).S-5)?9J87KJ 1T"GGR7\ M0IY&J>>507X.<^8]J\]2:=A8Q2N#WJ7S_%.5.GDF?_RM##ZLU<>-#L^7M-P= M"=IFDTX792M.7;7Z!;/[:+4^5J1REZ?NTIS.9U?Q"=]2Q=S%L_Z+U?J)8;!G MOUPV;1>GF!?@V,6I[8])[!7#\6Q\4K=M0UWQ]*)BH$](T:T3V4NY$7338,&N MQ&ER6DT5V-D\NK[9OHG^^.WGH[XRT\O8!7\3;\,S>6W4P$^VQ:WJYN:,@I(I MVR.YZ5FDTJW//9ITW+P=W2CZ =8>GNAE<'9?[/S]8GN7F=92I8=8FP5=IB]T M$U4;5JYB&Z6-D7?+;7&5*3O-3E9E2DCPNF(49/;DV]V4/$G&MD; M.XJH 'O5 QIL3?PDY1U[JS6'=E;33/^H1LL_"A'R%M1;K C:,L,F"TNJE:OF M]?M)='G[TDP?;:L7IWI.K4S%3\?=S+',]46W!U$?(OJU-9F@5VWT<5L2XLU^ MOF^QL49JE>G3QM3M1W>M?9FOOMR^,,MSLI3,?)RE6^=+,ULG;YYP.+L MKA1 MR(\A#\>U%0&Y"-M'*]:_XA.;3:!OZ7"_U4K,/3WVP6RA[M6#0(]-3W#L MXQT 975+,UC8:MB9USU?ZZ4\7OX7I81I;G>CQI MM-JI>V^5Y&)>O5B#,^DNGHA5Z_R8>/U8)P(4%!;]64MYS7%.' M-O;UG;P,# -JC\L3=^/<.)B,64.LFYA\8:',4/+K=V2G[*:L$IL?WG&Q;,#K\PZ-^5Z[ MX&7OE*](.804?\<]Q,;(B,WXNM5/J4"@8CF>NG/'=&3C8F_ QM8DKV@XA(8* MZMLV0)"($Z*B,*;N72E;RI.]6;\LKHQ<+A'=%(0WH&+/9*_H.(0.7/0'VH*R M@88S;:=F*2O?)V>=LB+$EE3Q#GX':#R=Z??$Q?XBPV_W/HJ9'9IB=3#I5[+W3'9R'SDK(KK>Y^6C M89_WJ67T=#X%U!8YB \K7!GPDCK^#AKCD[W/RT?',^\S\:!4.;4Q2JB#(32\ M#AR6RYGO8'Q\IO?Y=;B(;]76?2QR\';O,\L/"O=<*==39T4$!:_1D ;C2W-( M/M/[I(Z/.5"1X/J6]YGA6C5AY-T567A7HK,U&.OGHG>PXNN]SPCR^/3>9POJ M?9",+1;D;)H5%:J;$@WC.RP 7^5]?AO4[/<^DX/Q>#D=6@VVE6=3ZJ9 M[^!A?+[W^2V0LNU]9N.]AEY+9#FUE+9M6^U+B[KP'73)9WB?WP(-^[S/7*U5 MOK=F\0F;G.=;S9GEB-->Y,R-B'N?WP(=S[S/>IZMQ>LC5F/U+,S7:7'N)9S( MN1U1]CZ_%!?4B;Q/P>RD!VPIMN)@\UYKCY<%OCN/' RBY7T>&W.(!M>WO$_= M59EYL6]07(]>Q!7:RS*U5>2,A$AXGU'C\>F]S[XT&S?J9:!P)5'LUJ3BP[P; MBQP8+LO[_!ZHV>]]5AIZVNB-!B:75[6J5JW*?*85N97B4KS/RT?*MO>9CH_B MRUF>XU0HU>[*Z=DJ68ANC>WH>9^7CX9]WJ=X9P)I-+P;D;.25M!U?3#LS*[> MY[\0'<^\3]AAK8(T,QFN54TEQ"Q).[KS'13&9WJ?GXZ+I]5_B\HH69X9=(ZE MJQ2Y&-I2/7-W=I/@"$J=H^CM1BB26]4UGA7XZ4*_$&0;<6/5MX'A!&=\G=QJ M^Y='R:@! UD>#JX9"8Q5Q1!" >F*7:8^$G62BYDUJ:EW&EZ#BJSN/'[6H9B\ M,.US9@HDCZ]RD3QM.993W,M\?(W5SEA:V+F!6B-G7IECE%IF-$Q%5K5&N<9J M-$\ZG/_N.VHZ2>13NM7E!A->FG#]!3N(WFG\2T30E]\-_X(E=VH$S1O3A:"T MR25)UWM:/3E/S=OC*X*^S8[#^2^ :)$ *D62LZ,)E_FL,\9=8$A!]3W\ MJ:$8BN[IH:)9ZR%F N_-;TCPXS?^N$.#%Q70T?KO.?'6D=4#U(N(S_9I M)]V?H! L3X7"6DZ5:3D^GY&>1D^A,BDVB]&[@VL?"K=I<$7AJ6+]%!G>3["U MZ[,S\R<&V-S4YL@N#/*$MRF\#8QUZ+K0;DV")J? X& I-MOZ4"NIH#PIM+U>8S(K16Z) M/@:#^VASA=X!Z*41[#Y)#3;A(G@N*]G0]P2SGN0Y+OU86S\#J5DA;BPE4AFR MS2[=;!C#^E49O@&1KQ/Y;+@DTS'Z9#7&WX3+=VG$(^!H";:8AMVNS-&#E%HT M.OIP5H^J,/]FR:XF^+*#5N?#E?EE-H24J!;E$UA8446-"\0 M*5P<7J'2QY>E@^0-![%+WW/N.42UXON'D-R)E99>IC6PN20CCDLYV986T\BN M7N?!XS?&QML55$?F/=[T^@TVO^"&H#-P[9$864!<-<2;,N*/1H'&YH9>07YH MDT R]52LWDW,0/23Q"*!@B_/:G_/.I%? 0TY?UN_?=C4:8U!CNG$ATMRMJ2I M#'DG=>I*9#%T>&EYB3Q7&^=S--@76>OSYE RDI*144LNZ>5ZRZZLGS^I,EK6 MT84B^>NT\!F1S,G3K#F2VU6U)B?EM$W%94V+;!PSLM;ZIV/CI2#DVS52%A2L M6J+8:W"M&-!UE;'G7W(-[;DB;$*)9#V7 M,BB#EM32@]>6UZ6 MZD166T=)5D]3HN(#G#P@J]6.)91FQE)1/;<13U&M:6_\<-%<_0I9/0^'Q;PU M[#1!=\3.!J.X#!>50:<>A4-0YYO\GAVNMVNJ]IQJV]1$:W T4!R]6<[IM>B6 M4H^,ICIQJL3[6'E 55ER'PXU52^Q/=E;R+.EP!:IBV;KIZNJTV]+'KY J7B* MG6G[P2W6!P.HJ,F.UI,96\^N8&3-R3=,^7-VI;_\L-$YL0(%V3 U4UKE@//\ MN1! S064&_2R;Y UKMEE.O.[9C;SS0!T#"&NJ#H.54T35^NPH LW>6)K*+$V ME3(GVF)%QL8\$#+*M%">?B\HO3S[*WZ.P\^ZBJ1?'@]7RI,5:PV@@9ORF((- M5JIG9.\DLJ2[(_I[ >C ]+\U@OQ*#'NLWI,8097[8M%+%U(\"[)"-244L_.V M&%GC-]I&T)O*=NP8S!$%RU%64'=271@IV:NH0'K(C\JS?*?3CFRL_0*MH.\& MJP-FD%I=Q;KL,MU6]6'S?FRG:SV!BFQ:U:680=\-0(?LH&Q52RK9IEDG\SPE MJ3.ETF6B=S'NQ=E!7PJA!!_?6-*;OT^3K_5N&TH'MKK&7,%M3:TZC&ELB<]7 MC?I]4T\M(FM#?54*U_MMMRU:G]/03\3(^#$ ?]+T]/D.)S'L"W:,R[2ZU9XZ M (Y):^5TCUY^,[/L(@];?6:$,C/D8XNA4YZH@YR^L$:L9H^BNPM[&;9YU)%Q MP+Q.%\AVI=AE92Y/9LZ:O][Z83/,:^CCH%#%O(,T%1>0>:QFBQVBR,E M)5(-YGN!X),LY$\]D'L2HV I3$M"M4-['+RKSXT8*0P\]9NM!Q=V$/>T##_* M*BA7/$&V)_9(]3AQ,.(+\*\.EF031!<,@ND-U[KW"GCOJJ7O"FZC)N#VOT]UH;/M\N^.QZ#1^Z M\V#ZD%]1FI PR+QV5W4SC1F3/']>Z'L1$,T[#R)\.O!#V+#D9;?QT-2[7#*] MZDB9)E]0FY'5#I'%QA>=J=JS?.2 !@P!]F0(77SA^29POFZ0%03;@V)= 6-< M8>OQ3N^4\:!4M4RGR8&&W&HNI^1XU(VLN?#2/'-V$:QZ"V"%O(W?C+;(; ML(=F^LC?_5.]C$# GOH$K\EM<$F89]MHQ#MN7U*HJ,R4FO357@=TEG*<,NZC M>RCR=;E]::+?F[,[+!5T/4.G>HT,NYKHIIY8);FA<.DLO3Q>OF=Y?<[,!1F3 MTT[>:ZJP2I?G,_*A"T%D=6]TF/G9AT]>*E/=A[:.2S _23'X0$'6%!"=?OX^ MY;&E5($LE9@TH.>1-;I?+%"]2YB/9Q)$I [KER<*OZ-T\-EOF5@,%(ZABTO( MMI: +'D"-^X4(KLB1;&8]?>G]EP1=5I]->+.-),^Z1RIS+ M=ZPFG IL9 -1^Z;U-LUWL7SSEWC\%3=[.. M7AMDOD%74VVUQR4?6EU#&2:72^T25]>Q6(:HFGX$>8Q M,-369 )1E[A9O9)K=<-NB@"2I7CYKL/5[.2J6.OW\VXE1S_0K&YKC9;\@&6D?1Y2C0/!RK#.!SM+H%Q MEXX-ZNW([5WN$YYM@GY;@^VZ\D10LIZL/])XU7HP34?E]!HU;SYDTU*A=1'K MS[]"A*ZKT'MEY3-\GEXI(Y*4.I94.I&;\;E1N0,J5^'Y>N/MNO)$2IJ>K#E MS":RJJ+8K'X/H2J.Z@]Y^BHV7R\V_Z+5AMR6#W(K04%#_8MM-*)5WP:& P3_ M$%]NM?W+HUS4@"%"V\&'?X"QJAA""/%6P4G7[EOW61+:K315Z;LU+WH0?\PU M.';6(4!?F/;9$$,>CQCR$S5J'M'(U!31;U=QH;Y[S*V%7H9^,J1U^?PG^O+M MMT,L%Y1ZSTWO=+74YG2-O]>3\U3D8(55Y7[2;"5N[Z?-Q[7;Q=Y]]XU0>^ B MC%%B2HZ*RVF:7%%*?UICRMIT'KG[AN] M"@FLE6@W!HD^&[U2B)'7:Y^T,K^IU.QW0NV!E;G%QFTYMFPL5(_.J0S%CO61 M=Y&J\-^V,E\FFE]9F6F^%*MSPWA1[4V&#;TB2*U6].ZLC_#*_!6H>/5.WH-E M8=#7.A(:UQ34$ 0=?CJI%>5LEU,>9K7)+$YU5\/(;?"^L2+,LVF>$@)?<@_O M&[EJ-AMVB4RP"3767(V[?;"HDFSD;*7HN9*O9\G*M6L]YV4W,RQR9[K*[FADG5REZ%]>AC*N=0P1_G M*G]?J3)S=6SJ&#RXRK8O1MZ6;.3(GO9 EUPZ33W MH%_MI>/82IY+!=M5/ MU.-E,9[NY1X*YR_W]D6L/^=]0N0B<1>/]3(46Y/'NMQ/2--)++(Z^\17 )T@ M3OWI=^]LQT@>MR\>/QP%ARX0@5V' !>)*"AS!5.Y=V/?:"$J*NG"M$-YLD?V M%J39*68KV2&,K,H_C(I7YGK>30SJV$V,[:8G ,?A8LOO4Q740DV,)LTTR[42 M!770GS5AKA"YX%ET544TRBN?"@TJOXP7J%P^3]:4[N1AP+4**G=%0W0W.%^L MNJLXEND K62;GN77GD>TWE/W<:==&6KBQ+311]@T7?03?I-B>% ,]TE,X^E& M4@5?9 ?=SNVRC!F#3$KBC[A@88[TTS'LZ&36^V\U$%=:)ZH&-+^%V[M2($Y M>H6]XM0G6:5+2Y)6%;E?Y%IF;E#GY/&D3446M:^PYM&;>2=O/KYY]3E,7>^" MO<#5RPAUG[;>]?KG(E#L.Z2]8&ZU^;.,0 =L05[5X1QJ.[UMVE0,RW,=OP'] MC:DTV3VS^>.3W49T7;3CSH"&L]@]VJZ73A8)G MVP@NZQWF+!"90:L$N;SE3(<-3W1*X\@Z,&*_8$H8=KC3G M9_=W&=C5!I'=K8R,4KB:&!>NGLY?//5?:6-,''::8UKW,MD#+&G-ZZE,@[G: M&%<;(]I"?.3>0A8-2U0T#R.FAV?H7TS&+G&0!XI%V]3QEKSG^GVU)NL;[-K0 M[LG 1M3\AU/?6XH+UINB#V)A-NMS]1 6)U:#TD&8RJAC9 M2-.1>3 'I_P]D7**RT8/(V6J&'-3[RP5=7:?[F8L3T^KW!4IY]\I.\W5HZ\@ MI9>^JZ7H!Z6AUFBYFKFK]#M0C4+N470(=X9$I8V)_8[;P_M0D U3,Z45+D;R M[+GP#3%[4LJ/)7W!UH8 M2@UZ]W9CJI/*?;6R-*=6<2!%-AISGE3',RO_)R3_GAF7D07\4;;/I#F[TW3) M(-56K#!93D>%XAQ [F4!7T7B++:1U5D6M(RUB'$U6R>8=.ZWT4U>!N'R3 MZ-/%8'T!73I ?9+*I1X*TTF23=+M-HA/^_WA*F+GMFA\$1J9/ON>03(KQV(C M(\9PR:8USDYLJK)HG-WAN*A@97QO)90&)\QY4P)#=?4@NM*4JO7L2N0(1QU/ MN-.7D$GR5'P+_:T0WYOXP)WV)X M89;GA0.9.1H.CTU/=Q[F$^X.Y(11L:*Q99VE1REQXCF%KE"*'$@N\R[ CV5) MG"V;^A-N9^GI77Y!/?!=5:&[2;G8%HN5Z.U;7.9M*Q%!U;8YF-ZL78\?.@DK M7[>[[H)MX>/:=DX0F^<_FOLN0YI*'ZGEMYN>K:1@K4EU#!7J RZ?C7=S2CI) MN8LH&M)?5'5OLP-^[.J8%:=(LOS\MJ)I(\G+"@+.Q$,V1-LV#?2G$&2_[:93 M;!KUD(0@PT-T.$M$ Z=)*DFNL\<[6J6UD$2ZQ);:(] O=>;-7C2K-YYW^7P3 MC;<2.(XA\ODTX3:"/YQ*? "6>Y?7<\*R(5JM3GPZ8\A8C[6;6C79%DK_PO7W M"LM'LX\FN;@'*9,C=>?>:IHAT]"_9N_9>?TF(ED'Y M&]O&*PF>[$!QY8HA*G-%]( 6'*#!QJ1_2@:G6K3!*C [#;%M(K)#5PF/D4$# M3A2\1]U?6; UV?NB#0[KIB'UH:U7D!EKX$,W;0VL=X0F3GK&Q#)CAP3WQ273 MFKD3U8LP +^8H"'>#U#TC$#?R75_)91RXK3XPV>4OIPMK^,\/:#XWDIT[LD\ MT\C;DF1/$M&]@?++"?J%.(_,":N+Q+F/)F)IR+G4%UQ M_L57Q>U/SKD@G)?&>?ZNF1DFN%EBT$G?M44A/XE>7L=5Y#KOE.3>.0S&[A()?TF'[YRTDC_MV MKY/C2UT6ICIJNC=M:_G8]]#8;R=9B--7:/:M;(_UG3WKS(](@3/;M4E>*:]X M-<:XV3R3LZJ]^A6Z42?(X%_C+1-!N+FPSGGYH6JJP /%X=W]729; MN\+MJ^#VF)3[4;B=Z)Q\M2*__HJ"789N'P@_ M0;[.*0_]33-&K5IMS:;LS-$Z#K^P1R856<&/S/4T3Q-?J)-F/[S_CI'7V'V7 MT";YASNCJ\ZFG;X(\G1I8%VH''_I;431B@?3\[*4A-,&SWFM!8R78VI1/?^1 MF:@2SC.4@&H<^H-?I\+Q7*_ 5[JC?J=2-!?J0!ADEDI&&!2;C[N+>E!3\K?B MF'&:2MVB1];O6/^T_HQ?LO^%&(LB]%_G8-O#X>^4@ED9, Y%ZA.YD.HDFIG* MXI$]OJ4"MSMKHO4),=RTWSFP9\_C+PO0,'7%V-=MR!!_M(?ZW>GBU^[H7Z7+ MAA$A562F;PE"SY7(6*I2@FV2+K;;BV>\.'9LK[S40NUY4FS6H$CW5FI):MPE MA]6W&+^X[0ZLY]XJ>NXC;W>ASH]E.:^.2_4T MUVN66YUY9Y;(-9_S-G@M>N #[\MG"_R87?&+_/QAHB839MV2O!9.Y.[G\7!BBU)B7GL#C9@8B3MGV/XS.&W_E*6MPCDIF<+T D^ MRA"(OJI%4O;[;_0OPG%7&M+8.EC&%HKHRK<42?[?ORP@XL!E3(,3]S9QDTX_ M?F4KDKSYS@Q64?0:S2]$_->/)[W:DF(@0]^ZI>(W<O+?O_S6CO( 44>HS^ MM^A/ M O^?"?_ +P"$;,/)/S_^TV_ET4?' L;.*_V_;PW3UH$6=+N _OS"KW[\[H.Q M!@ES0N3QHH"\O;]_X5X0"0'ZO[6'E((&@7T[-EWYKZ=4W4>NT] KUHLI?>V?N/XI^W)[UV-3$\,$8FH!KZK<4C=I@8VCL9[;=RHJ(EFS4 MY?_\)TV3S%\;FC8"]>>8&8\ Q-44D_D/Z_ZQ; MX"Z8/3]?++DBP7G@ZS6>2I"31(8F^72<'//Q9!SRF4F"X9'6H40()P(4X8] M=#YG\N,],Z?W3?W';ZY9Z;,%HM?/]MG>W[_&G\FC-PRSQ^:Y;J5?87M$MED@ MV&&^G&V66"+?:C0JO5ZEU?S$L?OZ-OZH;O?-8R_2?OP> $=&(NV:QD^B<)._ M(6CD%F1..';Z0V/?'6RQU6W\SW^H)/F7/T"TD!JFX1O%BD"$WD(7KS/O\ZL( M V"O283*;<$4_-Q3'%'\X0M5$]@VWRS,5TS;J)M#]BOAE N]2;8(76/>?'PKJ /F(:,RF-@:XTL787/XX#U$['O(0 MH:VM@JL(MNC;B"4J1:8F)1%'M_AHFHYZE46P6B$C#!IG E+;'Q@;1!&V8,14T\ZBJ&J: M"I@"TRMZ;(_6GXOI9M)[V%_U#(A,V)\$'M+YI#?S-L:9]K]6:?1M8 1F^S.M MP7+-=)^L."DNWQ$Z'=)Q/7&^^+C6B+]#:SP.,_IJXXW@6RL&]W&*H6:8V*9. M\.M_\$0W'R*HX/*FKBL.#BL3104YE8BQ8VB_I-A."F;6CZGBMP8OW0)Q76U* MNE+C\QR4]+MZPFW>YS*=-^DLDJ1B<3*929_1VH@?84:?G8!=*"D.AJ';1+]L M$;$P-O1&LFR-U1EE.:5"D>J:W'--L$NV?+;098ERJUZH-$N]GX$L5IKYF\BH M_3_8)4 * ),!:P%[,WT".(1C00%'[D5",0C%=0BD,O#"_>=Y1 ^?8%$-, "F,>)I.0CX,$S6>$=(8GXPR52)$P35.)T)D-GN@+O-:O M],6JL!RR@UZE?]?ENIDQO>!IGGS:\I[6"I:730@D5)HFN;I? B:'6])A2]*Q?=$W9.)05Z>.,!Z.J!P)L#?,#],J^2JM?KDV9LK)&'#:0)X/J]3- M?H?<_T8Q\#;@;2QH=$BI/[4 '7Q#CF6;ERN5[ Z.1F794"PDTY8O^\6MI 6H ;]J\N 9$ M23A>6TY>BZL$2][S?V],S5-*RN>$\LYN@_3!LA)NF@M^?]L6'<(A]U!O9VL/ M^D"->9WAG.ND=2HEX5>^"8=,.L:D4PP53QY&XNNJQS6M3],[F5.IG3]\.<=^ MDHGS08@I\HP<4?&]*&0*GU2VAC_KG$WG_Y1NG M7VSD4Q]"P^7[)Q,2PC@0D[PH %Y*V2*'\?C@&>$="(>I\;Q5";^U.M(4'Q9 M*RO+"9FGXP]5MIEK ZZSSS^A:YJE/;3=!3=P[SO#_'1&S26)9YZW3 Q!O)). MC3-L;S'B9K:7X"?5!6IY]62VTP*V^C=1GQ/-7*RYO/X<6]C NAW;$*BQ!:+3 MJ_D5(7C\%Z^;@K%C:IX+SYQJ<1)'*)*#"A(ZPG^?SMB^0N$<5']UL8X.V9_- M,#2=SZJ HN3)OVS4/?,_+EI_1,A!OT:O(A6].D,X("N*-C[2$/RGKAB0VMJ7 MJ,8:!3E/RH(::Y5HL4PV+%=_GM=P*!! ,4PZ253P= T0W#)-M-7%ZHQ[/9=' M_CSZLV7WS86QG0VP>,A3>3X>YV+S.Y84ZEVKF7O;SEH5"*IC&G-%T^#/(S:% M#_5%[,E=^HIP:D@R/\#2LMOH98HA;&^F09 =Y?IC02!U,!Q58K7YG)^]#;1% MS;05$7R7(.K+<=)KC/0 Q'")#:#=*]9.H)[D7M#@)2FJ9!*?*L)T_O#1([O]+K[,;WWNK.*#$<\G^)+3>HHI?EEN_0L: M_8]S)W=C*S&+>/2X'/GVSH/1;S/9^5A65Y5D+66J ^',-TN:V^SE%-Q*I:(D^01 M*_+9=B_>>/[FLX(KV*!44FDK-P*+L6G502=, M=]G=2>H5:G9+KC;4V$"937MPT2;GG3 A8:?E@]U))JE!H:#6>-%H5=V>?J=D M42?S;)F:^T5O^E-+_"_ KSBZ;Y&W=V M\%+ZY""_M7SYG/ZIWDK[A!J0@(!)D0-. X[TEDI5\F@G\"RL(' M&]US$^)KDGBQ^%TR FS@NT?! ;\K\_]5S&^&IZ1\Z8?K Y2F02QD!7WSZ#'N MTN8M ;4M!1F40OE$\GSUSD[H?*\H>NPKVLU^#I-?Y:WJP(Z1(-4V7$KCZ-1] M>.8*'[E\P07I\&%2PJ\']HZMPJT-C*],Y#CQ M5L26)/[K+@GEW M)D!@O7V6W(>U^EJ?K'\\0(S0Y2WZV?ETV6!4?;(2:NJTG%G6L0J+HV4%S7QD MVBKAZZ_-R?Q/C7%',3+[6NH]KM@MX#,\XQ4AR!"1#OVLHL48^@=Z<#CV\3SS M+?$'%89J9> 0$T6#(@$T#37!M11PO'?F*3C:ZYK$&(8-4,^G**Q B.A79#7B MII8-!>C;D!0=].$7-'&(/U#/"*R$XR%;PI%-?-)Z70;!E8'[9$+$ NP.&H\X M>#BHT7B*9H4?\MNC)_%XPL[\BN?^2/SA L<_&IG=07".X$MWUG*U-++NC9;VJ,^JK-=(P)W5! M$KKMSL&D@A^_1_"QH. 3@3[TV*ZI'3S_K/WANB,[O652\<3+'3U[<=,\PP#B M$=<1!)80)!RZXKI(IJ"&A,0V#;P*:BM?EBS3P;^883F$\$@>) 80^0V*"W\2 MR@0U7/TD(%H_5T%2)1#\I)D"<$%0%N2)JGE\X]8KMO>5IP?*L7ZQ-_X!]3?]$,?1,V<&7%K]9@X6H-GZ)]@DEL9K!1+-#Y\_MJC"WV M8NZ&"F1+8]3(IKP28E11CIOV0"('" WU!0D@ M"$A[8-4@^D)@XZ5X[[<$8F]L[P^.CM0.>HN]7H\0@G7+5RY(3E%W:*7&XY8( MR387KKS^^099(] ?FP@GBN$'F?U,/FRGT>1?+XW0_YGZ:]WLU08OCV_=$"N# ML/$+8UVW5(PM)8?\_QA-A);5MCEULU.\11!H0(V3?":9F?#Q=#K)CT68X,>) M3&I"BX!!/3_=?A86E.VDO<$]V:KK"89S+<:89/=M:<\RU,%5 O@](I6E M[Y?2@D]L^KS$9#PZ??/Z.94C^DG<) ]FL1X=$4C>D)]PQN533P9MQ0CHFW3J M%&1*WJ1>[^%3TZTG+,;#]P2.,- MHO%)=0M>B9+Y]JV/2FP 2::].M-A(>P1V?GP'9MX6>YNE"\WBF*3G7%5P27; M*Z]@X90RYA7CN;G/G'K)G'X+WU[31!&5M^1S>8N4NOQ(D8W/.;5Q=D4;?1)\ MDK$2:1I$16]_)0W.K@._F 21THS'K ?9JPEYU6%1TF''<+SW4N#H$G71UY6O M#\QGGYCK:R^W(L^\5JQQE;E;Y7HN:-UEM%1-\"^N^V!$=LN>?$-LFHBVJHV^ MY%Z-T*L"OQJA45+\_PXC-/IPN&K&JV:,C&G+[M_FO$3]]M6&[9J4)9^2^8"0 MF_@P7;;3\T5[.6-+$VDY6LF-?!GB/Q,ME,F^#"T_+PN*A&'ZV5&>$V0[H*'Z]\CMNT7*M/UW:2O\\H6"7HU> M2QB(#B;V0Q%-_0"* 0Q! 1K>F+ < /,'V,T+W M>/U^N\\2K>7C76+!17=;CB-'4?.AURT62-IVS%HJ49DFZ;U)CN].Y3E;2<'3 MP?7MB3^.##5MC6CB#X13/_TFN#SIB.26/V^($9IL5##2P]/9T;H^.DI>K9^H MI)H#A' 9[AJ_ MD(T1M$^'PPFNB?R)X6)#8H'_%6*CZ&<>(B6'[X+W6?_DUGE\X,GA9:9O"4+/ ME+IJN" 5%!]H/PD%F"1H3N0NLK,.W)GP:_<\' M4I+*I1X*TTF23=+M-HA/^_WAJO.#"'MQ_OE1:1;W)%G[Y[7\DPX]?X MS_5U M+%*VVQ3^LDP]$\Z1:V!LB;#[^"$ET]F MP7\)HNW^\V _"?/QI9^6G7IX67^_A?QI=[+OGMS<=\7Z]K&@#]S _M6T^,1Q MBHIC:6"%@1QFS!T]: TM+K$P#^[849,?&G5P[G^KG(&@06#C([[RDUZ9Y[E[ M9S[[18F;I)G8N$3BXS98A@@9!LO-?_IM_)[,8S_ M1K*"5BYMIT1<^-6/WWT_-14M ?D@Q_0QDQX<@^%=JNXC5YA]G!( *0#(\%"D MDWP\%1_SZ?$8\+20HBF! B0E)G?S:OT9X<^GH>+V[/WCZ4_(BN5ZG<7>++## M$ZK'9Z]^];[1K<$0B@OUT%._>;9V7(A4G(4PQ4UTS*_K'YP2_H,S@"M(PW,]LHLBW0O M1:?3Y-[=J==U+W)F_$B*G^>9 QI2Q)#HR1"ZSOH<2IJFJ+^(JF= Y%$%04/_ M_&4!"A#7=@[:,93_$W7ARCIQA7OTX/YH9[2*K3;;]6WG'I]BF Q] MAO61W( MO6]9,-CF<'R4XXT*&\K0<'"E!7R=NPZ)/^JFX_RY*R!]-'#H/^(H2R*L?1!L M&SZ7G6\@*HNN>Y2'X MZM^S1J2OXA$-\0!4KU)J5HJ5?+;9S^;S+:[9KS1+;20R^0K;XYDD33'4^X2C M:;HP7 %J-RQ"";H8SW\A.%3;_6X M[DUS7SC0%]KZ,Y8MS70\G+65'9N>2S2 K4*7Z"J. M>N$"PUSP$A1'=GJ_VZKW$!3:W5:>+7!=9'XDDF0FF?RHI,0O6E+.0!JN^O:\\12;H](=M MZ0M/43LI5>I0 EI@/_L%[B_=@(Z3%XSW;+?2JQ6S^7ZKV^,S=#).OC-LO87U M[&6#_60DP<$1H@@$U[2O&/\ZAB;98;F2J^#,+H9)I#,?Q7?RHN%]&FJP2QG9 M !>_^_02K 53P_/ZYP?]XYBI9.(WGWYOW(:I>"#6PS251GR?1SMH5D! MU[,A$9PUN&R^4E]4 20Z-3_V>BH7<'#W>YYPI:]G5J]G5H\^LYJ@,YGQ.$TB M-TM@\/TY8QYD2)I/Q2="4A2 0,/U73!GTR3^5XJ!!-!%;6[2SVF[=5:TCV\Q MZW@ WT6FK8C@8CY\^5H1D8Z@R%B'^,._Z2R\9"AH$-XI]*=?O (HQN;GB6DO M@"W&---4P](^8;;+^AHB7!E(,?S2+#H$!FX45FIQP 02,K 1_(-"0,[Z5B7\ M*W?3NT&NIS+')6.V[H*LH_](P3UM78@+;CQ>"IE)W.#R+Q!-=N&7]L#]A.4V M"!-7^U@HSN:J. ?7*0K:/?ZV+IHD^M5!"$0DW?'_"N>;W[ECZ>?F:R#:\.F7 M"_CT>B?/V7>/D^D]W@.%8(]KX9CKH3]F%(W#>K1!_BEZ'5$V-=\I_XF3LV_\ M'H,;]+:>=^$J>@CPG>YO$(<( M!S<24/]H:"O30W\:2(?@T4Y6AT@UA@((ZW&MUO)'+$QOK50M&TI]]!I$W0Y)X]CE^I&-ZS[W$2@J!8>Y[PF2 ^Z]_GXK,;SV33 MTYZU7>S[4MCWI:4!X]EW-D12_.Q5ENEC SR;N0.AON<[]>EW 4^??HOXC[FV M^3J\Y-6 4I"1$>@SQ," 9^CG0,XUTW0, M5R:6GE!=V^;F??G':G:"+RRX,ZSEUNKPS*6&WK2V[A@JCX;B[7\F_C^H12Z4 MY0.T]XT,N%8N(>0"X7_"%L7 BQW]&G&RT+-B8 7L(V-Z^&ELH?IOV3".T)K$Q] M7?OR^Q!LUA?*B@0F%WITO J668A(\7BY[+[7HL%8EH;6/3RNX/9JT41D1%V' M%T%C*N'*ACY*_7=[Z G_Y4&#4'RT**.7N^O:]KJYX84KT,Q)%;(N("+6X0+]+)?#W*,32:TLJ W6\'* M9T.LJ6!0S7%+3#?+]UR!"R^>P+EE\"3@ M#5L-+! WL;9Z@=5!J4\T?]O4L:41* DE-#T4OV8B)B'R5Y!CKOF$(CQG1[+Q MY>PO]!XN.9CK,O S"PD%,4?PO0-?%[U,]] L"0HS;HGK#3' 8FK@86&4(XIM MKT(A@9V?(1U#D=GA5\C/==<'AX'-&DQO(,C8$!)]O@B(PJ&P"JX'M.8$P^Z>=S==Z\NU6'$ ( M,+\M:)B#&S^'""W/;>=F;=[L+&V!:.*7AA:[W]2T%"-P_8P0%1JP&/=:2ZHF239'?UV/:*HAKFP@@50?#W MB]8=YMBN].#I6]#V-2+&4JCIMH0E$!^L\K?$)K1Q ]%$G/&7%;0@OV:2WA ] M[#Y-@BVZ;5T5&%1/!H=47BB]R #0/!'>OK44UL>B6COAVJUPFL]1/(B8!I"$ MNK<390G%?4S>BC^MPX.!C;F[G1_/8G]?V@B3VNIXR'Z!=5EQ84Q9#0( M. *WL,&ZQKH_B-T=A/_Y3R:9ROSU=%Q/MAE>K#+[UB$?%1O<:PSYIEY@@?H! M;;_@*; 4%V$*8@>@)P2JO M0^B&IH7_W%]71%X1^0Y$[OA:FYV"-23QY=>6&_A,0?1KC<'KBG\%^L4 W=]T M]1"6G75%?POZ(;R-1D6>F!_'VHH0F]A7#S:XMC;"7C0-''QCQU5"KA)RL1*R M%2\2T>2196%Y8PT9*&WWPPW@XY+"^%0D_H"FZ MXH:!8U=&+Y5DPC'],@N0K:5= N1M"V=B8M$_D">.(_";3.&*:.4.W?("9Y&G!-VT]Z"$+0 M#B%! [F>?OS<$ ^M0VL7]2H45Z&(H% \76HV0D!XA@T=]R?AIWBCSZ+B ,?% M)MDF0K,C\8 MM-'QQA!.0\/.@6T"$3X)'@:9L@AL>$?-5]7;P9S=7WU39YVG)^ M:G]W$F<7^ M)6#?ORC>!_DF:[]U5RG$J R!!B="/Z!C[,T37CL,483[_J715\B;1?FZ'EQE M J?2XVOK?1V^E5 3'.3P=;WOR.);[[&)C_Q7V[,>[UD14;M5I*(R5[T;/8SM MA@L58Q*$4'!HS\^H]0O^^O[ADU!-<%P6!F<%@Q["F(ME*P+>5\)/A;NURAP] M=BBMZZH4KX#]D*$0'$X)X;D^!K+>3 V3R,-]5VP_^V9%D"(>!#[V[!;]W)@1 M/]=A[S"UP3]_&>:,1]'$N$K*55)>SD=_3$7'.GW[L.3&;UP1SLIQ87!^>+M% M>*[L\7>T%(1;HML.Z7:RPI,3;YL>V\/G4 M9[M5/_%)&='7SN)F%SV]$RORY"LEE",D32P>9,)9?TV2]._43 M?^7BF@/XP"I0; PZSY)L@$\Q?UBD_+TG] 8$##VTJ'"GK@V,('+H'XXUUV\4 M@Z0&_R">'\P/N[FN2U>1NV"1<]<'.EU?K)"0V'#K0+0OE;8"_1P$?S=B?>0S M6(O6&7)(T&PT52PR_B%SWU1\_BA>"X/\U,!I\5/BUE_YQPRW.CK8S9;9>5U[ MKH)P4%.^E/T B-FFD!;R?'%]$M$__!PA0%UC.='#DQ_+,9"B] NAX*,GAH.C M-XZ?$XS=W2#]%_IF^3K3-RPROX>2V=>F$=>VKK7)$!VH"X'(>FVH4!PO>W1 M?ZEZJ3 &/@6!OUU7EWA6 MB@$M+Z:?<;>N+C!!NL*00J,0CW.K?AUNQBZ#_%>\ NE*'V$UA1Z;7U?; M"^HX39!6,!=X=CO6:%#;P2\N L0P>WR*!OZ8/AXL<:]<2KD^(/^L[N\7X+WA37!L$M81 [A^ M"1""O62L S3HPG4AP+!(TZO5$ZZE;-\\]*\>[+^M[F[\FH%US< ZNNXN% 1 M@23#IU.9)!^?)!@>H#6#3S/)5)QB2'HBP+#N;O"$?Z=5L=+,-O.5;'W[6BN& MH1+,26OT;E/&OVKH13G8LUQLW1YV0VP&O'M_EK6>E7\+QJ;1X_7O/*(!19]Y M5B_/ 0]K?9O.UAP>QW="/?DF8J.QY;.%+DN46W7_>IR?(:F;^9LMLN9;S5ZK M7BF@X19RV3H:/MLKLRR^B8%.I\G35G1^\P2V!D>$HR."X9UGK=PWB"=WP.W> M^/8'9P!/1%Z:^&=PUULT1E7!!J[I.<$IS;!(GR.OS7L+UV0-/NEHG7&=,P[^ MG.9'J"'I1(J$DW2*CX^I,1\'%,-G4G2"%P62HC+,A$IE)CL:LB_P92H_;[OE MP5!-YCC%M7EVV7:S/,733UO.4N5N"W:X.@O(-)-*.[D1G$BH9>)I2U=J""LZ M*Z?)579>A"0H%8KR@J=Y\FE+N]&PY"8;E\G90SQN-?@^[.87//.\9:+8(N=" MM6QSM+S4N\E*P^M,.GS\>4O*&[>IS&C59GN5IM,Q'IHR%!>HY;,9L?W$2APM M"_><7E(?1JM*HCMJX3Z?S:C5F\C#JC5F.4]FI;R]9!.FE^43S]]>R&3OYK/D MC.+ 8)48TI6\C?.1V>(I\W-7B0N6L/W!9++[FZ7%+BJ\QHP5/4\Z9ZAM'*4H44 MN1*9?"#S\IVPFJ->][ ^64DQL:F=L,E9K^HF$I-..?^ FN[A?;'=[+JE7@F2 MWJH#V5=2\*[HJ M8R9,;8B(M8>Q@]I29MLCNDWJI&",1WRKSC6R/+V'L8D*QRV[;F-*)E==N1+/ MIN4Z\)L^GQ;7:DST=HYA86ENR91K]TAM@9L^FU:N!I/273:AL@,I<>=4; #$Y+PK]P4KBZ3UPF3;,E$%V4BK9&TP>:#*3:B60 MO-![X'(7D^CA<)F?TE'("#V / M!GJQA*%0B%&9*/BY,TGTFF&5Y,"DR& M'"=3U!B\_8DGH#SN&>89.N=CB=3JI1G92Z;!6J10E+/[&'C7<^\L^[S*T$M-5;R SEAR_5NEH_O$>6:*Q>&N;O$6)VI MRQJEVBL5L&@IV\-QT-4$N##AB*0%LMLT"I2QJ$M\?(_0Z=I*QSY<>SVP\(54N/%QU*5:*>HF M'C]TJ]:6[[O5OXGZG&CF8FW:K3_'\ ;';1#)P!<(O!I$V-KWV30%8\?4/!=^ M1CR!O"$3^ROB[P8#WQ3%"O]]U-5F+VT/T3?TP=L-KWSY&KX@>:&N?(D@7\B; MY)4OT>/+58]%DR]7/191OESUV#GY\L8[IE\UC[^,".DW$.&L"OS\H?(WT>19 M*/V-1#K^AN87)9B^(:GU=NTF)&XM"3^UA5CO!)^1HNFW$_305D35,V"P\<20 MX0X43=+T9K\AXO@Z,34" CS_]S-R7)'TC'8%*$!\GTN()NH13=0N^=ZGIK>S ML@0!PMVLK'/0YMV4R#H.Q.D&)Q2A:,U^+10?GEQ@J'[NY"*_* =6XN=S?$L7 M^/'((R!P,B!<47Y%^<6@/')^QFM(SHMH^3#%8-X,C!40_\![Y;< ZT()'Z(NV]Z(/["^S$UW37__FFIA[S=*+$ MW\H2#=LHXH+'^.":9RAN%Q]!X- ??,]%D@!LD>=Z!;[2'?4[E:*Y4 ?"(+-4 M,L*@V.S\\(\%HG?Z3V4=OC7ADSQ#\CB@AO[%Q3U(F1RI._=6NZQ9]J(N_2!$ M*"@ZT)Q_?L28'T1PJNZ?'\K2O34\733=\/Q MS!IB3S9MMP]MO?)X'? /PD&L0H^B[M>)FY,=_IE.TG__VJ7&I48RKC)_E?G/EGF*QAF-..[)JY-Y.M]Q;)D;.-XX75JV MZZ/BXFN$'F8R$Z/,5/NL8JW8'I^;:KFRA(0^^>,WP_Q,)U('A/Z"7-[ >,D* M@G]R@K"A !&QQAHN#06#R[3P*6;_"D5\LE4TO;$[\31\O#5X!#7Y/Y>U&F37 M,RJ:=B&]1TI;I$ET;'$;B79=T:+'[_3U'-8 M^$;A>2AT/MGY.(D*R3Q+9NUI4NU1B03S_[/WIQ)SQ^7P?9 ML=MM"C4-1':]5&U@SJ[-"F&20C955FD^3]'TFRNKYV*#[?57J,M[D1]8 +G; M/I'I_<:,]2GM[Y.I'7>8W*;4=82S2B,"FX9U>6>3&A$H-QXY*!1@B76J9G!L MGJ5PY%5#T$;0/DO]Y!?8OMGM!)'BDK(L$7(0KZH\B.9)BNU4'V&IO,#QU^0\ M:V=-JG_T@T36$+*&/J$U=#)%XA9?\AY>3UM!&MM8L?%L:>%L@,OMWFB^(FY, MC8,:!9L7J!.&Z1!2$5(O!ZFGTPM>"E5OS0L-6;$VLHX[D[B$^?PX%%.HI@H" M@>3+R%I;I:>;6B2V.YY(@I MP&$&4)[@G@N#7IP/8[\8N3EPIEF:3Y@N1@Z91V_'3A];N/R>5'4V)=I7IY?L M05I),5KR@UZ*T)8?M?4@4F9%*USZ*6;+Z1FQ?)K2\';+:+<]4+7+E0I;*(]V M8N=&U(0LDYE!>1V( ! !G+7B\L<,,/$H^L:8%'&\/*LM1DNJ( 9SR "I4D.> M("QS+EKYW3UGSS6BZ/N1[ASX9"ZV+<6E$..92 BRVRY$_WF:W RF7^D[K#%1 MR:)"5WC@KWU&A-WP4_V&X)@\P:!2+81NA.YS5FZ>AG<17]6[C9Y95?6;G5*I MFZL@'&?PAE$C1L@+_)7X9/#;O!)XV7*TOT 0%I0O8;':C[HLPXC=V,DNB)R" M90#@%:1PF^%PW?73J>WV'UQ@A=:/N14?3"W]V0'P!]&;B@]F>+=2;4?WHO3? MY+O%.EJ9I []PGA3\WES+DZ8'?4$=(^G9D[K-D6;8I7' M09DT*I5 V@GPQB@"ZL@TFQ>$YPJ;$6019#\-9$^9)O4JS!:6<]F(-YYD;\-E M/*^.5_Q6SC"[;T: 7W&ZU/X;BF &4K-@FHOTS:UG+M.#D?&.C'=DO)^!%G(' MT*IG^"[HZYN],7^B=E-LJGFPJ6*BW!-#KNJEVZ6:<$+ M$D^AHR">NAY2NGX&.F%=^1W*[IE'WAA.#!>Q[/O3Q'*<(U3D^M9\*0@X;KOK MN!]W&@W0'8GPIFJ8L,WD"0XY/A!T$71/7#?^6]C5'7\5UW#;4O7Q="73Q#*J M&=DM\[#!#9FGB<.>498%LJ+G#U5K,JZU5%7@TBFAG* M"00V[&O#YLEG.\%?G#MC7Z-^.;<@70H9H4J03U,)\AXEZBW?,Y[,F>QURAVB M5%L7Y#(^PPK;@:MU/%,CF-LR=>&$7?80U!'4/P_4WZ5:_5FL]P5UT6BL.[H: MK_@=53!7\VI7A%C/*M9Q\KF6%)?M)'EY>1+E0B)L*3_5?+(&PQ0KY&D.M>A! MG( XX0HUIB=)P3?323WB=F^V9R1E",IOQ@I/SO+[U>;=MM& M)>?\.,R0(GL)BNSGR69^GP,&"2L2UG,_)\[EO+_M!7Y[^6QNJ6_AU;-(U_L\ MNMY)8Q[7'](X^1WN[3TDG[E9:;!S/1&$37DUY[Q-H\R61JZ8OD[6XUO($_1S MI3((X C@". ?>N7[+Q%>J:DM#./MLBB&*"NJV;,<1L:ZU>]Y@89@:F?4/ MI)@\_VP"!<(KPNNGP>M)=847 ]8-/ ]O-F9-FRRP)7&SJWE*)P,LF[4\YJCK M30O?:Q#[3D59ZT#DT?AT!L]51Z^N1/.X[R7V')&-';O>XMJNCK-S=4LIBVFR M,D2-S+H&"L1S1@]".4(Y0OF'ZRLO@CE+VD.[/^_BLMZD:COL!F?EB0EA#MT; M>9)Y^U8_'ZB;/%#AT.6K%V@TG?\*?!)CZV0JR@.$/KIE,:6S?>>R]%/X0I:7 M MG@N2.3V[X6:)8"LW70ZL[+HBMQ/(!5#;.4$DYUS4]KWZEN(174>UO*G-\ MS\0B$+CI)DW0!0\?6Y![U2U+SF[R9\"=IU.C4ECW4U074U _38>##J';B^9( M5W5R)\WZBV5+[J6J$;U7C?(4><)+ZA%%((I %/&1ZM6+.**M[?2-SLD5/#:* M'4'>8FK--"%'0)6)RA,HM??6?]3CLP;EB(B&KP>3KM^@GH/5]#3]+2^ M6?9,=3(NV7&O0'@8-N(FY52%R3HNXI&#!P$5 ?6]'#5/(U7MXX6175V2 M.":R=;EM4-6MGR$57DY%Y]EGC8W+=K_LOZ&!?"TH7H[BY6>G9SRP@Y[M^!JK MC$PNW9V$#]N2(QD:UZR,4E,HZW%(T&2>I)^SA1#,$Y-X-ENT<+?"9SB'+@^:S3/$1;4M?-5UWZCP!]E)G]M.>G-%PY@&X/XB MW[Z^>6 N';_'%V]TMHPO816U L.XS:(7GKI^[!K?&_N*J4^@-R.1! M(6(4(O[@:Z\>$N!S5A-#EM;M@6V7\%6!TA8;:2LI6**1?%8PQ)Q094$T@6@" MT<1'7YGU4IXPDG%YV.[4>'LU6DF)W5_(.ZD#>0+&@<@KN=/SY=DD*(L$W0>( M[@,\6QWH :T=(3.^RN/+NBD4U%4W2J9N6]9JRU3I$;+^;R1,CSMAI32".(+X MYX'XN^2O',N2KY>IE6 O1%D79:;N#">;>"-"C+.W&&$2?;G7E9R]V")=%NFR2)=%\$'P M0?#Y/*;@CXN1P>W=QT@#1AKP&6O R*9#$GU=$GVY-MVO^@*V@[L*L##R#3OW MU_\\'\ M6FMK"K+P;3C7 Q!J ZOH5X=42.#N;%[D.DQ+J";)GR9J5%NE5T1Q M^\!=^H$>;.7LA&SK@1+T(CT"TX'NQ* -@AY\V?L(+[Z/\+;T(-!Z#J#[R\K" ME./9')#<-*2F*S%=^Y.MPZNBV>^W$+&H4WV;83OXJKF3&L!H#1,N^?(]E1<< M/]:@X=$'N:4>Y-;P:_(OS0*X7;HYU5\:1B\R<8RKED$;)TOM]L>*4+9,H1A' MH3@2F&CODKT?G]V;^?X+QH^@.[-JO7MT[5 MCK'VJ*4N:H"-S*Q]8"HQ\+\7",U^$7+Z_5>=I_!@(3#@"B9^, V!]Z+EJX9A M_,32)4-\);(UIZ#V%BH]U^TPKK9_23H?)#EO//= G-XLAR0WLH"W4E M'*=S]_R7BXN5/3X+?OEQ%,)U24_-G!["QK:UV /[LYK"\_L?X*YGHXO .X$ M!+?_3OSX=^)OY&*Y'A?+QU<=G'K'7Y66]Y,(0#QCU@;;[_BW2O8_VG2]IHIJ M.U[CV T3"M,UD6Q%\ZCX_.9^[/\&GY,N8/0"1YPI=&')RC]?9KP!" M 4+!U:#@LAW#^V_(S/BY[TQ!$/[?ORCAG[>./B(]'.GA9Q7D^;BP)8("@L)9 M0>$MXYT?(\GLKR1Y7T7A>W=QSSOQ?>XW+C(VNI]F#\[R5>% 41SWU[7YJJZN M7*VSD_3-JC#_97#K3..BO[L(_*P]&T%- ]F225&6PO.E,V^O.F4;'WG;JFJ_R5;XOANK* M#@ND8C:I>B'Y\IT07A%4?9'4'0N\?@[I>R8V*8_)E5D"_@RWUDUSOFXL,!%/ MEY_B\CA%YDGN&.9?L-@P]'ALX'%O+][P^-[(&99ET7_J(^>[#RJ^9Z^LVUE7* MTK8E*(Z*B2L5'X]&8;3YB(D^")J_:K9_$E_/YU*I6((4-6O@;/]&OL,+\AU^ MGMS/2V]:]>"TR]3;(UUMZ'BT:#'#6EW&ID:O.@X6O.5U-"KK,7[":TP00A%" M+P>AI^LY]0*(FK$QG6U6%5,=#OFBU;)D)5@E$*)LJI5=>,NI7^6DB^G7P6GI M3FH:6U/,\G*&OK0BW4$>5^1QO0J/ZZ5K&3\@VDX16O6D/3Z/,)FS&5E)G+ % MN\XM>&<[$%M\5=2HK#L;:;.8 MC;IF.$T@T.%E*"279_$KN3KM5DLQC-B-'1A'R/G9/2B&[RX#, =>:*U!SO%# M=(T:,IW.RG0ZS'GXZ\+TCA^@RVX>D!Y"KNJE" 2-%'RR,K9CEU 5LE6M=R>F1F7]NPF<.>"JMZL/0FA&:+X@-)]0NW@[ M.)?L%3>?^VR$#\T>/K(ZIE-O)A#.V5UL G%X%]O?5^8V>:"03,',,BQTT3RZ M9^D=[:PSOJ?@XA6?+HATRP-360^\=.'"!V O[K'^'#EBI1M#N1G:GKU5U,)X M-[!&V$;4:#R+^/!YZJ3J#B(/1!Z(/#Y2S_HS]N"VC8%DD8.9C)67='4[$!M3 MW83LP>XSHYC#F]O^6+?Z$&%_^=5MX4_E,3Q)<#\*9%#;=73-$[KFZ9RTIRS6 M?HO6?9>:(S17MH*P& 0+%Y=FM<4\F$J#IM_1:")S"-%LGA30A6X(Z0CI9ZWJ MO CJK:'.T?-:W,#+88MMNNONI*QF4$\U&I[/L_2Q+/OKYIY+!$!L@=@"L<6%:E^_01=+ MB]!'DUJ;5X?U0+ZQ2%GOM3.Z@-XE@LASPB_SAOX=Z>D.OCV>'P-X_R_WBCOY M5LY Z2[&CR&$7RE6]'IST%.-V!.DNYM87-4SX]@O6>0?NSEK/2WS2#+ ML XB6-05S4$(H*QDID@61)Q9GNX9%O1VP7+I[+[!KZ>9S2(.(VNV?68ZO]6; M8VJMO_\G_>/N]PP'Z &DCOD_/V\E!;_DCCCP_WV[L^')'2/I.^:[GR+SX*6S M/__[OQZ^_ \NPPS?\8-O=X3U8%;SO1I/9MQE FP2 -W&]%GZQ=]T)]&WX>TL M>?XK2=]9HM_N20^N0X[YRO/_F_OQ(UR-@Z5T]0WV8,%NF1)SP"SZMO^MNX\R MEKO[S ^S=,)O 7!T6 @(G_W34[-=B?SE-Y+XRIYH4QY)&?5C"_ZCY^8!),I_ M]17IZ.G]R]+*/J0BB"@)\FX*F7N)U%\BE3^OZL%RN>GJW&XR07QE[EX:6XW/\!#MNB,6N MG*LHC6*U5>[=EH966]*>5/:SD)163VE4BV)?+O;ZZ9]-N=7O*26E+7?%?C7] M5XVC*('\V(D\>,GW^]T)/W*S?"7ZNGQ-%7@IC\NJSV#MZIZZ6GHQV&J6X7Y'-@8(.6' MS-61.3V6(+C[FYNR<12>\.4/S\6W4TGN6(,B"4X@.(WG4L*@ <=J$WQ":CQN M@*F!@RFC3V_!IM_I;%.WUV3:5%U4AS,Q) BASQ?*'2W5*1^/K$6M+E>4MS>J MU&1:Q?:J92T%.))_/+):%OH)5Y6V:MGNC;<17NMC:U,C#Y]9G:Z!R:WBF:VL M91 RD]ZNOX C#YXY(%:>.@_,KAK?N(UETEY5MEBB48?/G/<[2=&3NEUY%703 M;$C[A1L*CF0>CZQ7.CNC:93&MJ14^$)(J&6MTDE''GQ[/Q2K"[?5:MM 6LM+ MWB"E>62F(PGB\=!NJPNB@C56;$S1J99(QLJ,[&BTAC\>:?>UKQJ(VV>&]-5_@.7K>YC9PY.&4ULQ2K?E)+-I;KC!Q-Y4N M+:<[SQQ.:5JJ.B6M"1P;HRIR6PXT,AXF&GLXLLV8 [ZV6Q9MO;!V3'Y6[94) M4^,.1\IV!2?U>NC+VT7AQEG=-*; [FC\X6-AEBM"&VT@Z%)0R,;QG30MJU-#^WB3'F]+-"%B9D./;93K?J: M;G<]7M8IL\XZ C;K1XE&'-FJ:&E.=NO*J(C7D])-A9(7LUHM'7IDKT85[2:T MBW$#UPV\$\N+\8W:38<>V:Q9NRQ;%:,4R1C7]C<;N=%H&NG0([NE]5;>SMF5 M5[)4ZNXJL30;.<4.''J %#>,O63J&K3-NL;4=$!SL#6SIQY A5D-:!/7O+H\ MQ-;ZA-\,9NQ4A$,/L,(TG*[*69R)K[9SI>+;8>T&9$,/P3*H$G8XYGQ>+8>3 MD..:[(KA.QIY1%Y&TFB\'A%%?2K)3]CLB+,:QMA-IN-E'C;LMM M1GRIU@D2./1@"9;3B=7?N!ZI]G "VTINI>YO.W#HP1(T:+\W+BVYBBP5Y&E3 M=9+-<)>]P,$2K#O$.FEW!DU\Q;^T:VE.USX MV=##><5XU")EJJWB6!_;E36]0K(I9L@C2&0'R7B!KV6MY#HVMF-?(?V6E3[U"!)+D\$,8]/EP@%3#>JL: 8=(1UZ!%ZK MF\VVVXZ;+HXU!<82^_WJ,!'AT(.%)K[9;2[M7*W6HBBEYS9%'+Y!RZK7(FZK M5.V8%Z-%2^P!:6;"H8=OT.B4!_-1L3M1+5J4A8JK%MMZ^M@CO.'ZH_ZXNNTI M*EE+OYV8\[ND8,*A!V\0=%98,S*#-MX#RZDWB6[&2LJRZ=##-YBK<;.Z6_@$ M[G+&>&VX\XTNI.MU!.'6O,_:;7RTQ:6XR$C*;#)OC-*A1T#CM@&Y+=6T2 6K MI-BA%^DKV.F\CH#&H2G3X^MT58W-J3FKV%I4&YAPZ,&[JHMY/(Y8%\@NWIOM MUEV/((K9T /Q;HO**F;X1E>V5#Y(Y XYGU$B''H@WC$[60%Q1)IX?9C$[CKX,P;>['QY:#-!)(^+1OIS?ON!?!1+MR_GMB_"5>C9A#^T+XC&T+XC'SGU?$(^= MY[X@'CO/?4$\=I[[@GCL//<%\=AY[@OBL?/<%\1C)]V75Y;M_-)=^2F2QY\E M\'=*:GWIFASD\KQRD0S?@1_^OR_,E]\M02"_XM1[]H1ZR8(]6^@U#P#(-=-_ MF()O%Y!/*#A*57XE*S]H\)RB(7:\<(6?#KN=3/?VGD#IRD0YB7R1* M)Q&EJ^+G/^6B,P75K^HBGY6 AW>V_GQ_Z^0)])"_BQX"_TIRUX0>6#E]*#4N"[L!8=SF%H17,I#M.M 8&\,9P8+K 8AB#]_^F^P_[C M_AS]HL>.6TNU:+L"U]@X"]I5.K#D#W9%)/@\21UV?T4$@ @ $< +"(!X2 "$ MUE2-M>:;^HV]W4TCT'UHPE ;,;=I3&S5'N[6-9W$[TX;E!F.@-XL09! MYQF60 2 " 1P*L(@#BJ 9#KBLF"15-38R4!= 6S2W;P)WW?WX( PEU"$=/( MG\@8Z#O\VNSBC1EL)""DI@Q)YEGJ)'V1$0$@ KA^ GBD =1;1,>S@3M4)9'N M%BR>):+DHS6 ,N'7&PWCIH9C?4)=:&+%:XV@!@!K?$F2R>/"X>U:EQQZDOPP M:XIG^OXTA&ZFZ27X\\Z7O#[.<_?+-7FSUNZW=/;!4ST/;GL7]P8$J3(K0XC" M7J,@6%L&"'LI6(]0F"<%!2 B-.:,,@R"/( M?Q;(G]:A\2K(#Z. [?L;T;2'DXW3++.%5B> #;<_*AJ",BZH6.!4>_::U_L;,X6\\.4[00EYDCRAIP)A'F'^LV#^M%Z+ M5V&>"R-=Q9:T)[MJ9^GS%F;Z& MX&93B">![??GQ/%XG9=M['MCA\(5-":4!#4Q8?*,B:CP,^U%D MGJ,%Y#Q$N$>X/].PWV_CWF:&6E=MQ6.[C&]V;;]N,9MEDN*>37%/Y&F:1KA' MN$>X/].(X&_CW@UMIB162CV<[;)S;JM0L@;,%/_]%%Z1K$AM1',!8 M(G1>I$ODA;=[;OAAA *+R*7XX2[%*W-#_(0Z6%H1'J$B9B5CFZHK^[:;1,R6 M*4WQR#ORED^%%=5-(:0BI)ZZ7]L+D(K-YW25BT)9[6%&M5EK[!I<+TF1 MRF9()4YH*R"D(J2>/5+?J;':"Y Z!MT;.ZG."W9]ZRWXA9@4.XF8(A56(^=Y M_(1]4Q%2$5(O!:FG[H#V J06:RTKFNX4T^[Y-4(?%C8M;=A)D9K5$.<9^HHK MB.],/P#2WU(-H>Y?FBYR,)W-=D/?5KK&,",4Z-J@$9T@.D%TE;>F M$P]4Y[0/5ATUEI68]"K54%(R.LG\+R2%LJD0H2!"N5['SUL32FB)P=+C1H[= M4T<[N6"4>\5U!Q)*U@?_:I(U7M)3KN]'NI/SCQ2&OV%_N4])F9^('Q$9OI?W MY[Z#PQW]':&W9$M5W1U1+^#ZI%ZX<2=;@0X3C2"RLA,FC[,G5)@0U!'4/PO4 M3^N7>0G4;YI8W:Q/^X;<6Z]F>.(9-:XI0JBS6849CS^GRR"H(Z@CJ)^!S^0E M4+>+DZT6M4U'!4%KY071,#3ZV:D.BTN$/$B?8(D\15UQ'LM+O!8_&ME9GN&[(/>7XX?AWZ@I/G+] M(M?O%7H[JAG*&RG&C]!EK>HWTR7 8MS:15%UN<#88=5,N1+Z._@\P3S7Q!.1 M!"()1!)7X2=YEB14Q8EURR^*=KFA3U9AAYE&C A) N:D,'F:/&%E'&()Q!+G M./M7]>/+_74=/I:?:"*=>OJN%A MSWWY?C6U=P(01JAR'[4'O?CVH._H0GR7<.0=.)]N!%HVY\MAM5!T<(E4\>)< MX1K66-0(>E]*3U.'3;V0UQ!!'$'\7(*)OX:X1\Q9OBC(/#YDFS5Q%;DF$78@ MQ-DOWYD\2Q((X@CB".)G&PC\-<2K?<]?-4:CE3ST=^9"7?3)*9.=XL*7[V1> M(-$ICB".('Z^P;M?0WPP%+Q):^ 69)=I>:-=PU3&(($0SSH%XGF6?3; ?TF1 M._8P2!"OCU4'7+IU2'7YF+(4-KR/?_G](,?1/9DPA+G#S;SK;OC<(E= M6;9F@9!JF1K!0-<#Q[ G5%D0_A'^/PW^3YS,_-OX'Q9D9IZ4MG4;"[2BQ4\7 MVVXM@?AGOWRG^5.F*R+\(_Q?/_[?)TOYM_%/5RO,MJEW=OAV4=C>E*FI1RTR M_ M?O@OL*;V2"/\(_Y\&_R=.._YM_*\;;7.G+^0N3E))5\(W*I9,.A#_V26$ MS_LL+SQWXA6-[HYX05#-."K<^,2%&]?F0ODM]FPU>]A-MX\U<5<:M'F[.&ZS M2U$C6.@](?/$D9Z@*.2#6 .QQK4X7GZ+-:857Z+-2HU7TL:"WUD6V9U2S 5K*UZ'<@:6<8* MD=HHAVV]+S1C9?\5U8>M_7(3D*XOR"T#'])$NN7I7^^Z_T7Z!MY8@-S9J%3M ML]RY^TX%+W>]+^ M*U+Z'I87IPMZVQS#]\)"ALK]N#Y$H;R) CT]2RQ/#[;5 M"+AARG9P!H'O.!G?[5/SCC"07,>V*^-)/&GE&:W-@@Y@*)4U=$99=AGOWR7A*\T,_4*6A$\2*&T-X?\,\7]E MS>[>]\QOT0'8)INV)O?:[%8MC#=2>91 U&>>#"'/LL_UXKWP7)7]5_S5OO-C M0,^&!V96=#J'QIG-'?E\D<_WG#2L=W2EI-1YZ^HM[$%_A![Q_H;P=AO)LE.3 M;MZP)&LZ$42-X/<]1)@C)A$*#R&J0%1Q+:DH+Z>*8#VG"H*,J3@VT>K"N"*P M7*4#J8*%66L,?N@Q152!J.+S4L65W1OY-%,\Z7(1"G0)QX-&W[;T1">\I3]( ML$R[$+Y\I_/TD417Q!B(,3XM8[R_I_<]7#TO42YL-]RJOI/@,M#Z"E,QE-9\ M84*FR J*\@)_-?DF+ZD?:H'HA)=-?DH>_ GV5 K[J1]/'' 6K/<_)RJ?_(!I MGH="]#ZU/R!Z]KZ6[<@+>1OS.'E5242I5F*-FV[*:0+TK:3:#XWNT$801Q _ M9^_(KR N;"?S:H$@FK;4-73/*N_874N$$,]J83Q)[T9E*15!DV"K]NK.5-S:B!>;"89V 5HHG#D*4MI$-H1VJ_[0'^?:IA? M'.C82&KY5-<@5:QP0Q?KW,U-8="!&,_21:@\RQWV-KFR=)'WASORV)YO,^KW M7X8/ZUI]7LN 0(% @4"!0(% @4"!0(% \3E!<4F17?PW KNY)0ARX5P/P#<4 MXT7U1N=0;_3$W- =S4A D8 B 44"B@04">BG$- +#V?<9EH6]- RD)E]U6;V M&T9CS^NVS-?&7XO6VIJ"+/J:696A-K"*?G5(A03NSN9%KL.TA&J2O''B)/F* M&*RL!UZZAF$;!#WXBAD^[V.Q^'TLUB<9&:,CNV[K6G_>*-.5S4 SM?1]J"_? M\:_$1*0XYN5;7EC468W7:+&=46&N!$AR%D(GH#@.$]RO!^SL?ZK^;/GF*0ST:UF1V)'1O;(7T0#7IK=KQ--/<818E_I4Y MS)2^S(C?K8>A:#EQ!*;(LW>AGKVWXZ!/1#@?X2JX!=H1RADZ>JFT#"J>O.JU MQW+% >M@F=H1U*VS +7S1FA%:'U?F_]IM(Z+SG"T-<@Q/A16[84?XO5DW8%H M/;G5C]"*T(J,]^?A^J3YOA: N^$FJT@MN\NR[BT'H @5>^H=S'<$7 33Y**=V98BR4:2C20;23:2;"39 M2+(O3[(O, ;XMEG&GQ&(5X2Z2_)XW'=LNO5WS*G^TC!ZD8EC7+4,VCA9:K?? M.@B(O\+?<6>FBWLKO16[$Q HL\SW$2H_;/6GLA&"@1(-/7XMJ[HH# ?M*E'' MF(Y&,C T2#%YBL3S%''87QJ!&8'Y,X+YU3'"]P1S?TSCK=&LQ\E8?TU76:,M MK_D$@AG>0L/E:9[*4\_Z-1&8$9@_ 9A_-X+XGF"607E<5Q(6J&R[.@P#56TF MF@C!+*0G,YWG>3[/X2>L\T%@1F"^(#"_.JSXGF!N3*)93RPYRW6#/Q> MG&1J-@PVONAHOO"0XXFR@<]F?LA/]VG\=)_%B7"+U0.2.\)O[5V?6S?+^D;% M@E69%;N[.!J7!>OX &U.ILN%TI0QK?4.IIW;Z1)5<[T M@7=R7IP9 ! /(!ZX&J_'*W@ FS!.=[3A<+P^*P1%C7%WSEJ$/'!BO\?G CMR MV'Z..;^/9_>\YHQD^W/,&4MU_Q<&M*DF".07R3(W^_X_MV@YIL>W_SJ9@W*'NP"NJ*7EB;NC>0"2@ M2$"1@"(!10**!/13".B%A^W8["M4+P#IR^[ -#?W'?C=.5.WO#"?\T"4\V>Y M2-_\)XQ_?I'LT=S7]"G_.)8'L/F^92N!X__[3^0OL[=_M!3IQ^FW_47\GBS>)928&>C20_O\AP-#TL-YR?&3"IB:H)PR"/RP -)G M@RXP'#T,K5FZG?!EQ5D$@KZ^.>+SD*BFT=IR%06O2VK'VBW&2:^:P/E07[X+ M/(<"%HA'$(^D/ +G39"HSR@2_T\I_A<=W#O],5H5[IG6]YF6T/(VLGLO+)M[;R/Q=T;AG$#Z8@P/:#OQ'+32[T'6N:^Q>> M_=\G6Y-;.OG@-3D/+>4\C?UG]),GTY<8@-LU?0PPO%?#QZ&_&\R]M:E1!+3W M3YF?^+G @PCE.@CEK:W^S[7C'Q\C0U*.C/NW.#;;Q?)PUK*D.=YSV$E]WE([ M5="!QV9JWQ/TX0VOB#$08UPQ8[R1$7\V/IO;)L5]/]*=E/[N(_1[0SZE1"NE MMP"$42ZE-I +$WWYLRF/G'G(F?<)G7F?R^#.-(4#]<&;'H\)]+:Q&'4\JJE* M#AX+\]U8U:U49R S4SN/XR2*"2 :032"@NM(_#^W^'\N^_MUI^B2,C9#7F X M5<>+V&1#4=)XFYVB662=)%!/<40CB$:N)+)>\@.0OE?.B(, >,8V%P6Z%SH' M4?83A=$I%$:_;._=6_<9/V.GW,'<3]>!XT.M\5M*D&X9H0\)83\_J#/\H ?Q MGAU:(%)FJ3;1]H/L'Z(HL"9QI$\OJ8Z#E?OZ_ZXLV8+ 2I?K28KFI3 M>EW@3(VBH-U.YG&*/V&'#T08B# NWNYXEV9<[\T7CVD"'VV&:VJD]6SR9FE* MY'9 -+0$T@2\\8A!-Z)#G1/OKE04!-PLLHIJVK'2#(M#KP\F M2<86 E0J* $I%8@P+I PKJQ%V$ ?QSF7[L'Z?=T3"]>NB81;P"V">C_&&_3[S)*PO476[V9&WIM_%]4I3IH:9 ML74J_]:'UA/]9_+3=R3[1*2)[TS3?_QI87^^R>_GTJ()"AV^714^E1+&U(]3 M,3T+8GW#NT,^>IKG08SOXHXZPHEW?'B$]"**;DR"ZDK%8W_*)RM/X<[>*(, CP"/ ?[3OYW6 GU0:4G<8$G5[-::7?7W0YBO##@0\^^4[ ME\=9!'@$^"L#_#M&G-[%Z_(\XI^,)LE6/!Y7%U/5QA9$?"/MRM+-)(.^ ,]Z M 4=Y/@C[UX;]*W-[O.ZP#Q19M^68&^##H=M/GQF4*VP"$9_=&@A+%)_KHI]Y M-?Z=^4V^_V=JK?]\L[[^D,H[>?WN:''PXS?,]$&2X'N!>B MG!Y'?@[/X?![]6QI-9:E.(&:X!K/41.-ULE4L9IQO$:RN# QIH F<#X=_6\] M_2]]U;L_3X-JZ-.AO]*9=/]%_)T^*?//W'IM(GV3 YME*C$ ?OH_%VWE!H%7CCC"1DI:HQDQ[*2PG?#2C.^GA2!YJQ;ETH4ZWFA\>O7F#U?2, M7N!N%Z2B#C4P]'?KCF;+)Z '[JRER]&W<'7GWBK\'7^R^'XSV$]"=;YSTE ME4$9MZ>5,K6406FDC2QN4F)!*I5')/(3(OREJ^CS2H%SNVQ/+SHG /S*SH>@%U+'W\<<+XZV)IF8!(ZFI)U\M] M5JZ;-K$LS 1_GB3I4%FAG5_'W!JO+LCT\G/=ZHKJ=8(U"N)W)2SU= M7>$P+^L1_)Z&7;8+<&U^QE_^BFGP1+NSJPI%7O*WH;J=U6NKC=QM#0&4_6/; M U?WG0_PLRM7>8,UWTKELE+$V*X=KQI6/U$[DFN+J;)YY)ZX>T@\?PX] 8AW M.Y!^_]*/UU7W8!5,KJWA3>(>GX$ M]NJJOM=^S4!W0&_9_)%S@X)?\K/GXL0[0M(/K);]%-D'+YW]^=__]2+_ MR8-9W;I2R,R#9P)L$@#=QG38+>N;[B3Z-KR=)<]_)>E[/\J]ZP^N0X[YRO/_ MF_OQ(UR-@Z5T]0WV8,%N_85[N=__UMU'F:OO[K,#_\Z71T_-=@4Z?4CB*WNB M37D$"NK'%OQ'SZ6G;\K!_^HKTB.AVS\$_IR25$JNSC\/$W)N/TIQ!2D0(D:" ME)Y"XEXB]9=(Y<^K>FRY[EQ;O$Y2#)AJ/*O3&BTPC*;C J.QNF[0-&YP!LW> MNK;>9M4.TH^>8QN8FR06NW*NHC2*U5:YE]\7M%9;TIXB]K.0E%9/:52+8E\N M]OKIGTVYU>\I)4GL54H-9=C3> :G2>9C)_+@)7,_WC*GE'+P/7/9B[X3B_\J M(>POU=/CJ972\]_W25]G\%95+SU _#A,3^KPA"\&]1)KMGWFY/B9]K,4NQ<> M)K>PF]$SW #,3)O@AJ[14R/]"5"4QE IWA!(/@9=RNM^IU[WPK46F%3&\?V MMKM9MS5B+&P#$RIWCT<6-9UI2JX7J\-MA9OOYLJN6NEHY.%(2E_/ KQ&)W;L M]G>J%PW'$MNFO[:'$S-U# [&+G1,;W@:U:$#S>K=M\N%@VL"T<>O&>=*.",%(@%-2Z0 M_2U5;]=6]4XZ\N ]XTV?&A9;2H#KFC-26T9[;==%C3G\=E[GQ]-)ETAL164J M*WQ,+YR%F:K(!R/#\LXQ+:MBVG&IOM*J)@$*LJAQAR,+\S7>[YN6+2O1HMAM M.$)QQB8:?SBRLR5GQ75OI]C#UI18)1-]MN/,="3[>"0H5AL<[;0(W.HHQJ[D M;LBF;FK"X3-K$ZE/E)A4P=<';;*0-$163O>(P ^'EHLMC>RXN"];]GCE+X*Y M,MN9<.C!]Y=K]LI82X0CD[I5O)%*(+*M="AQ^-3ATF:*LVDI5BVY2U?6M<2( M>Z)&D(=#_<%JY)EK8.)*TI)F-,:(VW2?B","-1R75\WRJ$?(O8@D5[-1S]TD MZ= C$D7)P@P+\)4HK[I&F=^V KNHIT./;+\WXSIDM>4J,C8&\RHG69-9(5VL M(_OO<.N2KFD[3@6=A)83HCJDK'3H$0%H&2VE.505R69I(E+,?;-.A1R2@ MSA/4*J&IKLQ*DDQNL=+4)Q*-.+*Q>L&L#AT^#M5>;*7RYS:(52HLY)&-+00M M9L!)=*V-)QIY9&.MZ=*IBH['VJSJ,MO%+*HUY^G0(QNKQ]NQ9#05 MQ^[%1E\KL>7.>)H./;*Q[+S(-8RR3,E;IHD-B-K 5.1T6D*2[K" M@M4=5[9&NEA'-E8/-_/E;D-Z*C8C_2V3%.ILF X]LK'8J-9L+,F;G;SU.]LB M"U2^,Q;AT(,M,-EF$01&KR$/64U1-$R94%T1VO,'3[TI,(*O@=),Q4B^-A"< M=3#23#CTX*FKX$:3"I5ZV6:'5.*$H6<-J]EU,H>\+D3%&UTE';D>RN+ :/0M M7A7AT(.G.M7-:+UC00MWI2[=Z:X\CU%$V"KW<+=Q) [6DMML8UAW*R4:=42RNF5CZE8;B86#&Z57ZXYNUD%BPJ$'Q^!- M&R][YJ0HVMM!2XOT;E/N<2(<>G .TKLHG#4XI:*2A=6Z2T6";:CI4X_(J]D5J4:@V(Z] @*FLM!/=ZHP5(F9P6^LZM5UCTC?8$CHKUQYQ).80U6 M!E$@B5AW/FKR"1QZJ-]H&W4WB<:^K0=$5=4'I7G/S(8>O*M5:=RL4\Z.\&WH M=NNV0FSK;#;T#C"9^^S>WM^GZZ2VOJ,O0_#M[H>'^B^TD&]M?F@Z&GN3\Y^' M3BB8%7'WP=X4SS[YR6!_D/%S.^;0'Q(%=R_V(%_CRTLK:3@JL_^?SC!Z8 \_ M>+Z?/G/F^,F=9G[W=PPF-WW;>S>2=)U^Z5AXD,1R/U2?A+X31X]35MXYS^W! M[[W<&'F8K/)GJ6'D5XI&^W)^^_*K;$RT+Q^S+T+F-T7[%^?*["T9]Y=@/[>S*O7Y!GXL2]:Q-KKG/\I#OLSSV84,*S]\UQ)T\+GRX M%I3]J42=*>RX7ZW(E'=J.49^R(Z_JJS^9Y)$4HZD_+>IJW#\[&(]\?5S M_5GB6B(-K!TUQ_625%UZ98(3>J*6-?MG\AQY>)OT6[1G09B]%LR>]F:I7V'V MRAJM_ 39QT@=C^52+>C/6BK9:HW&-_%RXL@P39G]\IV@\BSW7!.UR[:$]\K# MCU*]$#8W"$"Z48;E[#L2_*15W/5%,*!YO S\M04]L)-MSK^WC_6']O%%6@T7 M0G'G(D-O;$HAVQA)^:>0[P3R_T[$[ M\#5A7V.*/[2>$8X1CI$%?3(+^C=Q+ V*'%CR[;K:&RPV=HN7;7$#<;SO3W[$ M"W8MIO6M[O%P?6"_!S\5%,O3G9P5AC'(3:W0@!T ,[5D"B;1[>>&'\*>$,BR M0);%%=C/5Z;3/,2T,BOM&QQYI@0QFU)B\1;3QWR-T\6DWFK42X0Z--FXJ"^< MGB1V-"Z[H(5]KGTSH@!$ 1?L7+@R=>@/* $?%.I:60@]_P1-2T93")RL-L( MO(HW58G>/MIP3OJ/Y:V!%_G!-OUFL,3B);+;+L%N._L50'Z;M]%QC&D 'K%; M]0ZR1\AL&)9VS2+?'JCU:;'8W(W6I1DE:CS49X@\19_D9G&$=X3W,_3OP#D2 MY!]'2LY%*;T/GLQ $("';8T!\DP@L^0Z/!,'L[WPW,0[M.Z[<_?UC;SO0%[8 M7WSP7,(BKH_;$3%Q25R92QXV6&Q&LBIJ CS*Z3QSI-OYVR4L(AKX5#2 O!.G M#M;\B@4.LI6%V,8(>>BK(%IY-^W*8KQV.EK6IY#.L_@O+Y:[**=$+_(-&YOH M(8#EGBY<&Y0+@FP3Y(LX3Z6F-]<#4(!HE1Z ]0B+U4=F8TAT3!W'IMLA4>F- MFG,Q@5V/4QV&9/,4><((RV>6>(1YY(]XI[.[#:L.0LAA\-Z?OV"Q0CH)*WW^ M+/#=OW.P7 %D=S/">VON;G8$UAIV344&"S)8KL)O<64G_#VH2WY0].-)-(L= MT7@RA#JHV?%FS(F,NE6V?=^Y67#N*H%7%L!SGCYAON+UE,0Q:N3>=X';(? [K8JLU6JYO93-V* M\[413PB7QSL0T#!_\T@*]Q]K'N>B7M\J(U*F@H0YRWO8]2$,011F52R.I6?H MMD"8SYI%P*Q/-Y7K["?=6,76OI4W:A"!S+(+<<<\[@K^:X[\:!% N/B$N#A_ M=\7EMY3@LZ\03QA;0 B]$CBBMHMO:9!7/2, >@B*8/^_5>\.A-U[#!ZK4) U MIBZ4)XI<'RYZG:7@U -XK7;6B)'*DS2%&C$B*",+_#TM\-^$ET[21THGK\?XWNL==[58%JK!0$;"A1C/Y\=N[ZVH/$#M M$5IC)%L"0(A9?,L9$EYM8>X B!K![$,$-$N@R@L$_L_B(;@ZU>9Y\+1=S=AMJ9CH316(2C$#Y7,9#GP#'WJ$2-@RP.MD MR1?,B3[N: 2[=["P!(LR'!#&S]J_C@,]2WT+WU .]Y4'" S++WMDL^\!+5C_>9_/!DS\OL^ZC M@D_M/1_<<>G]1;&-'ZSP'+,N"(5<6).IA:]Z6[8A65'3#5+M:=\1E&:0ZP=Q MS$>ZALZ88ZY>:WL=Q3QFEOER>>.T"BU:U:E>Z): J"ZF&;.D.IN0)X\4R5RD M8XG:?T7KI=>2(>/S[$S/2L:/*VFE>)82F'F) M]T ^PGE4*0[Y,BE7\&&J5XE1QXCG20WR ^."EFA+B@W=2 MB_Z(#R;ZI#F8N!2C@D[%Y#R76X.&"/D ^JWX/'>"QF;GXKBZ_8;)3]^0 "@N MZ7L[4UC* _6EDN,G8:X4^&X.ABK#3%WZL:K?_O/O"2I(0.D&5YIKA&YR15)^ M_4DU%U]VL[^HO!T'QEP/ 2PD3SMK% M)'W/S#K/TQPJQ4& /O-4D?<'](D;(2^7]B. M%$#8 I$R@UZVVW^9'B'1W>9F5*0T;2+K.+8#E9UE:LM4*\J:F3),'J>>+6M$ M9(+(!"6!O'W;\[/(98C#[.*U[-;4$.4QH+CE%>+8239Y98+F!7M# >-U,3*^H-M M[R++< B5Q@;TXRLS*8/@$15\NUHN](J_WLE#=R'RYF)1&GB)1F;-16D^G]I- MJ-X P?>L,QJNK%[@-?!E7+K06K:XE0JD(I E*Z$\QH3PA18TQ^89^NV+),]% M5;S3.JS4*%[J#FQLD84QX=6I[Z%](#OB4]D1YV\M7WB\H0ON$*S,?D5\@O*.4#(OU(/PH6'$UZ#?-[A!C?QS,1L96'V MEB-+DB.G Y'_C,ISF1U'GU-P(A"X.1-0>;867E3KEDM*8+),4Y:;+'V M34#V,'PE",N&65J8E69JAF4=1)E4&3EE B2"[97 %M6%G$JG> *V#CXMQ:#: M%.2XYYJ%V-&=\DB$L(6J!)5G^2N^#/4YY<+RPG2O/ /DE@%PK=C-S>YR#Y - MA6PHY#TY(S7%F ;@)[*KWH&WOP$ZD0@9(,O! M),EG&_A>GC-EOTC[VM:E%:6*CP-[E2(O"C+'D!?EA%Z4/0>!!@3;O=%Q5WAZ MC)>F8GNLCL.^2@Y[ 485&V5<2S1RWP@3E8P@ "-_RKOZ4UX+X'9?YK2%N#)L M:[*8.!BS70X')@0P[%SY[(V0U^!8Z>L; .]:L;+RUW3;/+#?],2*YCG@+AU_ M"T#Z%KYAYZ)46POWZX#24Z[(O#K[14&.F??KKM$%CAZ!:=]/J6&8DL#<=^"Z MEOR@-]<#4$AY=2KY+KS8*GN[(YSJCK?8KC.4!^K6;3;=JB+32CWE5 $J16R> M/')3'7+7(#YY5SXY.S?/=378.%9J$X*4W5(&W.;\V2Q]E&?>-_!*]P $29!N M5Y";6N'^.A9D*EV"J73V*_#A/I(KKMNIAF$,S2UEEJH$KN_UH)UPK/=6;5Z/ M>JHCJ62O79VI19/LLPE\0Y@'*^0Y_#""@^"/X'\-'I:3'>SGY4FXN_/V_G!/ M*2I\PT,L%?W9Y;@ M3]5 #_76_(B@0'K>W\'WR!F_#"9]IKSJ^3@F4+.:TYY%LUI'H_:],_,,A>X; M04EW%RW:J,U"97X#+4\RA8P 1"2*2]ROY.&,B>7\S MXT/Z=!]GDB?[=!=V=N0S]KBN2J%6JI-R;19H(J046"-"YX7G[9 +\JCLOT&> MS8"1I4^D"PW2%\R!C3'7/1/DTLT#68GL_F8T;[K_ 5[?NDY7#257(/OKRCPO M5Z9;[;&MS.1;1'=30"L>)$GXG_P#QUT G:E&!*;9]6?>].H83PSTI M6N'2#W6GG)YWR_0WBC#ARHLL+P9390GVTSRFLW7*-^T*QJU;ZG :3+N1PVUU MZ.?)NK 2-(U2.!#)?#(GST6K76=),JTJO\#<]FRIZK1DQWTGV+ U$9),JL71 MAQ5UU^)?VW^#M-??K/?0W,[&"J9^2;3[W\,<,(NR%[K:GQK!1@!+&8M@_[_W_/J0L_<\_IQIW$WD16'E-&5\V[MQ0BNRQX5) MJKGM^]#F!0%EX7R\M^U*:.4"LFDN6FM[=U9Y3"86VU!HO(GKLA5YENH[BT42 MB9!,H)^-S%/$MBGT.&_B3 M.]K$4%-F&D'"'.&,/^W9FI)LU*D/@CG;*3I;H?R7*[7I+?:YR,"U M4,M9Z5WG!ZAW8)*7I(I]:B8AM*"&3R*+$WV;'9=$I:!6HL:@8)_>]7L ^7^/Y.?OB$!4#[2EW2FZ3_VXN72 M ;#"1W=R,$+K^&$< *B=9?I;R?&3,%?U]IN5KL2W__Q[@HQ7U)CC(OKR9"OP MJGCC1R\)@@6"Q8;O@EP$F^CN>]DAF^/S M!,U/ZIRX9HOA?;-PJAE(LT;7[12X+7 LICW5# Z3>!O@O1UE5U<3L8#+B49E M+6M)^K /. (Z CI*C#FKQ)@7 9TL&MBF5/5L>RN5%^I29'9QF $=IA>?("QS M1LI*! (01LA.N00[Y?V4C\]$0*?6-/8(>YI]YFO6Z:O=(9\K>;QL=\>?10]:OH=EVD?56ZSYL+N;GIK: MZ82@6]\,TN-[J0=9,[AH#D( "2ZK#H)W>=YUY4T'A5'Z0=;2^^L;SN;I=7XI M1*?6^OM_TC_N?L]P@!Y L9[_\_-69=45M\C$\?\]B3+Y\XZ0]!TJ[W>$>_#2 MV9___5\/7_Z'*HP9ON,'W^[2@!_,:KYWI9 9%DV 30*@VY@^2[_XF^XD^C:\ MG27//Z@(_7:?2@S7(<= Y3+WXT>X&@=+Z>H;[,&"W2)_7WVR_ZV[CS+4WGWF MAU:6\1G ^V"M-8#/_NFIV:Y$_O(;27QE3[0ICT!!_=B"_^BY>0!/[W_U%>GH M*0%_3EDP/9:=?QYZKVX_@G=?0PT8YKI"92#KK',KD?I+I/+G53VV7'IV<&LS MG1<,@N8UG2!HC0;<3!-80]=FU&P"< /'&8K_LO_6MUFU U_=_E]V6*U)>TI8C\+26GUE$:U*/;E8J^?_MF46_V>4NI5Q*X,?U7N M]N2.6OW8B3QXR=R/M\PII=S#]\R.'NZ?''S?_NB=6/U7WM2_5$^/4X403/^^ M]XB>P5M5O?1 \>,PU:EAZ=[& "D$ER#(A?/L '(S>_*M7_D4!_GG&5\;;/JU(H!]-AF$R9 M9B>U%@Y&)F2[UYI7[86L%U=*@Y7+\6!G:JD5\7BDTYZ*_?Y4-O!R,]75B/ZR MK%MB.O+@F=4=/Z9(VHQ49=D0Y\*B0-?D)!U)X(^'UK52SUNM1[$]I'NU2/'] MB>EG0ZG'0^GFM"B.Q=I +JO-*E]O;O!& WX_P3X>.JJ:Q4*12DQ<::Q6*[6T M521:U*C#2:V4(=?C*S-?M:BW- MN71)J6-OYHUD[T6CM MX/L]?U8A79IHJ[U^!0-N=5/;I0M%'TX_D@U^T-&8P^DKA567 M86>*)EOC0JSW^'4UPN'( SEA%,Z)\0$9VOJ8C9.&P)=N(C$=R3P>B9.%ZJ0^ MF%FRXD9JU&8JQ&:4I"/YQR,KC%CD^82/<+UI,+-E4U.& (XDB /9[[MS=TGU M*5M:*G,1$(N:EGX]>SBE@8Q72SH[ME5,G;047*X-S"4<>3 EK^VJJD'RO%Q6 M=&.XQ+JVM^JD(P^F%"['JX8LNXZZJO7;_2G..]LA?.;!E&9Z6^4WM;4NQSJV MF;@A(V.ZF8X\G%*_T-MB]#IIX)@>E]F>-=KVQJ;&'4X)*T[[':>XN;')1:$1 ME)E1+!23=.3!E)1)5R/JTK:BLF9-L"=*K$^V8CKR8$H4K58+[G82J#W55>6@ M6/(4 XX\?-'QBC'@X\&K")AMZ !+F9C2H]@8"*P])#H]J-9S0 MJHG&'\YI,VO61NWM_V?O2WL35]*%O[_2_0]6S[U7,Q)D;+/WF7LD V;?P4#X M8AF[,,8;>&'[]6]5V1 2TTDZS>(D'FGZ$"B7Z]F7>NJIYE*M=T?5U3J3WG0H M&8X,K%09]Y/EH;OMJ&5FU=FN;+.0'W?AR.!*BQ-[MP:UN,/J,Z56!4*\)]L, M&AI8:9[F4A"P09OK*V1EQ/?8\7ZYX7/!E=HD57;FFMSD=F;GT>TR^\6\SL"1 M@95625!4BT6K3O8?&UJJ_"AIG0T:&5SIDJ2GF0JS*; @GEX/*M/:8\5%KP^N M5&N[R=366975%3N-4_71LF?IT)21P:7VE^W,?EC=%,C"<#[L6L/*L+C8H*$! M3EF.XL71JDFZ'+#M-C-3,]F<@(<&P)(2*4OJ2W.>!,[,:)0H+15OR6AH@/V5 M63-3,T;E,KLKZ5,ITX#\/\5K#<(UT4N [(GU/@<*U=+FD>7MZAJ.I8)P[7C' MWH-54N2$16/S*#8R8XG;H*$!N$9*67L<<...FJZ2FZTU[T^2T)S#H0&X7% Q M"M5%NTN"G,%*;#F=-M-X: "NFFN.0%YCDFQ!(3.U7F745XH,&AJ$JU^UQRI3 M<=.DKCN]HFGSQ6*RBSIA!.#*Y8&U:THICDQ7I\-JDGX$2WV#A@9FK0CY>:'0 MHJ:L0@[LE#/16EH5SQJP/TS?$89.*V6HJUQIS6D=:BH.\="@ ;*SVL1N)N8I M=I=8MGK\EJMM:G@%00O4*54<:%<;6W(55U=,UUJ)#C3 U#D'I)Q)387M+"^0 M0JVQ[BWT138-#0N5""*A51:D:G)!][DXDTI7*]G^=NO@H0'B;C7 9,6>"K@X M/8M3[&C$CG,,&AH@[O#1ZM>M6FZGNLNX*8US^ZGF+2! W,?J/M$H<,,$ZXK3 MSF[3S[:*^PT:&I1;E^3K-6GUC-")5LIEV"TYYQ+;8=(SV9F[T%J;/[ M=2:UX@VVC8<&IV5'Z62'U?F!JNPK';F4&>]4G<%C YQ #VG0-5N+!KDRYW9R MRNW;LSX<>\:\.UEVV(;"2'-E>;"D6%+>C5L;-#2 6A(,+&6C= =L.>_&)8'* MRM8"#PW*S8)>-E,FF)/Q]*;/SO?YY28OHZ$!U.[5>$)H9RF9ZU.-SFJKKCI= M)./G3/QLV$LPD[VFD_T,_4B1M8)%E^'8,S:>T1>%;0E:(%9)\78C5S#5;'N# MA@;@4IB=4E/:CLX)PUI>T_/B7K)XVF#!&NRJT6IF:&6I##=. 6++':,-AQ[QM*/ MR!U37M6-.EEW*DTC+M2ZPFZ#A@8 2Q?*JW*?[M&D4H/,QCR2T]:,04,#@&W7 MZH9M[^,<*0S61790S3<%!B\@0#!SWR^URE8V0>K;N*.N5T+;-? "@G -YU8V M35=W/<@RQ7&-9 W"5U0H[J_9= M2^VS? 684HK><7BM0;@:VVESU.)Z!A3(KLWNZ65[CX3QC&_ E?KI9+FQWG.K M@EGA'7/SN"1E-#1H%F:%KK(>Y%AVE=H(/;-0\*'"?SCUE1KTF":&J:L+3!S\.'T]@?Y1']S"A*L(E>8NY9PQS! M=J!3K^VHG&0-3^8W MX9PSS=P<$A6'O^-HK^:GEP/>0#R]F7[U\Q_XQ8>APM0V-=+COJ- M+;JG5/J5M^LBNMR'+KF'1"0O(:1+)"_AI OYD$M$= D?79(/R4Q$E_#1)=)C MX:0+U&.O5AY%=+D/73(/9&1?0DB72(^%DR[T0_K50MB(+G>2E_1#*C(P821, MI,A"2A>:BN@2/KID'E)1@BR$=(GT6%CI0J7WSQ__.8^ MY=V0D/T-)(3[ -_[#G2]%R>!(OP;G>%_?7LN0E+$29?9N(J0](Y=I A)WT_< M1%-#7_[?#_K'QUVO5UWB/T98]O?Q]=KA,@:N#CEH@G:X*7$:\5P!1FO9U5#A)/;B=-;*1'@R7HZSWUU;G+I>H7CJ8*IJZ;AA=)]1U35*-P M*@K#W\,XJ-M@O&I$,?@]F8;*/5#730E>.GDCBJ[N:JB_G,Q#YE,IF@#+1'QR$SZ!JN6Z^+DPG_11:[$Y_ PL^W__DR>KKR@"88(8D01B$"?'I)E"J9= AZ5*GLWE^2Q%C M\^T9:H^9\*]&]2\40I-Y5WIX@H.LM&F@ZPR8K6(?1WF[0WA?J(F9CT]W^6XY MMQ&R;-]<\+-]8UO;Y)[=:U1ME7[G8J.G-WC!:=MU; 0H),7Q,B/R>)D1XW"# M*M5UM^I* G#4/MG.IU&S:OK'WXED+)%-Q!*IJUR'_+4%Q*N_#AETE[C#R*N9 M_BJ2_][+R>X@]K]UG1F>VL_5>BLYB?C'>NJ$#+I+B+C7E"82\=\2\:K217S7\=(XO[BFCE^^IC&:2;6F= M?ZROJX,BW;VNN+/%2G?#57H4"12NDE/3FJ)/92CNV1]_4W0FEB;3D=!_K& _ M9-!=0NC]HON027T 5.*?(1/[I\UT7'GQ+#OGY>5\%;#F-Y/:7-@QJCMBTT > M%6AZSUQ6!4 < 3% !(K6 ;$C.W+?;SA3 ;<[+'&Q@5VM]O! M!GB"Z:2T.?/Q,@4'0G^!P]&A RZ MRPA^[CX:+5R>OSI;9PM=VYIS(]N=9LO;3N.Q=.7@?$T@$-HIFU_ACVH6^?5PR5M@2O"/S&A M/G0K]B=HQ!$NF&_>5R/BXNMS\0U.Y(<+YK=ZIMN&^&"^?;--"(V M_A)=+L(%\\V;6-PA_U1T+0'-PU,\#D1I?F#R"3\JI2^3C5K.M[WFOJ7WN'1V MUY5S+;ZHMCZ>A891G)?D1J6GKR6B['1E($KS;ITLC+=];> 4\Y,9OA8\^>-O MBHQ1Z=05$U'?2U9NT[B,XPV\GO#5:AIVW0K\[$?@F+=N8]HOW)BTJ];%9162N0LR4;85L3+"!] MU23Z[47[D]2:7MJG#1G (6"$N]54AAPOGZ0D,Q*0VV3I(KQ\TH+&2$!NDP", M\/(YBO\B";E7;C'"2U02]UE3DL=0_$RJ8M6R=XT)/1JR@KO9T,U6L;S?=ODT MSD+2L0RCBK[Y M_5IA1$)4Y_?E27R;PK^0(R&,E8!A#O1>/PN]4(RUJ7>WBKJ:9'NYI:MG5>[C M?APC+5S;06NR!^8OWHP[H6#WIG#BW?0 !,*&-.\#:ZV(H /)8DH]()JR@6<9 M"IH+SKB':D>K*NG<1N11(N'_UXKT=S LG]^[@%*:G ][86XK. MNHHI=&H[N]>IR- IQ#G#M[S"+U$%Z;4Y@Z\Q1950;-L%$F0;"5@$T)>:N0/@ M67:16&J"<;D#P*%!QGW3CB';-KA%4\Z+!J_!7GV+93%'IW-2BUL-MOGB*ME@ MFOP?M.C$Q>,"50VIX.L9KUXG_S;_42F7+*\)^V;YS;TSIF26*$MMOQ%/: MLKW@-\4-GT7M.U-9,I;+?:W>G2&WXU&%:E2A&@E(5*'Z52M4HZ3SZR8!/84.?%,N"PFV*JKY1DH;I#$J3$@,M..K2&:/.].>*U%-4'QS5!T<&/*H/ M#A%>0ED?' E(5-,:%KR$LJ;UWA[NA;/>E_-*I3ZULS;;^)HKT)O2X]QLJ/I* MAEXI/M/_AEOZ^>I?GR6N-XHSGP--(BR ^WH3CDD8P"%P0I*P@>-H.!HAS)GW M1%0X^W4*9P-(>'>5>Y2O/N'_8+^0IYSUK%?M#N),(LOJPCS18!\+>K+&\#F4 MLZ:R=(Q,YSYQ*Z"0F^&H;CFJ6_X.)([JED-1M_QQ+SJ"8Y M=#7)=W<>[YZ>?J-2Z8% MX%()T;4L8(@[PK$$P]:\XF+AJ03\,V]WO28/%[YV*/2;,U]@]S)<.CZ4M]1' MY:D1^W_Q:M1PH>&3%)]&[/]5JAW#A89P%C?>/?BYUCWHU&*6*F3T98\;S7AY MQ@TV[.@/@JI?O)_LD3TX[8Q&0 M&P8;W,R;!O<3UJC.!4,&A&(0,T&QB#7*&J,25 G.M(:87:/?;,=R+YOR_%X: MQ$^$FA;$:MP;_)-:;@G;U!2)^ >)__?%K>GWHKB? KTSQ<.%$S\?&DG!MZ&X MGPF-I""8%HVDX-M0W$^(1E)P)COZJ<0@RI3^1N"&[O#5 MPT$6$&Q0!-Y_F9D#K)/^>BBZ@S'<(5P+1&GC:MKNYPHCLMQ3;+J0IHU%5^8I MRDN+QF@R^WF;)8=,5+TD:*2^@AG13Z6](B-^@5QH) 7!Q.BGDH(OF22]KJTM M+QLD7^RR2T[H9>O&O"CK5)K!MC;SMJW]Y"6AWBOR@B88(H@13<$2YUZ!9(** M>1\0I;_JIM/U:T&_I/KXC5/[C,VW9Q<\IF^VFE:93+$I-=[:37L#85,C6?GC MQ_1/WN =S6^[CHW@A)0XF_KUEO>V_ [^JAW%Z__/[IE;FI00+9WDK. M>"!S-9&2C+[%L^UX?*9D2@-]V,-*)0652J1+;E_*?&^1NK8N^67Q\KT!_\2Z MY/4V"(HE3CJ=UJZCNDG!74[;6T70NM?5*_75:BMU=HD15VZZR_1@F)]F%PS2 M*ZA-;C(9RV6NF$;\]MKEEY7B]Q:R:VN77]>&WQORSZQ>WKT#PC<60KHHLRLR M/E9'YBC!US*-/SR ^Y:J666W&:8R3R4Y93:5]6V6>G3;6-6@#8M<(HJ([E#& M?6]IN[X7\XO"[7L#?M_*UC_3,SW@"(H!)%:P#(@8VU0A\M,N\\I5$GB9URZ^UC& 1*5_/%W,A?+I3/109$[ M5,K?6]"NKV%^41M_;\!#Y6XVQ)ZC^QJ])B<@TUUU&U<.;89=>NE:KGP M6.+HL2362\(4Z,T-5@D9Z'"D8KEDZDMU6VX!AU"PF_ZC9CS,_94O0ES1IU1OQQWWJ81ZHU49_C: MF5ZK]"]Y4OJ7YA/D!9-*BWUA1VEBRB +VK#FY)JK1/H/ D<8(CT5#)Z)&<=+ M:9/85D&;7"42T\V0J?7GLV6 C\ 2#I(WAW\<0901]P8OFD+#H7+!];&@HQL$9)B MBQ >QR8@,Q#*84+1M+]N:]>[M3X(5_.46]3U7M0]");A]3*9\G8+M(FJK_G2 MPJYK_/Q/RGQ?O8T+8AW_9)^[=TO:9+59+DNJ!>5QZ)*T-G]L=*'#@ I^Z1B= M(F,D&6R:$DG8U>M]OQ<:/DFWW3 '(1_1,A=K51_4,4\.SXRN=IH5I:R0A/OJ'(F:F4R,*Y*QW+98!5-I&RN7@[\O= 0 MSL;14;O5J-MPU&TX8O^HV_!W[#9\;U_SP@GVC_J'XY4\SE;-;5'M;]WMMMHP MV.(6QZ$X\8X\?#Z A.M=9_-YRC6/T=>94)3>LR4C7$$W9P+/@K= SCJK>Y)J5T4ZND^T"Y[2: M^B[1T[H\E4852B KFH0"XJD(O,=%0@%Q7(1>P?%B]R_ANUO: M*51;9.&NDGK_C2S=J;RQ\B.U3J[<"I=0ZKG'<>;R]^3Z/G?!=[D'R./V\(:N MP'WROY_"GQ9PVC-T.:YIX1\!GK?V4R=PN.0I-L9 M=T -W'D^+\.(!M_Z0L?(1/"\4%2E%15N?I["SJB*(>^-IDA\[BT^X;R[-EQH M^B(WB$?B$UUZ':XBOWOC*HR)V*VJNY)67X-7#0180;% $ MWG^9F0.LDU(5%,/"2/40E+Z,19E\]U$K;78Z2>_5'%,?SC(4.C*;QV1VY#=$-T^% 4W0?=7B3S]>U[I7";+/O-,69&G=5GJ^+ M18K->M8]\[9U_TSUH]XK\H*&[BN*$377 %Y#HP09\SX@JGZ)_;<+7X+]7 DD MH!*03'>J@<^M!7[C4B+O8OK+W0_2Y1>S>FG.]#AEOZK/5DFJMQLS'[^%Z.0- MWLU#;=>Q$9R0$F?N'G);6YJD$*VMY)SMP9M-XI3 M3)DC5F_4QLUTIPMZM0W2#JD??R&F'8 M'YF3O:UUR7AVM9PETF ,Y#^\ >@M!1$7^"JU+29[+,V+5:68&Z;I.G8?LC!B MR"5C&3)2$Y?=]KBW_%Q;31RV+>X-YWV+W?Y04;Q[6R+;-]1.MKKCN7)\5^/2 MYC1A"!_OMWE6:?RRM"WCIBN:9*> 6DC06K:D<_QXQ2#M@;<3R. =S%%E]Q]M M'=Q;IJ[O8J3"GJ,(N^KX15_>WKZV:_1J8X53E%Y-!\OMXWKQA]>8OEM/D-NT M5A'IOD"N1AE'C$]2O?H AR&H4V\R&TM$JN+2VR3WEJ'KJXI<BJ*(1FN22 M+J!,CM3MR;)3T9;6IG%A(0_(-AFWC4UCY[#"N$I/BV6K8A<]V4:;#LETC,Z] M>2/4OW$U_>59[Z4 >K\'F02$Z3()?E4QDJS2?3HL +:3'% MSX"4 B ]RR52,'#ZS[^%PQ.HZ*)1,'-%NMXG=ZEAO#6KU??U8I>G^F2&[42\RT(5/EW((,1U+DRZ&6M.FSPJCFDJ/)VECI=G\XK^&AB9=# MW>:$9?9C6F0+2EK)-^-3/6VAE5+IET.GX^RD4#7U,1!JRV9MDE'3CJ@E'E>-;FW-H%W /CQVG!BY;D_A. GSX#_ MF&1KK9HI3%4%*JQTLZ V%P8>&@"_VVH/959I+#C:!,/,H]VW0Y"JM9\Q!?#]<[0S-)H9!#\3+HML]:NO5%UJIQQE-9H/VKCH0'P%;I:X9C^ MJ,'%'Q_M1JV==O,B'AH WZ:4=*$0=R@VWLSGINR>S,U8&>JLP/NE[%@I-T8T M3]:9;7-9LYJMALG D0$^*:>[M#M9.R6U#-AN"6ABCHVCD:F7([4^IX[66V9& MUN5AIE/-ETV^CT8&A'1/"W9C45A6R() -62^_TC7J"X0IH+T9%V9U]IA3?V9PBC(N2 MN2XM&0A\]@R32BFC.L_*M;@J#-W$VIIJ-;F(7A]DTI3046:]5EU1XX5]=R,; MFBM*>&B 23E5**2,5";/TF;7S*?(:5F@93X7!+^PMQ_8(+R 5FO>%(#;L%K2$QD $!.'JI[KN?F[G6^IH+_,KMM@;Y#09#0W, MZFR';-^D&9%LN\.Z*M5[E>80SQI@UM%> JVUO"79JD<-&B-1D]L;#3WKP'?L5. MTL&5\3U?T=0T86F#GX?@" M.[#>-[ZO[(TY<9[],>@;/]H@R?]!7I9C'1;FOY#RO*]W%I-D'ZA7^Z-(ROK, M_":<+]IP4T7'KS8D[?(<0O/@P5 MIK:IN0YX >B-0\:3Y][OK/X;@G;\]ZH!=$27^]#EK=YN$5TB>8GH\O[.>1%= M[D.7M[K[172)]%A$EV=Z+!?1)7QT24?Q2RCI$NFQL-(E^VJ_JX@N=Z(+]9"( M"!-&PD2*+*1T>;WE9D27^]#EK;:@$5TB/1;1Y?U-5R.ZW$N/O=X8-J++']'E M=P^]O[5/>3^$^HQ(BL3M OLI(4+2[13U6YL9(4)*)%XA1]+K:?X0 M(>F&?M!;.?808262KW#%7K>XW^F3B=/-+X"*I.G+2-,-[IGZ=-)TXXNH[BA- M4?+OBZN1*/D76B1%G!0E Z-D8"1NUT&2:&KHR__[0?_XL!]$7?>FZ^SOXVOZ M[)VGZ/GQ]U-KP4/#Z&G$-U&6*\IRA9UU/I5\15FN*,L52=-GDZ8HRQ5EN:(L MUY=5(Q<+EI(?#9:H] ,=:&U]TPNF+AQ->;)$4[H(8A5-1&/X>QD%]_>-5 M(XK![\DT5.*3</Q#YKIN\K59)N*3F_!)[H&Z+GXN MS"?X#CF_A_/__B.1^^L,1YQT;4[RXL6OPTA%,%-$);)=5V<<+X#\.HSC70QTB7AR*HBJ;$$/2OKY M#U$$8#:[:XB9%S3!$$&,* (1WZ'FL42"BGD?:)(F+R8J(8/]P/V7"@QO#]U5 M[N6R<5C(SQ.#I2CV'9F,9ZIET"'I4J>S.7,T7>;SF:]U][,EM M>RNH=*TTUY1AQ9C+73Z%[@BA,[%D-A%+I,CK714<,@&YRR7CX=.1E[C(SZO? M_BHJXO>N[KNI?KC\W7]5K'WXE(%URY:T7( MT' )79"^ER/XF77!4^D_JCZH&GXVR=<+TV:7Y\M:?D@*';-%9TOS99*ZLEY( M+R9D)B^I(KLSV3:G#C(;8XV=B1R%:Y]&"!D:+J$<_!,%(=,. 5"O M=!_XQ]7#4Z4 +BMYEC*L&J*I@X.J4.1*CZ>&64[GF5URQK=5*7]A5:'\ZHYP M0)? N)+;[-1T/U?H3P5&YR;X3E$*1ABQ;#JH,RYW0WC(I.4NEX9_3:7AG9N( M=,;OZ8P>< 3% !(K6 ;$C.TKB((R*JQ!WIRP^BJ3!E(0US['$G(T' 9#9$+GU=Q^YBCONT. MQUFP=TD]69&2V7Y^7ZQ?6+9?BO2RRAMDS]C:7!RTN^5]:62 !+;YF1]_9V/9 M%/5*G/"9BM;2^!4MX! *=K@^PQ;;K3<)PB5N2']2]"6@NS^A[I6L_A+,>?/V M(A%S?HF>OS=ASIMWZHV8\TOT$KD)<]Z^ TC$G5^B-<=-N//F#35N'^,574M M\_ 4CX,\BA^8?,*/^*C+I(3R4F-08I9C2ZV/W>4HE6(KTJ#[X; 1ADA>2AI5 ML9Z)&$V7M^-\KV6S>FZ1G UDL=%39#Z-DT#I6#:=O-[.TK<3]1OT#;F1J-^X MVT?H1'TO+I9MVK8*+&C'P:0RZ VUYO6D-*]*'26QI'IL7&[P)3(AB*41@Z0T M\[:4?O+B42_54S(M )=*B*YE 4/<$8XE&+:&:40(TL*U':1Q[:^:G[Y^ >D= M*ZA#X':&C-PA*H>\-U_<,"D50N@CJ;BW5)PO#+PW7]PP&Q9"Z".I"$%.+81\ M<YLHMTJ4"Y MY4>>HR=#MIDH3XS\E.$S7M5>]HK9F$BK_:ID[]YB?3HO4WRH%])U:SN8D$6!OWU;M=.&/E<%YGDS%LF^3.5 MU'FO.![2;PJ6. ^>T*>^Q.[/I;.I7U$9_/;9_(_Z^L&CM_RD6DMPO9),"JMD M7LA57#H[WMSL:+Y>'%8'D\?IC!0*^X*P6Q7%N2WSV5L=S?]>#H:?> ZQ-W'! M0_E?45'\7H7\+;7$Y0OL=ZO2C&6VJD*.V/526E,N16^1:KCN ?UOIQ%R]Y>5 M&QW-CS3"AW.$KQ[35YV^3/?R0XXM%)R]Z52SRF1\Y6/ZP]Y,HKG6;,71QK0X M[A>'G9[>A=KA!L?TOY>*\'<@OKB*..PTA%A'!."^TLG;ZV\D;$>KOG",:V^4>,$Q?UNJH,. M@4S=Z)A^I#DN79]-MFI29:.M&!;4R?U.8XMEL+J5FG"J<\YQJH.:*AB+>J'3 ML"IRGT%J AW9)V-D+AOIBOP8[XNJOSM7A:[YZ_1KJB*N_-%>'LFOH#6J@([;^ MXFP=PKZ6UR^"#1=77ZN<+WE2SI?F$^0%TV:EI/(X&RN<3 KURMAPRF5'53]> MIO_6@>GN1MXD\O,ZP_:3,W7I6*.U2TDLGRR+F_D[,'?*JR$OGS"+F_C;,'?YZOHNG MSCX5=XE&7VNDUYEU9_KQVIU['TRLBAU]UQ!V.B>4 MZO-\N9YE]+C,4Z17-9B*6C=^FY+!2V= /Y5RBDSOUZYSNW3J[E,Q]Z?.X]W; M0J;K+,G(N;;$CKJ<7>W0WMVZ4FH!:13!=RX^=6([]]Z/^C3GOP..^RU>@XF3699]-]5E?SX[2Z9.2; M'?I?,A-ZGQYTTZQK4TI[#"I4W-I 3_I6I_Y#)D$AJFZ\NZC=J#E ""$/06'^ M+37,Y0O[.[ML/C_M6@RG,RQIQ*WZMC!CD%JY;L> 2)N\KW/O%]0F[^S:&VF3 MRS4;8.2Q71/:W1*I3 :FD\J/#;JY=WMD#^@NKEO>V/0Z9? KBXTG'CZ^]B3)Q,;J11*8,KM.C10);VMEFZ ML!OSRQ/(XQ4WJ%O]>H:+]TPR-UU-MT:KB[2.UZD@04>7AM^_1_$75#OO[$\< M:9U+5&L#T)V*U6$[R?57S$*K-3-)?G*K)@=-IDL9!2[M<*Y<9.H4;],C&F=B M4/$VG8C1V6#@%.F86W=\_I(ZYEW=GD.F8VX>.5DUG:IM4LDIVL=369$;%T0[>R4G$R'2P]"I0B&\].&$&MQ45C:_A/'C4<:/OE.@;XX$XG0$@#KI4"A)?D\-)@#0A"A MUPG7L(/L3!BF U\F6/!K@U#@T[(E:,12L!S"G!'08[4!8AJ\E8J<6&*F&((A M*G"0?3!%]L,%H7D#_QN Y 2*O";]-I8EQ5YJP@[Q$OCK]Q:I06L:GWOO?L+?U*]<='43.OG0;^>0.4CE\:J5@;QJ04$-2[,X(M_"MI& MV-D^E-GL YT\;/?_/.IHA S8JHXYO(G33V@ QXZ_-.'BDH^)*]$IE_+ M^G\$8FXA1?^/0;MPEDO19R@-4*%KSSC5_PJJ"Z19D2(H(+N!CZ+X/"K<2H,A M0*:_5 $__BXPQ1Y+5-J-8K55[L>(:JL U=$T+,MKM0=LGQBTB4*[U6\WJD5F MP!:)4K7%M I5ID'T!_"+)ML:]$.TZ']RAN!*T)N2_G7#507X]]4E*@:T3J9K M0Z?'CA%@*P+X(-[GAI9,(I; .ORE0\7CV$^0O*Y;G^N&W6@R1858 _@J_(: M],5\IVO*ZZ,NQY0Z98O5ZUJN/4R4G24I>\ZA8KA 8IQ7QO%H&/6# -"96\)% M.)8++J;- I1^P1[I(W=0#UXQ2/#?$[H03X0A#I3!/'!E@N0%6[';LQ?$V'G_ M!@E"]QO[9"NC]-7=?E"5N*7L/B*"7 _%GNI'6QV*^!M(;PF.:V&#T(8"AO%D M7T<[H (Q9;;SOE(,Z"A!*TH^9(,6[VEU!4&"BZM "%#.PR^'JAKB0XPH_CO_ M;X9 WF]?F$$77D,ZH@Q=DB7Q3^CDXEI3FORKX#G&^"_JK]CQ:S3QRR\W@6]< M^_@-FM[_UG0M_^M_P>^)(M0D&Z271--:FAX.8\04R- XFT>D$C"\8Y9PG1X0 M%!TC:)*B'S (_BICQ!P(TLJ%OCJPH&<.-6(-.EJV::P530,QH@1=+>BUQP@% M>OB$K)E3Z+5#70?])C084L2=P9#*M5 @@%8,'62O_@Y]80LSX.SP][9KK96U MX/FMQ-(R)5=T;/R3B9+:!%:/< G'GV"4B((' L)* /^)>)((0;#!\MVX'A[ M:1IH'6@.' M4*?E1I;KMRKM[KJ[2N5;F]?O/7JGR/]N!9,(F>@G5#E38+5GS5/D=R [.O;+ MZJ668%E\NZ%UN7U'6'.K=(O.]9>+_:[*0/47[!S\@J!+/"FQ49PYMI6 X![Z M4!2:8*N(9HPH"(: F /_8B!C3]3A MGS;0-)M0X N.--^8EB9!XPF.A$(_2XH%1&B9(628+=!\3WP&J2?.!<, V@L& MA#^@(-0 %K3NIH'B+ZAB3,@XWOLA4)841T-VB)O@:N!(+P[]]S/E?G5=7SA& MQW"F7VEXP=2*&WV6FW'U5:Z1 #N&X= 1E=!I^ [D'5%9(F)Y;O\3;!COV+*A MGSH(ZX:#?PF/"0CD-][,7?AICH-2)>;"&NH> "#_60#REZ=8T9R6A*0!"Q3^ MV[/L<-@18S* _"IHV@[]#OU1[]D3 YOXY_^N7-/YJ\PP'>_3OS!NA>42 M$@N'7)8+Y_-T/_K% K*K'2R#M]X^$*&<.PKP]#"[17(D8SATQ;81O?[I6Z ^ M6SA8(#03U(UHW2C98RGZ"5(@O*@,VY ]$8-@:2Z69G" ]R6V8EC$-W,3P6QN M#(!LQ=16) 7:V(.H>B8"XMI;[3.*"#9\Z\I5$)JG.P)AY(%@,++A.I .@@_O M",E$B:KCBB"*#PM1#$_O'OAS9IJ.E]-Z.2^V25#5N!!2/[HYG\S"UL<]1$!' M/+W-26=8!ZV*F&*90<]#]09'>BR$T>J_X^VY3PF"P#]I#Q&#!%#$.4[B>9$[ MX?$,ZBOA41JJ+.2XQ0@#B-"D(EN+L#$3%.OKM' T1Y MX)@P$C-=#5(",C9T/]""X"P+U_#L]Q$=)^X7E?G+)G03^PHH4H3\A:1: YAK M/"J^G9H\H@@87?I.2H$#QFG@)_0T\>\Y$V(,>'K&*]GAV>!3SD :(H. M5^2K /%4C][42F&GPZN6ALK%^95]HMIVI23KXSW73K.%4FJ<2=7B3 CM$P:% MP+"$Q^I4H>?M:KNG\Q>Q9R8%S&;0!4)\2SQ+PL5M(,:5;=Q+!/^LX/_P-66> M:+36(YDK4%6K4BE7\@8IGTTS7X KV7_4F0\\N3F7G3G5WW-H#;#P0)UAF4BFU@#94BR_<"JH M2."T&G(G$7I/UX%%&+X"3JR8DGV08RBQMQ# D6[PS_#XYH&R>GI'(HCJ;I MY_)Y8EA@7'. U?1A1?K;,["GST 7R\662$+'#*7#P21/4-Y4(8ET^P+J'RS$*[4:+*723Y&@HR)*:;A=Z M'XF GVT-5S$&BUX C,76.\\#60?_=#X>WO65L9Y7FBMRMQU5AMO&+K\2-ZA$ MC4Z1,9(\5QS[3J)X-/1PCA3;W_?IW<164-71*\;>\3 M?*@4S>HH85.D/IL7,]U4*U?=_.*#.SRPUH8^$,GNW] MT[]#7PR&1^ .PAFD+_[N+$GS6S-.;6AUS.VFPB)!Q>NOF\L $6N"S)/WZ^]S[B_:["#VS] M.CXR2Q"7B %0R%R%($/'O.-.H=TYO+L% B=[,3>LBDIRK;M,B02-S#HU5WFU MOI-__)U,QW+9<[4@O\4.>#\9$@.& !L8/(Q>H9AU0SXP378 M+H%A8ZT0\<&[M4!'V.&@RW__@1L*,*@+-'_$I'=FC7)1Z:82:GK-K4;=.:L[ M11GI]LS9SH_OI$$,B3*VX)^">#TOE]Y!JM,5CE&3"JT#0O(S024(^"P[.0 M15R+*,P5,"/8+1!=%'H@;Q?:+LM?VB6+G/[0Z6U[\29!)4_=V1.M9D.5!2Q1 ML;%/N_2:*_@I,\4BS#6PX.LU$V=%"'-Y3)\M74N$81CV; GA>#CJ"N?,3X2! M2IY(P^&/MW79840;0L,<@&EC6'P1&,G4?K[(#9JD O;-8:>=<]W1'YP]_P._ M-;=:+VIC-9Y1XXE<>=]Y5(9:JHMN=SOOM1*_\$/?%I#0>JJ7I*S0:+.2T)DG MV'1Q2[7SM8(^F6O6XCM&'2CQ)GSOR_TY"/#RK^[UAHI*% MDT+_0BY;YL:9^\KD5\E*&3I.;,=>TBI=&U:;B\VP:FIAW, ^0$5X8!V49'B< MMQ$XE-O[V[/@L&+96['OL,;\/5NT1RJ!&3K.==A-KKGZTG90C7X;NJWY0Z%, M'WWE+FV"$7%F'E4,/2MOJK7S??3C83?X@6!LPG;%>8S8>*L"$"P%;4"CA#KT M(?6EM[&%4R/H[(/IVD_[Q(<]5G_;[VG[&AHH;]=WB76J#Y*"=P21?X)W*AWB M/.1XX]C;<<-[T5/7P:/1CIJW#1 [Y/?1LZ8!/6%G8WKZ;P<$"WM-KVWQQO!\ M4W " HXD<")X]V)[%NTL. ZP_4W!9R##]\!@&GWOO3U))H_[\X(U%2!9XNVM M!G9/)"%I9-DE5P2XW$743!N7U$$\R?X._],>/3C&(FAI4-/[Y6*X6L!X(M!3 MZNK9\A 9IN@D(/0(H1J)3Q7<)@DZ]FO%-JT=L38=@/:HS[^'@*#+Z /KL41 MQ+GK("ZQ4)W!Q<]]_*Y4>=MNAQ EAM%Q7I ($?[F""I < N&(\@XN8?QYP X MO>1MXBI>U1%VZ3'_>^R )L0<84!83%3KMO;BJJ<2$-LWEKAV0,$E4>B!JX1 M2R1^ PP'UI#YGP3L@8!J".]6 \W;FX2CA+4 )X61L VT-?!K/9Z!X_/V08]@ M_2'XCBK6(3H$Q),M5 BRP%MUYGLPAQ+L7NI5A^H#<@I2>W^D0W#"UP*0D, + M[]\N7#A9/9[&.B@S#]%>+':ZB%.%\6L@(?X,^%D\Z$F,V6=0'?:(D02B]?VB MDNW:)ZS>>SCIQ;(^V6&E7'18*22'E1)/1(D.*X5@>>\_K$3$T9A!M<6QQ1 ! M$!U<>OO@TD#DG9J=4FFEV>8**=,2%@5]\3CN\K@G)I:6IY&E=B>5KH )2S]J M%,=/[/R002-1SX;G0ZDD2TWVDR[@E%ZFD=:&U7E*DGDZ."F7'M)N+=L1U'*- MV3'[7"8[:J"1J9M1Q?QZ3FTF>EP:R/.I=1"JMM*3;CF%+08/A%<:7M4:#.]X>*1:^]* MCQFWD",;JPT3Z\F#2ZO5W5NQZU7<;LL*X*-%AH$OUV:KZC>LL%PBKPU M:FIQP-L=&0W-OAQJK-M@F>I;.M>VC-%P8NG-21>#3[T<.HVGUJRK5^.]PLI\DB=?CE1$<^C.[%F< _'E MOC]CDDY+8?A4<&0CLV[M=IVL0^[:&5)FIYG<7MW D0%,R54&J,:PK7 "UU1U MT>Q,RBL9C@RP5'K$CM?E5K>J*BF6%=:EK&CGNW!D@*0S3IJGXF Z8Y551AY+ M \7B9VAD *-R=J8LE&%/)_N322<#P&PLB @B*H!1J[@7B^2@,E!7#5-:3W;= MAM3&0P,P-7NS^E;<=9*<4JXPG55O)_-9]/X@]3?=]JHZ&,W2Y*B[WS9;-B?E M$GC6 /.W\U.F*^=,2QUI;6?1*XQH:XUG#8 E35OC07:8$EAWFU8ZXF@B4$,T ME Y0JIQQQ)*@[+IJGYSLU#3;LHWOEN=MGRP+3=P=,/SN9,GPFR"G%0B(OT6V09PM<FAD@/M,>JWF>*KFDCNKR-:Y5;>B[='; ]S79T8S MP-06/%LNQ?=VC:L\=@PT9X!,5**X7@U$.L>5FXD-OR"5P7:T@2,#JF<-G=I) MUU6VZJZY(,M.O>KHCPA+03XUVFQ)H*=\7U5F&;/;6%!S0T0+#?+I+D]6 MCLW^QB%;^L?5#R]Q-FC/6!L&W"CJ?"H'EZ4<-#Z#.#MB-^E,8E!FEJ7PE(.? M^%J<%YRD@8@I=L0VD('26QP %4+PMH MV^XA2>OE17 BP<\%HCPMRD7HQ\,[<#SP=Y0TQ3O1>3A"=)J-G/E\*J,W_^H9 M[RT(C$-BZ)?'07ZU' NL 12&YWM9DG> \>D9G$3!>3ET.,AQ\5DEE'-"E>*>E %1FRB'3C>ONCS/A&SN. )?0KK*&@N: )!,2=:%6O MGZ<7UOOE/%M;U[AX3B0[\IZ75Z--4/>>'W?]!@R,ESG[^VVV=Z)L#5Z/H;TB3#5%'N. M%!]4-)!#-]"'QOL$.IXFZYP.U$^6YN\?'+$E:+;Y M[-58R6*\>AK2 B"N00VB$7,%6((ESG?HN"$4BH#[VV@TXCHAFET7L=8 MNLY1AZ U''41JOE"NA[EL0^:?D?X\YRL$^O\G]=ENW,\EDIB)FM@@*F?ITT_ MVE,X\QIG \ (FMX."_D&L=31.C +6Y5H(C>B72H-=!6HHC.37J6[@1\G.JW M!.EP#!BGZ ]]"NZ, ?H9!JH>V-Z>"03>> 'IX0SCH2, GL-O+_&TI6(^X?'0 MPR'($E <%/P:[W _.ON+.DH<_HKA1]%!8"C>J+)&\W:W9JZF$0Z 9L=W%X(S MWQNEB6GT8L*/BXH.TF"1X(_8LOWD" M[(O=%(K_\U/.:)<.K2ALGLW+LQ5/SH1BV-"(GIS M9W#L7G,',C=%.QY[.F8 M.3KTJV"\QSP?6GGR#V,^CQ^<%@^))P\OA9WW)/S&0J>T3I"+*PM,M,\73!WOC(@H6!;>]3WQ4P^;L40Y\SC@75.#;\\< ^+.G.._^#YV80 ^S[J3;>ZSV! M\@H-[>3^(J+Q39R$0IN3&? A_J?C]/@X_\];M)'JBW,@N:A*[N@#,WCE MC"$UGM;M.S=2V^@=%HG;=. -L3/><9&7-HP\&[."J&?[!;*M\,JU2KE>5<(O M]Y\_WDG58X'##J[7UE>$#"(L;?#S\.%T;6C/T]_O1%LGHK=E>-BNQMNK@NN8 MAR^\S57\S;,M6/*I,[ _)KC#[5B'A1TV6#W(WWL'?Z.H[[(/[W]:NC 2F]N%?O$P"\^#!6F,.YT'7"+/>)?=\T^>>[] MC'*R[?_.KM+OND$V(L)UB?#ZY7(17<)&E]1#(A/1)5):WYH(KR@M.J)+^.B2 M?$BG([I$2NM;$R%26I^++JD'*I*72&E];R)$2NMST27RM"*E]>V)$.6T/A== MHIQ6I+2^/1$B3^MST27RM"*E]>V)$"FMST67**<5*:UO3X1(:7TNND!/*PH/ MKT<7?-4[_O]ERN;NAH3L;R#AA6N.G]B$1-UV7 MFU)?B9N*0,1-5WV.HIXXBGK.49%BCD3IC"C1'Y6D],-UV>/"(=2G]Z&(_XD"7U'-@B7L?F3O?FO(TNG'44B MB;KPMDXD,<>-X2\I,>',TT82\\DEY@O;F,0WEIC(CX_\^,B/CW1LY,>'4Z(B MB8G\^$AB(HFYI(W)?%&)25QB(^+T:EU1!& VN^O>A->F\>?']$#(8#D(^R4$ M/7R4^M %B!4 MK\1+L C_MJZ2A6YQ- W"-13OKBX.?N /5Y'R7+_(5WN/@VZU9&[4D3C*;96< M."JUNC^>W?#%V'Q[=G*EEW]I%U^$2UWC#AW5X\UP/<56F:UB'P<=A*0'9:0/ M1:2)SUH??SY>]Y7?G=QC;-X518S[\FF,%54,>GGRXY?=?\)73M-+HF M]-D[SEV_:Q\O&O,GIG(,F782I339KZI+>2=PRTT?(DP"HJ(+FOU_/^*)'X1W MB>'__5"VSD_#U273\7]_>?&9MWUV!HX?A V9$(Y,_#CZ@A?#\F M_4%/-6+"S\>$;W6SBVSA>VWA\6/E<*PK6U&D!*C=AEPA:6]&#==R2Y/-S>QKRPA:ZQ2E?-^9RN(-N: MBVSK=U=KD6W][$P8Q9F?Q[92-)_ %TE3WSO0G-GL(I]H3^9D7V#)Y;J1R343 MMPDT<_M-1=96U2&WXLQDK2BO2UP!&4,J]>-O*I8F,Y$UC*QAB!119 V_&1-^ MFTCS^M;P>X::?#79+[7%<9NQZ'AK;>X5_#][=%PMVK/2 +N3?JH M-.F^A:*1!-R;])$$W+?&-)* >Y,^DH#(!GP/F*,X((H#(@F(;$!D R()B"0@ MB@,B"8@D(#S'U*Z"AL]T<,U[14,1,' *^&CCMD])J$]<07BO2"54YT9O8J.^ M%Y7OOVE^KP@DXNRO3>7OR-GWKXJ+.#OB[$AG1YP=^=F1GQUQ=J2S(\[^ZE3^ MCIP=^=G?@?>3]H>Y%LVRSHID'M? M3X_DHBBU]H7EAFM/M_8BXW:KB[3,9W''K$0V=Z&.'B&3WL@$1R8XXMZ(>S]+ M^/-)37#4H>L"';I^VZ2+IB(MK5F35@M2II[OCNG'3+4+33IJTQ69]$@IAO:4 MRR6Z>_W;$:8:^/O Y"VHPRQ%O,(*%R[4-K/=*5)><*'W2]Q#]T^*AB/>R9A7 M6RS^2C'@BQTXYB$;Y":T3!_#@SG4\\0&_7-A U1T+0'-PU.\;X$&YO%N HJO MMZBNH0)]Q!689"^O9-.4LV%>T:!Q&XA(BVY,2[*!<5"AHF2!GT>EZ;4Z9 SI M1*,.+,&P9\"R\\#9 &"<4_#8)-E>A/A2W;9@',D/]WK]4=E52ERAR*EYT6@J M^487,L-UD4:?(HWFZ75%3H-%D^?<]@8D*W&UI%JOW4%P7Z2M96Z_JC^:8TYA M>>&QVJF5FN[FQ]^&><8^O?B"< XK(,P9(> E$J9%:$]K)*;>V@@-+X207&2A M"6<."%O9$CK$Z]PF )0$B:BY!B 29(Q >"0@5= 'ZB%/;P2$ M$^3>281B."9A 1'^K>TP5A S"@J:F9AI)GP+7(SR;)M?-/6E:< G'@A/+;]0 MPNAO-(MBN()/6DE9__T?^,\!SZ(&! N9J/E?S_5G J'"=T!(\G^N8G5$#/R! M$'3R8&&/A*!(#RZ\:OSO?_V_T]4_&@;82=[8.9S3[026B(H7S"G\C#LA BB-1#-OL_Q--'A(X M+G5A&S_!F&^SXQJ8.3^]IPY?87-[^,ZT%42 MRQ1:3>* MU5:Y'R.JK0+44=.P+*_5'K!]8M F"NU6O]VH%ID!6R1*U1;3*E29!M$?P"^: M;&O0)^)HS*#:XMABB #X)V<(K@1]8NE?-US52U7_^A(5 ZIMT[6A.K9C!-B* M #YHSP7HHB$-O036X2]L>>TG2%Y7M,_UQ#D%\$)S>\'FE-='78XI=U M7'N8*#M+4N;14-IS7^ 30&*37:X*>H M'^>,RC.KI7"5+Q@NDW,LUYF.1@1XM@)[1$D[M6"ZXF*(\47F* ]E._"O 2J_& M,2]9\@ O9K$V=!LLX@ENP@,\9,Y2 3HB@K$CH.L#74/Y% #E:>F^YR@!Y $I M!G1ZH,LS%]: 0.^:*=!-!X1K@YFK0=]R#:& [C.AP*D5"SFY<#[(AW,V\O!%RF909 7U/PW--1<427=V&KQ;A-'!Z&(_#R9VYX!R6H2/R0+_5 M?P&0'HA34*!L(^<=^VTV\%]]NA@/5@'[Q&W1,:? \JXJ3E#_L=WGM,'8SCS M:/HO#0)^M-Y(_)%A1YA\D36 7T/DV@XTC.[R;P((XMR;?@?U2)BEBQ JB#XH'TF_0,X;X@M$$TIQ07=B*A%U@R U'WB VU"!1#OZ]I[: M?B#ZIHX?]6A];JFZ #G,$#57 O"S:)D +MS4/7TG8?T-+03$&42AY?GO$&4J M<(X "OX8@1#A.F3$] 3D> JHOA%>X*OABFVLVQ$(DB\!;^'T)09QZB?SEWV* MZ+>0ZJT@($T"X6Q,J"W!\HE57@B5)XP1+L2%8 M'LW>8@#(6,]6B$K[PPYPOYD#&'T@VGN@TLL,A+F(&Z62Q_A0P(!01 MCB"N? 0 *08Y6Q'G/A!^J @QH"E0 HX@G%G $5T;Q9D_7_BSQX[C\-^0FL_G M"8+]RZ<#>#S@X'3)SU&/7WB8 _*Z<4IY,!U/3=T#D8<>IK<23[]*BBTB[,('H"9 7.[E M#GS6F&E =.Q363T*^Q3E&8"_QW-8Z'$-T&Q;,)R&P-A89*!CA;P?CV_\I4,& MAR9-@;,ZGB\ ER0AU".^@4H.@[:T%#0_E&?UH&T?SF8SKNQF]I"*=4'),G44 ME*+DUPA*6@$N%Y+&^I6KJ)[\(XZ&53@O[CY:_8LAC\$&X+.@PFKJGLP4O ;&<[VSD=B%E+;DBLK&G M,QUUU=-DT#/QI-AC$JBH%.0)8K4,O_;YQ1,PWW[[6@(I1AM+ D3!6D&N*=1V M4VPHU@K*C2+C"R>7+8#D=0E%'*W31@"(7LR)WXZ-RY/'<)*'1#)FPT_V#"GG MZ>Z8NSWF8[U%0.GSU^ I7'!7H17A3%B:D_IXH.M@T_)P(#Z M OKNI^X_?NJ =ZRM[+FR7"+=9L%Q* ;P_<+3!1)3%WE5KB8AU,%AP@XA"XJ; MYMM-$2A+3RD='A%$%+I[WI4$EL! :;B#!D7KL0\*[D!6Z!1BS*-58<_)1 X2 M2E]YR5D\LP!=/7L.];R7U!7A:I&[X03TX=AAC;4EV4-K MZ' "Q?;2TP?<(#,-O0?DQ>(M^1/YPE)P0#MZS#./$''8,$*\0T9'SQ])@].M MML\IGKSLGA@5!P[8%XYA(8!DBV$"0%_7%)'ED+P9/*P_%]XYC,YL9%>?\NX' M$&Q//I%;[^?9(=_8 %5-X.DEM(]A+K'?(K*@& SFS>&,#!1/>.&3AC6=V7?'YF;Z'@S6 !QYF=7]=PJ]4(?:2ITC= MK!7;+E-SS&/^#_N7M\\-C0LN*.&*Q%!L\V# ^/1X E[GO-B <>U#,_Q MT6$X C1-,(#I0N[3! 6:2NR4/1D- 3V"?((#9_AK\+7[.Y_K9^@>6*Z_>MN%A'H"(?BH[^D9)X/P\[YG<&*8CE"<(/*! M8"0O7^1E,E_J8R24T%Q 4IG6[IBN =NE%Z>9GLI!:T+OM7&,Y9E6[QFH"F-' M7]2$ F,O3<_;>5H-UF]>V.9Y@S:,!1H"SG:0OYN6\C" MH4(Y01=K%0/(6:Z>+S"%>,5997@&I-)R'.DX7'G7Y7LBJ;CQ.DERR0'5 MV\"1V9&G \'1P3E-[5$R*=9*DDF!$LY&3)^M) M%XY,O1QIN.W&/E]I,B3=&4['--LDF;T,1P;>7F@;+5UOMB7574 +UMCQC7(& MC:2HET/!+J.S-3794>,YURA4Z*K:5S=\@B=?CF3BO1*ODLY4!;LU.^S7'V>E M$1H9 D8%97D4OL1UYX407G8V39%"HT,@%3:%IW5IC")JT)F55"J%:>>63 M09#DL9BAVY.*S-99.I7LQ^-+1>GRJ>#(_%Q]U%TK3ZMT,3D%D]Q4[AD,GPZ. M+-=K=GGY."Z0NV8J.=NI=IQM;.#( )I:A4%I:2C)&K?;I&9\7QV[Y0::,X"F MW;:Y='JUS(HM-,=Y^9&=DP*'Y@R@J6C;TVHVD8$<*KI]J9CAB-?H(FG M,C,Z)PJ GV8!S2=34IK/S;(Y/BFF,T(BF4J29.;EY+3^R,L3R=1)@1:IYE!+ MEIA,]YR@%#/4U,HD>SF6SN]3Y4:[GU\7F'."8I3E35^N]8IDO)+:[X=4/-_. MR^<$9=34N[,]V-)DO:[TU]D=WUO-Y'."LMOIY:0VR)3976?5$AN]45;KG!44 M7IXEMN5*6>-HH;U>"\IDLUJ<%Y1JM=C/C*=.AHN72^MALU_A$U+WG*#D6KTT M6^"X!%<@6TLNNRVN^MFS@B(LEP*]W%5Y4JFTR6E7T_N]:?>,&VV8S-7FL M0X1F^%Q I*@:H*!'GU7;&4&=)^(#(95FX$@J@/OTDF])C.&,2&"MXTMMDZTR=JI_.8;Y/]G6LNLTQ=3O ;/G=F9&]=9U8C(<[1S0*[*N0:RUT; MV@?RC$)Q;2W!/C;AZ]/-<3S)=_N+-1X:6*FUF.UD-]O?D_7X;H?DF\[DNVAH M@$UJX[:E3@N/'74G3VN+?34'QBZ>-< GE5Z%*R@%>L2M2A-I4"5WKC.6T= @ MH]#+0I6,]XM],CYOIQU'K33-/9R6"L)5G._59'G&VVJZXRP#0 %QR*9G)"9W*E!,6NV2=S^T'B3V>-0!7 M*4.S&LMT9U"FH+K<5_(C?81G/<+U^\5CB=\J'DO^NGCLU6VN_\_>E_:FKFQI M?V^I_X.U^[W2.1*D;0,&]KU]) -F"/-@('Q!QBX;@P?PP/3KWZJR32"08>\- MP2%NW=XG(85=M8:G5JU:0UA<''EH<"G!<1_=.& O&[3&IO ?[(F5 8II5S7- MNWXX\$U8((@#P7X= SB^EP-]W_-H'AZZSS\>'><-&YP^[O18'KB2!%'TO 3H M^^@.QM14R7.R./ _GA\>1:DO@E 3WW.L+RPPA6]35_MKYK^0#^KO!V+P''Z# MH]L]-UK@*X3K/C][?/#=W_9@E[>P=[4@G_O^SLE[RN&E&/9?"/MURJXF^\YO M/V!"5VWO2LI_1O Y?OC+JZH0N!A\(QS$A6&?\SO?5"P@.-X% MY=&78W[XDR<%.#;+N]/'3E[LVM)12,-N?\^!O)FJ#$ZOSGHO'N0YMCP1MP'F M=RRX$O2>+.FJH=J.Y7F0]_KA"__+T(3+R/_>X?6IX:Q!(E++D^D!ODASMEY\ MP3ZLH.(DU\ZT!B9\?)E,N^FQ+N6QG%24,YUY&<@UOZ2GN\.O&U$ C)VT$*!]2+RO!C M6G-X6,1CCX0 M[/.WT5VCM<+7/-WR+GG+P M4A2*9?L70@M-$#VUB07!.8=J^OI.=$5E#(>,X/!#4]/,-=Z7L)\1APQ#1@>A M=P>W;F=(XMTG[*7%\\D'H1"'5 X&'J;2^<\\(NM$T/!5$Y02.!&O&=NU<0K= M/KL::,HOD"I(3=QB#^R9X/M:,K7HC6L.SX!IBINEEKT=L[X2=!TXLLF'8Y_S MR_S@YV^2'T\-]KGOWQ5@OSZZ)]"$A0U^!C\<3@IYU_T)(2>=Z#FG@YL1[,@7 M7,<,/O#<^/B3(V?_0=*W/^;Y,B7C^>@=*YA7X,GWUORQJ@(I\B&1?:N$\X'C M\>#Y"(EDJ!D!T8+?XRBA_:=W,8(R7-^]D_#OB/"+@Z'"!$J\ZX#/N(QXO9K! MP?<^+B<']TM_6 Z >LBD(KZ$D2^I-\N\1WRY#5^R#\DWVX=$?+D-7^B'9,26 M\+$E@K%P\@7"6+3MAY OD3D65KXD(KZ$D"^9B"^AY O]0%$17\+'%XACD9T< M0KYD(KY)))H:^O#_?J1^ M_.Z.EWQ(9()@_'U9T,6&P-F%@!$W<2U%+E]+46_ MZ@P9\WYXCA^.Q.U3Q8UZ2%'W)&[=CT__/8&8 MO?;0OZL]%/F0S=Z3]J";]@M!\3N>]&\E(W>UH:.ZQU]EN_XJ0I)]2-_5+GQ1 M''G;!?2-9(2Y=12]/-A5FLFL9U4+?0/FOB1__4#$ZD?B3[DAOVLLA$^5( MHR^IT;=![!!I-#4NJD],>6G0.8Y^I,CUT%)JV?XG:/232Z:K@MG=\"!M%9A9 M14U*>91^RR"-II+D-30ZVJ0/8AY"1H9+J'3F5@L+@4H?](671J?1 MD GS370Z?-;*A73Z-@L+DTZ3X^JFW1]FP,XE]6192F:ZN5VA^@DZK=98RI;ZOX%<-)22] M'2)^_34'GK\+G?[O&G'VR9[)L\F>##N-QY^,>()G&HL)*UM495U_J[GG>?S! M;2I]\+%?H$]+V.*,WS,HY)09]2FS H-Y\]%:T+U!27[24:DJ>/ZG_Z@U\JTN MRR)]O;*^?F[4R8F^GJR-^.O*"ONB&V^=%U=C4Q&&\^U.U:E:LI+*0! M?. 9S5VMQ\F-*A7[<[J8J&8E-A7/MEDX9WC.SZ1.-/?O:*^]2AK#%]+=]R+_ M[TIW+]04^CJZ.W,=?2P\]D<<,YW6I+;:;2])!>HN/,]GTE?1W:O?+8=3=V]L M:UQ2=S]A*>'2W1?[;K5!M8TYT =\GDUVW]XK?^WDF^==2403P^U^-2>]&%PM7O"&\8&_/9SH$0 MKOX;^!/>]F<.]G6S*K;M ND,3M:*8KQ0T*8B[\I,2:GG(*(LRX9O#!K55Y7$T7Y3DG M"P,.'4ZP$R=%WTGHA?<*SNMT^&?OB8=:3L":CLDNFBBL1AP+H+IF?< M>IDAB!D[,'U(/ND"RN1)W1XM6F5M8:UKRO5#QI3Y<%M@)Y7XG$X FN_4AO&9 MC7IKX62-)'UZIDATNW; M;=OR>*C,^8%TV\_B>'/CQJZ$_\4=;/X)AOGM@DY_OUKKI1?B M>M@X^S5[;3'44?:EAB+D^=S(H-"*CT01^)^Z-B5\?_!1114#<_P MS64(FNAZ#3KA5 4)4PN^]&3"9^:' JK0Y"3T'MQG449=Z]"B%B9J4Z4*VO'R M8A#A'&#IJ@&?[-K!ZAP+"+9K;:&<0:T@=.!,3>G!UU/4_7$_383%J ?=!V:' M.L2=\N-Y\?C_;;\SVV?W0'L)#%C>6$/R6?9**S1R4%%=MRC*_%*E5(Y2!IT4 MIYPH?AB;C 75A?^PRQC]D(VZ\X2PO#7UD,Q$? D?7\B';-2>)X1\R49M+4+) MEPC'PLF7",?"R9<(Q\+)EPC'PLF7",?"R9<(Q\+)EPC'PLF7",?"R9<(QT+5 M9NP]=^5WZ$CS-H!'?9]>1D+0#V3BGKH)>&W&?JWS4WC%[=>)\WHCBDAN;MLO M+$+G3U&7WY: S^T%1:?O27LNV.%C&*0 MV96@:CCDTLSC<-4NBD.=0F@#EHU#,\_$TB^:O-$669GG:',\ PF^N\N7UEXO MLF0LF;Q*S; (/"+PB,#CUA7#_AP\N@PU2@\>JQENNU1'M*C-LM,MZ[4]8V(9 M*@*/"#PB\'B%%%^T#/OOH\>KU9VG:JE5T?-BBMRR8+NVV)K,6GZGM50L39]V M3XQ.,!&.?%,Z%A7ZAHXGO15#>P?5Z-((@$-!+02$ C 8T$-!+02$#O3T#O MXCYU\(&Z'7%B@LXKD9_BZGZ*.U+@>^D+[^G#>)KH+42QZRAD/%TI@19)%UNM M]87O2\E?<#8$BLMZ>MO U8N:,JY=8S>?M??8U4#N70V5W8)KI<51B62*RGQ1 MXYQ^J=SVVBLE4K$$3<82U)6JAD8@$(' =P&!7[[W_$P0*-A&8B 72ULNWLDG MU%*9*3F:WR^)3L>2F40LD3J]LHA ( *!" 0^ @*_>WWYF2# QZDVWQ@N4N1R M-NSN=D^67N^WO09(B60LD\G$TF0B H$(!"(0^!,0^.7+Q\\$@;&5C;O*J#/E M!*6Y9(0X-1:,H*'1ATR!KW?[R.V+H^[KI=I ="T5M7[Z&7DBOZ@G\O/7'$*7 M972S'@E[).R1L$?"'@E[).R1L'\W8?_BE[,,?@4.&8U/!!O=SZ[A\=..G"Z? M'"L>KN;3M\*$$)(I--Z=S[CLK1BB!71@.(+F!Y/CB;*.8ZD3U_'"S(.V)4!J M"5LTF$7-IQ3\/?N,RR=;D4>%Y+ABSD$SL1GUEL.JO63':7P#S&1B"9*)G+X1 M_D3XA"J<.;)RFK3)@VD\PP\XA]J:E31ESM?C MC!^TS&0R,>9,B84(#R(\B/#@JT0O_P(>+)3\BN,W#"0^1?PH+.>KKRM)!N MIQK9ROK2]Z'T+_@W.,$R( WM%K""V-VSN=E3LVQ5G5EN3+KRAM-7C\D5/VJ/ M*1)=>Y(/5.30C'0UTM5?OZN\AJ[&9YW$)DM),D\[G:50EE?=&UYUEHI+A3*ZW5I.U=9H[%ULDQ]2V.M MS>(=]C01YG)=6R*UC=0V]%OL[U[W76.++;?ESLY56RLNW["'['19<>D\BY05 MW>J1#_=\G^>=QPL7#G,.S?(B9]EG]87Z1MAUBZ.\KZ'GT,L$DY4QU!;S99?D M=6;T:"8M>)BG_,,\'>7<1FH>J?G7\ *\KN8-1^;SN_)J.M\ZIM*<OY1[\/_XGH]_P3# M&JX..2!>@7$SUW94>7LH*R^4T_O+/HV=AB,^J*\7G*QJP+G-@'@:(EX= U ),@8@< _]OF)L;[EOC0$RQIS4W9(B4:_ MP3$IJE31U&IN6%=^_).(431UHBR$M5\N%#&X7K_R';$&%B" /Q]"AA,*TOWA MG]XO#C !HN#: (N3JD.D=8BUZ6H2_ ,AP+7']S7 )1>.,@F!,(!#H'!Y0C7P MUQ90ADWI@>A-T53P?$*88?&2[7$;B(CU:Q-2$1B?Q_>:H#;83%%F2'W#E03* M2,F5=1LB4/BR5D-#LRQ;0DVT1S!K_^]__ M=3C[9WLK+IJ::?T,TKL.EC7%F/.3Q@:8 N(3"PCSN"##-_\4M+6PM?UE9C(/ M=#)('?NY3Q%#A"!2#YG,OXCG'Q$Y3FBI"YOX <5\LJQ00X<\0@XD]R8FH2_&.>+70XHMRL%2J-4C=&5!KYA__\[R0LTVLT>UR7 MZ#6)?+/1;=8J!;;'%8ABI<$V\A6V1G1[\(,ZU^AUB3@:TZLT>*X0H@7\Q1N" M*\'CE/3W)\X*RS*RGXF/3!';$Z9K0P2V8\BF ?"+>+_#H+Q/SB,$O%/8SRMY M&VB/<>(< +Q ;N]0,QGK@S;/%ELEB].K6K;93Y2BU@%(&HGGE1/'2[^.!KP_+U8R%\@FO]'$WCQ: MOIQKQ2"*8&*Y@K7UHO5IDF)BV%8JLMT?HS_^ MJ0'!ADOXJVJN(4/@_::(YG<<&CAHK*^PKH<&()!MRP M+&"(6PP%(K0C!4OP#N0(#B 534L1#'6']<4F)EMX8EJZJH4(C"9L =%4#*SZ M:"?$-D'@$Y9U\ M)H(F0+9!5 + >2 @N1Y=[9E4F5-2(8L$34'0",55)?QM;^T+RT3N(#C$.!R% ME^[-6@<0'25LK0I(B(*5N0M)0!(5//"!X"$%/9/VK2=!B(7RA]>C"UL":*CK M$R2[3ZD=_#8ANKKKP60<>&VA! F)$I)4-!:]PUP Q\E?6H@Z@)'4 TX)^#; M^/Y9T2/-%GZ*1GFK, V?<@8(*$>3OT(Y*-%09&S\#6^2^+@*:8)>IVM[?\+KQ,8L48#X@CP.WA@J MY1T-8EA@D!!;JNZ?C#_X7?J!@"5^C M\6,#LOG^A5-Q0:180 *C!8%]M[(]W=:JIB'_!1)D"Y_PH&(?*C3\&)ZA%Z9W M_#M5;T1(>'RUD)!#Z4;3"L;9#\0 *C[05+ "OHH=TNJ0'W@>4V&%% G=D$ 2 MB@)\9#!E^!770OL]+I*)=?@(4?S)>A.!@@$@A.N(.<+S@O"0HS,!.J3'U4W< MX#9&K?W2\7FI'?RMP\@QN;?[HPC^#R+B M__N@)P0YSBN=IUZ[4C37\X$XR&[4K#@H-MK';A#6'C?E9PO*MIQQ!Q6 Q]Y$ M]%M=-53=U7T/XMZ'N0XS/"()+VW]'6*LVU(M$E MKM1Z$GJE]JK15=N'KI=XX@-.2E&RP$_.EPJI@^C"C?K"^;3?EH M_L'4]KZ6Q(&O9<=/Y%%U-3/FS18U[69R[#*=5Y!W()8@3[WX2'D_GV/"YI,Y M5I<6S79RMDR0\2YG-;1'IB66V'!PC&H,Q/&F;ECD=CQ,SCLSS4F5$<<2,?H5 MCNW1$6(.Y-<' (3NLYW'"0M&')-BV')\D>HMMC6J!:O+.J:6H M&G!75J%-57EV(7O/CA-Y"T#+E*A!QCZ?;!(T@T\V/]]Y M!47N[)L?T),/YX^D"_G8D>!A>54M_$1HM@&-^&MNF&L#V8&(!(%= S;(BH-T M$+UWXAL=_(6_/6V!NN&U6(+3V _6O)E!.9_B$P9ZGX$?&?SM\/1A0'X'1AZR MC+T#Q_;YA&&C6:$#CP8E'1L^R'[=VSF0(N>F">S RMSSU#?(;$^+H7'G:JBV M$UP0-#WATX"V?7D"M%WX@&#.R*)$)T'X.<1P +4/O5,U/$#WC?$79U/36I@6 MFN;A2XZ^XMFO[RT''W\:YNK@2 #YFKW"$0A*RM6/0+]RC%E 8Q>_%(]]@CF"OU1!!9R)?C>8+RY^FX' M!1APO]7001 R:*$!?&#3$QVY58#'4]5&=Q\O#Z+>==]^;B66;>$9F1CA M!.2 0L.>GPMG)VJ"Y=,!0%,2K^+9^U)\2\5BGLPARL#_/.LJ>N5EG0YK%;X) M>]0AKGV",A_IY'D-/*M^B!3/MM='=1 O&;OPX0 )K@XB*=Q(;ZJ;Z*;M.0;" M,'T90KO@@;@'<&,_&Z4!";W= 4NX;X@N3"2S:.EH!['0#P$M/2UXIDUPL8&, M2V\#?&F5N@ODJ F\*!^\P[Z@=__0E_]Z\-49F__WX[&N?+62_L"RD.)-9Y8YQ_@W3%ZY?S M#'JYY= /AP5\#O]E\VV^TJWT*LU&]U:GE;2BL_8!#=L$]+U\.OQ8 \53=NQ M]Z%0+^3#X[X7VN>CZ[OSO+13\!W #MQY 20?Z#AV]R'/VQBOPQ?B0(:Q"/M> MOGY*D_.[OM&9+V?MGB3DZ=)@H?R>E^_,WG PIXY']CRB.JLH%E#@KV>]>TJ/ M2[MJ3C/X?'*T+O':9I(OMG_\P]#I,\%O'V1.#''5.SM&#/UX-/#'>7J6E3PU MG&N/Q?IT[I;6_;+#]&KE\AKNJ&3R]UF) 6#OA/',8M^]@B!V?P'^=K#XPU'6 MR4NK\(O%,2:B.,8HCC&*8XSB&+];'*,0I&.UDPR]3>0;,JEO*W:CHSX-;&,- M]UGRAZLG#DR=LGO5ZJT*OI(J_.)EN]V4NUU9IPW?-!/M5L]+FG%;-80UOI9.13*\.JJ330YJX\%EE!TXNK87N&74M)JTB:/3L0*E5%K@MPZ!E.22LP98R- MD>!URIH4Z6K?6K)0F\ZP2K(G[+JSYM1Y?F,,%IPZJ22&+!IZ(E,#?BT(J\9C MCW=9MK:;9&<4W57.2;23J8T8853=\ M",^VEG?,QY<>DN_^C>&\O2"R )_OX7DAAD\/USS9/1_MGG^YR-&NDBG,VI0[ M=# '0^2S?_+^2B<;NJI MN)UG2O*\)/>+!8>C![D)"T\CV5B".:UK@ETM'Z3[PH7T(*5&%4AT=SLO*?4^ M,WS,*9K(OA(X=4E"S[)&]?&QN9QQ2UMKV^.U]612OYU2?F8J+6 ABPL>LYIR MWT27)!5D?P'D&GE)\3A]0/+E?+RHYG?49*[:H#^=6YGR9(Q(?B;JZ5^!;Q3% MHSI;[[H,O0+Y%#$)O.LLYU1U/!<; M>9F=VQ[\=GI942XNMV2NRY)\5=MJHCE)@WGC6MD?!X=3\N'X''GV?@A_D_SX M/1"N+; __WOMZN#97Q,6-O@9_' X*71B]B>$#&_1.W >G\X/JDSX9_-3[X=C M!6\-SM[>BCY69S&3?,BFWZJH>7!4.'B^"9^)8L<"D@2_QU$)C9^>*P/E\+[K M1?"].OC%P5!A8ILHO_PSW >OUT\Y^-['I># (_2'!4CHAX@M(60+%;$EE&PA M'Y@WRQM'C/DCQOQB]5Y_5PE972AD8!,+0;U$_5X,SR%;WVM!$Q/&U^\SM=W/SZ7+-,^N0_MB6,QMQZTLE6>X>)ZG!YLBIFVG46^J@2Z$8UE MDN]K^[J ?[= M>*T7+7/Z+=#PT%F(ZEX=S.D,$/:8@0[F WG'#:1-4JQ.B]U.31G3" BI6#*= M?:M&ZEW8?J_YJ^_4%+P59IY2X1A:$A!:)--%KK(PX.AU3NLFO5ZT]&T)XW4*V5X^& M]NYE<)RCY^9W=?A('"_N[&]T%JXE3E'EB05D&7AQP8/"E1.#?H91(0<(J3NN9 &#LLT+A5W 2 M$'S9\QO]C-2#*03#GT.T7RP(I=#Z66THM&B?NGN0#H#83*7_C7*_;.?@B6C. M>)Y^@IV7\>8535J8%LY:PKFD>*#U3#SXA@.*/1!=%=?_<5$^GXJSEEZ=)"0( M\*@!E1U7>9((Q30EKW;+-HI*_@5<+/ET:_G$?L[+/*B(<5JD__#R>I-ZRBU: M[4&.[/8;.;Z6+S:+&>7'/TGZ7..=CT8FRS@5S5L_*C(E>:5^ D??B9#KS]GP M6 2AN, IH@0X6<6:?5B4ZUG)8GO]]?+><-YE($M!?H.?+^=E,ARF-R"!MMW) MS*]^!2EH*&#_1)1?]X880]'QBR5+JBP#G%F/:S!C;/!A ^J(#7!VQ@1 H,(E M*KQ4/_1"_ 94;0M]Q4^;]+70-DVI'![!44"BER>]7]8Q&B(_^Z^ &TK]W%<3@=,-:/] !)*Y!ZU3\N.\ M>K]ZM9_=T_*R>^#Z@8+K&'A![;*&DR/MK8%R:P/<>LZ)UX BB-L@XQ9'6EJF MK#I!F;A][KU/)M4^FH@SA?*KH%SZ!:IJA?/W(7M0]B;<3>;/Y9ALN+T"RWZX M2)[A3:(!.OM]K.)K%Y!P!9I]O 5K2+5G1K,>GW'X]9DRD18' MX<@K_$E>X<'CC.877"=-@O+&2:;5E&OP:R\*X6->X0_AZ6N2&(+ A-<+>.;A M&B:6"I]:!MH*H'6A-\#C73NU#8,3R#!_5J$=VWPW2AA\$^+[IPZL)&2?\"%G?>.FZ6:2$"="R1/%=]Z>M&IU:,%:0+KH<6F6B1 MB19^@GV.B1:!\R>">'('P^W&R<;7[7$*P3^3.1>C]G5-<4R)?9\6+P8KLLDCFSS\ M!(ML\OL&;8Q,9]!YDY:70.F;W5LE"3 M#<=K38S*2RW0A61DH(<#E"(:1@9ZA/4?P?H QUJ: !'?D+@ RLY _K:J\V:\ MUDW/EWJ1R5(]IY7L*.,T@OQ$C$PE[LHDKQA0=A3U.04ELLSS\!(OL\;O# MZ&U/!"%*MSF'U>E3I5D$\.6]NYLM=,=64YS0J]8U"W,BS/:+OS$(/ MB!/9Y.$ I@_%'8>KJ,^7H_$'0YS#54XHVB\.\KG/0'FFE=Q1C7Z*X9H%VBZO MF7%G0Z->#,C3$J,SIZ6"OJ;9S2R>,SU>9"%'IO>M #M"YXNC?H)%SO2[P^P D'K"YN"/9X!Z MD5+J#;'8?N2WR?I@:E3@*8W$+2B]\/-DYAL8Z)8+I&O =LA6^N6 *:)A9*/? M']ZC=UW6_>(AV-M STQ+9GD@9"FN.M&SKLI,*FT>-Q#&0$^1S%U9Y#734.(. ML'3(G'\LBS'DY/!$+_T6X6E;1 ,HGUMMR7*P:GP".!EWL:2U"7]_W<4H<;P(DB;D( M3:?G@CNNPWKK=49P>QVX#2(9SUOMX)Q=GMZF(9Y'9/[]NRO*;@F6TY3/H,)I>YA<);WN+K(KD1LL1YUU M3F#CJY(2M8?YS/8PZ<1#)A/U57A3"F[4'B:1C/@2/KY0#\E(7T+(E^P#'>E+ M"/D2X5@X^1+A6#CY G$LZG,5FCY7[YK'-R-"YK/\C>\!^!]3X(Q3X9@ DZ,W MK#VIGYB:].^W>F!-CA"8W7^%H$T*T>,\[>(]K?N\&(3+EK@^ASXJ;$^S3 M[_EOD!O+OJ8K!CEOQ@OR9O94**Z$3S?JLJ-J0ATPG10'[)$,GFK;4'HL!7="$;+#*XPH$6GVEZ978=+=U?2Q0Y*&2*@]ZPZ6[:""N0 MZ45>VO0*V6&GMP_-^Q:GVB\10_[*F?C6V2WAVGI>]??=FDR1$?GFMK#'&_]A M:VK0'5GUF4ZJH\?*QIPMB@/ET^W%1J)>2-M<9D(*2KXA47.E.)_[C4J_K0OP M*X-E1,3(_?@58>\S#=\>&\\DVL"9SU6R7.H]KN1&5FU#T(.&;_H^7(X'6?/W M=\3_ M#BX_.M,P4_Z?+YULN\?].SDBG,VI0[=:5X:(S43<5,[_V^AJ_VYHG0I]/1I^(8F'S@H:08G>=@HS6@Z!: M-5S!1R,<=7T06RYJT,I$XC']]_&K$VARUP@N?]7XIY.!7.R%@DJ^C!C_[_\Z MBHS?$P+E=9K6SV#'/5B6'Y%/8Z%60-P+O!=D^.:?@K86MG90SB-SL)O_W._: MB!!$"MFRQ/./B!PGM$0IHP<4.\H:];YUG#?J?_9.]+_/%L=<_*2I!V38'J3- M4LF'Y)7X]$)9$\]<^8] 3"VT]?]/KYD_&PR/?H::!'=C[=^'(:W^1] RQYFY MIDSDO11;>R^VPI6RYT\.FN_%W>;90HWGYZC6:/ MZQ*])I%O-KK-6J7 ]K@"4:PTV$:^PM:(;@]^4.<:O2X11V-ZE0;/%4*T@+]X M0W EN!])?W_BK$[J([PY1=4@G*GIPKU&LF.HX & 7[2GN'H JEL K. WKT[! M\TK>!MICG#@' ,+^L#[L;9B2E>)X=[>TZMG!J/2X74/[FOSA:)TY$EEJSS\C:QX/6"O-E,4HU.<:3 D2=O;[ID5C16 M2H<#7)R/3UK*HFTKYU;498M"OE5CQURIKN92E"TGK!9[;D6R["R+ M;&Z!,DZ>/G.>FJUS;;DDDEN]-JQ5F+(FF2P\%YR,S)CL4WP\D]/\TF63NVG. M+#?A/)G3D19KF;/,L+[E5>F\Z[ 9#(D/,S4 M-JAAZ,G(6G4Z:(!M,C$7A.YBICH[B1NA?G0G(Q\W2J/#R4N2SZ>3B4J"WZ4, MFD5-CDZ&)II]=U"?B(4YO>@X9/)QYTQ(!1W_3H;N1KE,,EO:CDF7+[8**5W3 M5HDU*LQ^^M2DM:/MQX+*Q3O5=LUI5;?EZAJ5]CVEU"I5$J?]U(17-\VJNJY0 MN\=<&]6&/!G:&G8&F;K-T%S>[G?E[#'/>BC]KIJ*J+K*K:3YD M(AM \>L.H9\#.^#=Y_R_;US7Z6 N+=<2IX(-6O# EA-,T4L84$I)VZS **# M>R84 *JQ@QT=F/(O_1L-P;+&(#5M+Q/9K3-W4^O>N#JB]++*OMZM\H/,(E0; M[I[>5% )GPD@X'/BTGY*B :XT!^B,K_-$QB88$X@,2&:J <)P81^&/X ML EPU@ 8QQ6*X-:,.0,?H*+GFB\K&CWX?[? "D -P]\037LOC3:Z.Y9PE2#5 M$#473I10O9>TO%I%< 10=*@2A&R9.OZ+)#C8I#UZ3^_XQ<1:L.'2'0(R'.J? MH*')F:Z%1!%?5^.21;)J"(:(_FH[\ /T&OOA4VI+O:[8ZAD+7W7@M\7SQ]'\ M5M#@.9HXD%4H/U>>_J] 5=,@ZL*62,8(I.\QHBO(@J5J4!1B1*V6CQ$"L9Z: MFK:-FVM4>J\3$D#5N?!D(.-<&<*#:V%=6%@FU$'@ M(*J)4Z CEQ0!<?X<]D24$6RYZ&V( -G2Z";-T0M/#6$.(LMG-#41/>(CB6H!GJ8H.MH M[\ "ZA,C/%+ZL0WU)<((7C,S!"6(J/ #8N+O'4A8@_)?#X?:&0\*IB$@]+CQ M C7Q>=T7DS6 #/;I=>FM>'^CD/S].FO^/ _^YF_)U'J>>I(;&8YOI@KS06_9 M@-;4[\>=G"FJ=O#.CD?2/*+HV?V6<4K5'E,;N:2>KR^393U;VXT4U+R"3)PV MK\!B?#5J_T%5NU>I/1]OD@4JE\^35;4C[P9\LS#G;T9MT2KFUV:_H,SSDWHF M[3YEXI,*IG:"3)]2VU>!#Y@WSM0"GA5AJQM"A]2=0A/%0&;#HVL (D$&NXP% M[$4 R9^SI7^@7.2S:\^K,X^,$54"GES$" -@PT@4[.F^^F,,X\S59#$%=3^0 MQ?W/?R:*Y#K53\:[J%G,=*)/>REE)L?7ORV*+6&+[;*>Z=\8!K,"=@,X33D/ MJ17<)9X5QHXHN( V$G&RJP!ZU=$S_:/6 _W]KN*1VG#TC=GLU+W:8IC^9T?<*,2\ER.JZL MT9WMZ87MOP+K#L G0A-"#5Z!C!U_[9Y9[YSJBK?Y'M85O7I!T5^&WMNUZ]7A+M+OO.7K(G MR7>M__2E#\JXV.&YOJ[Q1WTP2K67O-KOUKLMOBH6Q^C>'V5EI6,I\KZ:.-4@ M,7X>NU?NKHE3U)[UHE4+OD#?U)/%$W]]7Q \] 86+5,_>.$9_%-:)7G+%3<< MOZ27S=XXZZZW.#X+Y1G$,HE3[^#?=]/O]&T_])T:?K>"RO>RZ.\P9>NC742_ M;1I7^,'T3ZY>(+I.ZZQC5:O,BLRK*CG0C1&KZ&NO1M0KER_?)%_DJ[2LPS&$ M^(H%Q6_XCGM7AX^$D[#Q[8UW.;/PH^-0()@(7MS5!(WB%A;05!2/8FT)65 M M8@7%^+GUG+7OG/@<$W'<<14_Z4QO[A@!44B<$E-A!8@)BE(#D!RZUY7.04^" M+WM^H]_R[F *P?#G:(P7"Q+V 7\X5FV"*BX1YE$TW+X9WP0^[>"):,YXG@LO M^D:P@XLO"RQ,"X?('\07Q)X=A*6AVMCN9 =1"T"0@@5#H4/!,%$QW(@D' MA!--5T-QA(2DRC*PCD+Z AF "[:!X<4;0JE[( ; CV=$+\1O@ *"OX*H(.Q) M:IMH?N@!"$E$1(08,7$=PC )M"[$52CLI@$(E.Y_&DQX$KB(R(T2$;SNA_ME M'8LV#'VX- M8.$X-2Q=<"]%ST$=[H$BB%L":OS:F0:](675\6:\?0XB]0FEVD<3<:80*I0I M&B88-IZ: 1ED0.Q"H6"![ 6]*(^#*K_(/>UI)U?4XO'=MMDXX^KT"I?O6J.< M.*)'9%7.6=/>XT15NY-B[]8WN MS=U8D05HG:#;>]N^'/^3!^Q",OB: (;@R M_FKUA<)U&?T%"/:.C1L1[)>MS[LEV5W8A:R7L8C=D$!=(4?.G9J$X;GKO5]# M\*[MO$].VOK3!,U3?[5P4FSSK,4 **)A9&Q'N/YA8]N',7\[@_N)#BCRF@7B9"G_N%!SE8RJ MS-M>67PZE;HKVQM3@A ]:OGA59$1'AGAX2=89(3?)UAC1#K7K(0?&6PF3NI< M7,L41[VJP,0WJ-1PXK"]Z?U:XN8"3MHK!HI*^2S0A6-DCX<#BR(:1O9X!/%O M07R 7RU-@$!O2%P 86>0?JCPZQIO2^TY'3<2[>'C,M%MH%+Q".FI6)JD[LH$ M?^[8%=G?D?W]90@6V=]W \XO>P9B$[PW%?9E]\^ -*=W)D^YG"GP>:;*RH_M M@3DK<,NWWB;> M0' PJY?:JUW^:5ZR%!TD$L5*3U'&683@3(Q)WHN5?= [^V7^<&1IWPJH(U2^ M."I'$!Q."+ZDI?[JG>634,OU:NVESC7[3TZBDRQ2RJZ-&MQ!-$]2,8HZ;0AQ M9P;Y/N1Z(6R_2[SU5X"GB(:1RE@=E9P _M2LGK&5/EWFW MW=(;#,."7 VW*<5%%=2KUJM8HC3AZ5,P.!O@=(ZEY+FF!N3J=EU9@E1QU.A#@ M$YX%GDK?5U<'+U)<,PTE[@!+CXSP,$!XY$:/W.AW#N[7,.(;IB&>^%QJ$-IZ M$-D*8'(N*K&6VID5T-S,N&Z6J@.GWMV!"H1[G Y*9^XX%_3P O5,L>7(I@\' M?D4!,%$ 3+1M7'/;>/L\L*BGJVF62J7GW51)[X(RO]DYRIC">:.I6#*9N*OS M0 ,X43A-""#I]!QPQS52;[W."&8O"[-!>.)Y*QV0'CBF2O_$8BIA0#H M?WK-_-E2\.AGJ$D0*S3OL6MONOY'\/"(.YF8,I$W<4L2>R^VPC_7:=5U+&O^ M0B9';_$G.3$U"?XQSQ8Z'%%NU@J51JD;(RJ-_,-__G<2ENDUFCVN2_2:1+[9 MZ#9KE0+;XPI$L=)@&_D*6R.Z/?A!G6OTND0E5&CQ7"-$"_N(-P97@_B[] M_8FS.FG&]N84<;,GTX4VG63'<%LJ^$5[BAIRX=Y-P I^\QII/:_D;: ]QHES M " $VQL]RG=7U75#Y:IJ83&>/FI-E46UP.D?GK;L1\X[A4TEH_0SO#J3A6U\ MIRDB0"-3+T<6^KM5:Z"EC7EIJEB@K='B=.GYG(S*?,^LG.D&"^S"?G MCE"83% 9M=.1[IBTGZ0:PPW4TJ)2J ON;J+ DPK7)5-#)8T8L],V@D%;<3Q57#-"@> MY IBI6U-=JDF.T9#$]?8&Z_46K""&L(9!O ,T+7J3%^V8(L==M=[[JP&A5^# M-MT*$'CSLE%C.-^8W+?@"^C3JE>9W?@H9T\" )B>"UQ0."."5$3? ZPJDOLJ,/>NMYC?0$>)2 ^SSA MVD!VD8-RA5R32$=MOZFB_?,+MD4KJO", &IP-2?IF7L?A=T2+*K\>77[S4?-<\OAD1,I]U MF_<>@/\Q!<[X$XX)\)9_[/7NCY/CQ<,C&*+(__V@?_S^A5_ZMM%XF8]X%C]. MNY)EVO8)H2(I^9"4[$7BGB2"]1U7O.>XJJDR.";1[\%GR,+H\F?]@A=3@I"M M]A;-T)+A8_HE0CZ\,^9W2Z^Y9M/;X-MON)9SV[HP,ZT\\K[C)P;?"=2X#=YR\+61]Q"KYP!78'<#/ >#$;2#^ ME%QK"P3K)=P$F/+&M ;8;@.2;[%Y!ANRUYZ30]J]WBC?%U@2"(GN0BDF^<(, M@0_C!36]"#3[0Q/OEEK5"^YPMU_A(!-"D'C/%WB/:W[OOB RW*Z&G,_ZFA/L MT^_Y;XA;+P!F20L<0BAQ(FFN9#=K> M,M@P*7T(5LKLC NBE,?*:I!;9ZK;JU.A+9K"P7*ZFWH%I9!!+, M81^H2YE:(3O3]/81=]_B\/HE\J]>.?K>.B,T7#O.J]Z\6Y,I,AK/[09[F/$? M5G":LT4-Q#6N-,X_&K510T^O/]T^W+6+L\R@3X[);F*P+*3[ Y'/M;V&W)GO MZN#[RA@9$?'NG(L50P(R5N^OZ>4Z*'9R?X?++R#F/E;<.M'[DVXW;[W,N[5^ MR'6JGXQWLQ17G4[T:2^ES.3X^K,-EJ?^-#^OR[I,NNQB.TH^C1][).MUDG^O M25J$.9^,.1'%PN9U"R'%[KI^Q%=):D69H[*K:7[Z*$H35?Q"(NCG8$GO/N?_ M?<,"+0 "A_%^]YF.(OM[J& M8%GC(6CD2_5:8LDM4SFU;66=TDQE7^\EAYE$O,\EU2: /Q64'CP!!'Q.7-I/ M"=$ MX58N-;"M%%J<<,D%A:( TAE!Z+2<>PA@3^&#YL 9PV <9S_;$A!FC-\ MA(J>;+[,F'[8C[# "ABN5QQ -.V])-K(B27A+&35$#473I90O1>UO%QH. (H MJ/\U(5NFCO\B"0XND7'TIM[QJXFU8,/E.P1D.E0^04/3,UT+B2'VF^&4:'C^ M$@P1_=5VX ?H-?;#VX5BO'SY,)^D).]9>@59D/^GIVI-4JXBZOG*M8L.,:>JX6%])D3FR.N!*U$#KKP+4B.S8;CVN3H$8T$7,W62+I(TF:DIZ\JD:/71 MR),J"-;46AO+D5[B2JOJX]34NPN75^#(D[>3_?)PLIW+-+_,K_G"RIJ7AD,T MDJ)>#HTS)D4M>W2:'XQX?>JH?,U5UF?+(#QFV^M!\XGAJE*23#1K714TT+W% MR9)F2M_6ZO'!DG>K5FFPF[=FXR8JK7"R)'KHE@ID.;WE57DV-]3X<)T$Z.TG M2^HW.\[ G#P->*8%Q$&#'5;S/33R=$F]>%E*/YI@R75+6D6=%'>SKG:V7D/* M<*:*,U&:)*@-#"HGUN?-1/M<%8:4-&O5ZSN))-T.V\S/DXXN#I0Q9TY$%N F5 MYALR3^I<]7&S%JIFL[F&(T](+R^ZRC8W3!>XYF1,-I2Z89@I],P3TDMM=TYO MJ$IN/ECGIBH'$B5EBYYY0OJ%,M1-7J-=4E^:V7D\Y^9G7=0I^07IQX*<$FEQ M L8@E9J,DP*5&&>I5&I,I4%*3DPR\'\G2Z.7G0W%T+4IG^=K^=5RW&I+U?4Y MY1-'C,P\*D9^OIUGS)*^4C6VN3ZG?).TJ)1 :VES Q=DJ?J@Q>AIY9SR#<1" MVA 60YMOKH7Q]G%:$4=UY9SR-=LYEEF"\H3L#I;+-5B 3:G'GE.^]936:U.J M7^3HQV36&;FU63F*&;-]*9+$?/ M)\U^:@-Z0TDYIWSEF9FUVQV]S"UW<2U991>BHBKGE&]J\Z"J57[']A4T MT3/*MQXJFD&G1Q8)U'*3MM\;APG M'EY+K^EP?:[!*$I@_>> ML_+^J^"]A]\WR>E\G28GUS>_2*1]';34;U?+RSZ0U#W51NM-+0 ('?YA:A/ M0/$SCZX!O)NN!!E[I:)<)&Z?(VZ9A_1)D/Y7%K>NNOE%88LP/6Q*%K::E:\1 M DK"7>D.NEN_'!!?M_OG%Y(1YLYDA/HJF_77D9'DO%+!.=?^@^>)'Z.-X-Y6%HA* 0U3A._X2_KZ82H1LX;E+C\<-11^'BM/'WZ_:2L=X*8.=2#$;$,91K#_Z%4K#-9QDRJT%F4#7[# M 4M(3-J&S3/5ME;BI\.4!YDIYLIS4:V5!Y4N2U*DJQ=VJ\P?%E"X#*=0CJ^:,MEOF2V999=S^UIY6<48[ MC3 E$]9*+].+?(]U/%=-UIXXC=-9D*_1TLI-V>T; MPT%\6ML4=)6IE?"PV^"QA< MRJ=R @:IG?K(S^M/J?E@"-6X#8;EL@8"9R&]]UL,R% M?2C?UG=\R8B9HJ>"+[S&V;C(M-S=H,#I]&SF-)+ I/E;^U=Z*M.?EBA+YYK+ M9&W<+I0[FW[;J\@/(3.9B4)EOE>HS(6=,-\=3RYR%W4>3YC!9+*9#1=UKIGG MLDU[OI(?L[_?@^PR>/*XF/=VA6F^PG6+F=J\+^LEHXXJIN)NE+%DYJT[J,A MN<-[[]LK0U;18)F6. M6>6;C>7"EF;=6R-">=.AZW;U$7!5A\[6'T?C=K&-$('Y\4^"C)')JS1<_:8V MPAW=D'\70+B44^4<(&A9/9-/"_,F.4@.*WQ9&"OSR:T!P6BJ18MI[FRR1"8= M(SLQ[">%A6O/_O@GQ<12]!73CB) ^+J $(7,7 1I+XI*$_#_A.Y+&D%7=<' MP_;RUHB036R*2F]3:,^K3TD[OE&52DU>P[4C?TB*CI&)Y)U'S32=*; BI_'5 MHV1N6'8I!%$TMUY]..#U4CX9K+-!@K<17XYKBUYZ+HA4/#>F^LZ$OO4]>+-N MTU9M4%?);JD"FO'Q6%I3RCB-\Y9B*?):!2.BN)HWXFINK8.WC;NY]>I#A4!_ M;. =(A";[-;U:HKEYZ6,95GSGK*NB;<.AV;9G V4QGS!55,9ULXZ.]E)KB$" MH4B<6#8;%9BXP<7YK77PIH$ZMUY\. #H4CZG0P"RT\NY:[9IBM,%N5=A1PE6 M'MW:!'JD654?VV2*5Z?4=C3C+-? (32LV+D-5U-$0!]=P Z']ESZ]6'"H$N M:@)EDD_)S3+/\W.@5/OES'++%$:W-H$DD9:WN_2X-L\OZ%QA4>V0CVN$0,BW ME8BEWX2@+Q3J0]'X'0W@$#;B5.2R_Q//U1%&)"!&2*8[T4 H(/*"I9%OOX)G&8L+*%E59UV]M3_76R]EJN)K-2+KE,NRBW]UL!NPX MXY7"R<3HQ!7K&G\[) B#BGP"$J1#L,Q0(<$+JZC.BZNQJ0C#^78G.VRO5*1:!X8 IJ,:ZGTBFPADB 7#M4,I:**E]<^"!U:Q7Y!"0(P2K# M 03G'33TJJPP8%8?\VYS#9+E^+PXMVY]P"F6''[43JHSGBF.>;56GCWI"C() M< 4<.L8DKI6_'0'!W0(!'8)EA@H)7I@$U0;5-N9 '_!Y-MG)J1F&QAN<*K M?P?7,->"[_B:*YJ:)BQL\#/XX?"M#'R5W[=<%S9Q+/I&,)&X!F3GI^ Z9O ! M5D#O$U_7O3$'RN^/09_XC=:\]N2.%*3&)%]H-_,DH@8\4F,H!\2$2/"P @* M]U:-&'%S1D!H>C-=(V)$9#5]-T:\G8L5,>*3&)%Y2$?F:Q@8$4%3:!@105,H M&!%!4T@8$4'391GQBW&,[SI=/V_5F5]8]55%[N(7(B) Z>$?)@+^;>T)^\34 MI%^EBFAJZ,/_^Y'Z\;M>EL1#^B14Z%/CIS,?H.#DZ"6'!/OQ3V]J 4#H\ ]3 MFP"&!"3BT36 %W.>(&-!\/DD$JA/$2CJ(7URG_ZE!*JK;B)QNH X1?O3[?F? M.5GQ6Y+OR?;IOR?2OH<)^G=A@B(?TB?Q*%\*)E#PV(5@X+VKCOL6@Z\N!=17 MV0Q"*P79A^S7-ADNB 61%'QE*?C66/![!M]-4[KA,U$H*33RNX[@7"K!\M:E MT'XSWO 2$4RW7O%G.D"'F%@"I@*)-444]7+&(9$< M:PM?-B:-9BL]<[493Z^KO8(J#N(#AATG M4'YE)A-+TU!\SN2'<:!*[NAT4QKH\\$TO0!YT:2%\JT[1773XBY%-](C MSM4=I6^">GXG('L M9YCF!A%O=5// *"" B^+Q#\KD&@._/$JM@S*+Y+KY,J M[;*)ZO;66=;#1V?BD'IQP'=3W?&DE$[8A:$"@0#E5E+I1(QD(B3XDA=[5^B. M]ZE%P&[IP0E-(<&]X_%R/IVPEPD,IX,GJ"#8, T^Z $Z>6QWR?1Z"/CJ;#GJ MVY.GY6Q^:T"?%7-LD=S-B_.J4"R[DXFSF-%MN.:K-LJ[^O5M2,#AI'+6'8'# M;6,10@8.OV3DG0,'=CPHC/A2KCM?%E/S@5NO*X/)K8]]Y;H Z.:&WG*,$I^O MVL-2OBZQ<,W7[IGW'2R'TQHZ]P(._J$O H??<06= X=A$ZR3"R.=FE>K@T6R M9_5'0^/697:TFE7H4WQ6Y>+Q>#EI&-(V7E4@.%R[?UX$#A$XW \X_+'E()KM MS( KQ;<\:(RTUF13&'=6M[8H+4&A2J?SSY5W&FM(4HZLAP^U$KO6Z## MUXS]N048?FG7W^6C@VY>D?#SPH=NOM00[!-?J"Q[WY1KD\&VD^'BC6VCH:P7 M0LYFQZDKEV6/XH;"IC:?%UAT\Z6&!R&^0KEV.07X=*O3*/*,-8ISBW4]ISXB MA+AZN?9O:D-\J/?5/2#$JY$&-U]J"!#B"]5Q5WK*@JDKZ0FW9$@P[N?*UDA6 M($))4EC*\9FADU5YF,[HN8$^HQ%"?*R^^W>% MB*.Z]CYY&BXDNRJ&9J*7F8;W*WK03]6!O!4/]8GTFP3Z"A7((5%3!3Q!]:(5 M[<]4_L-8&KPMB!GJ^*4SPM;["*YN7 >(FV#<&RQC-F4EA3N2K-58>UV8Y- M6*R6;__XAXG1Z5-_#B;1=4A#T>.$OTO-Y54FW[:M*3^PW4FFM&G5GHJ_;[K^ M-FU2LT2O-<]T :?3K8EDYM:C\IB%9UDREDUFSQ#'1FJ RN,0"3)&(#YC@A6 MB&]S_*(Y%/X3_-<"]@*(J#:;MGT@_/T3*[]B0)"1",FUD&8B.79P62?T-%O= M> \Z*V1/] MK"0\CM1T*5>LCN>#+%N>MA1-5G8L:N]-G[D)OXJ6?.YQ[P(T&ZC+:J;@ZFFR M"J;C\N/CIK)>*C_^2<=HZC3N\(4VW,A@Z !=4 VDT'J TV-/ M 29&K $Q%;[8$U2[MBJETK9]<0E3.Q M1/:,,D**67NVOF+DQ'PK9P^5 78Z4VCJK%5-(R;(Y%B9*C)AD'X?P#3$U< 6 M@IPV)?N!Z$W!^V_%=HRFZKC@@FEH6VA]P,\LP5" 9[CAU^O0.,%[@ 1D^#S, M7+@HX1G,X7D%&H5L-T_TS(4J$@S)!(79U"-9/5(#).[>EH.WBT#EH<4'E9X( MM!Z*O JU\\S>]D , $V2&G1Q/<$(83%PC(WD.L.5.6/'FH7D'YC4FI4@41W MM_.24N\SP\>30Z V,4531%;/;@"L.J.>?Y=XD1! _\J$E<)AO\!0. MQ<]0FG(7F]S>I"!/+*< N>=E+4F0,:)A.V-D-.-7D6F2&J^2PUZ+,?)+LJI5 M%X5)D;*3W?81J>,V$']"(P85I+6!\5NT?FNB+:QNU 'E:T^==GE*QDH=2/->>Y%>0=F>@!?ZCD;(IJ:9:Z3?8612 M C-) +5^WW#5%*FF^+DJM!BVDV%OS*2%GNIV\PNAR].=66T\%)O%9E5!3#(] M#FV!8)TPR+,)7OHVO + !W6-10U^&;E[IO[>N7?]H3WT&H6-7ZV11">?W7N^ M@8$LG^/BQ?_]7T=5F?<.*-3:SK1^!E[*@V7YU:!I[)%20-PK^BS(\,T_!6TM M;.W )YIYH)-!.-[/O:<3$8)(/60R_R*>?T3D.*$EZIIW0+&CKGC>MX[[XOF? MO5-YVF>+8RY0=534I \*33RH<9U\2%Z)3R_,OL0S5_XC$/!X!;7U?WK-_-DR MF'C?-)#<:T=50/V/?OS3P\T)(9:C;13MW7O/EW!)[]>?U./*LX4.1Y2;M4*E M4>K&B$HC_["O6'7[Z36:/:Y+])I$OMGH-FN5 MOC"D2QTF ;^0I;([H]^$&= M:_2Z1!R-Z54:/%<(T0+^X@W!E9 Q]_;M*?Y_]KZT1U5E7?C[3>Y_ M,.N^)]D[T;Z .*US[DX0<9X5A_Y"$ I$$)1!Q%__5H%C:X]+VZ$YR5F[VRZA MZIGJF1__ZC(<"UYV4.D%2P' +UICI(BB^P\JJIO? @5X=Y*W!>VAG#@E *#< M1O>BHCMK-Q_R]X^X-%=01_ASHL[P;#]3,\6)5&)<#BW%?P7B?O]K-^/,YK M=+3/5KR534C-(LEVTL/1,%4;CS(KM'*SS]=UK2^Z2 [UG9(.]1W;,+V<8@F: M84&SI M?D-4,0?VUH5JIETH;0J&;8F("C3%V%7^N/T/=%T!K8 8?9IL..-N] M=<3'KS,_^?1::\)2O0=%9Z-=8CHW% 'I'JC1ZP&_R!4/54QH@_(1RYG";WOH M8E76B$$>2\OV_??0.(9?A3(+_EDP+#MBF-!JLJ&N#O>T\I^VX#4'G#1?WW#- M_O9!=&%"ZPAC(#H::$A;DEL[HWU=XICH2HJ::/?SQ:XZ=VBR+SL5@#//.XL[=NET3N%"IO MWYK7A K^&:%YV2OKKL 0WA?7%P;W=U_<\7BB$V,L[VUNU;W0"OF42=XUK1R% M";;T@O_1S*>U%+UVV5%>T15K#,2(;!AB./3I3SV=US[W>7HRD-FP6@.,>=.O;$#UO!TUON0WH M>W'&QQ LE]<4/B5'4D6Q,.@W.)/EL_UG'*LV$]KSNME_.II.7[#WTL.SXG>X M.R_#BM_OI'S42_Y3S.A4W5&FY%@8VZED.O4Q61JT.F[07)^,8HFWYBC=IP^A MS;L15/%G*A#&0:&Z,YMI2CA$^A+^A&NWV+ZDWG"#Q[VV>+N\J@'9M[;A7FC! M=-:\^YZ<$_1ZQM;;W2I#B'%Q6"GQ=%9S@Z:P\5242(3-FK[#'7%M_KBH[G*# MY[VV//@&=>>+ J&;$Q<:NR"&F,,/,Y,E9>I8OQ7T@(WC40)_J\'C'7@SKM4B M_^$/Z2LZU^[5>*DPRK7/=6UY=7G]!I(9 MRKV9^(P*@).H@4XTDWI7@[A6']2O)6[?9K/6;3UV@Y\UZKVN0&%)@9KF\VX7 MP[06JGM]6;D],,O=.DOBZNBKE2,][OLZ!6(PLS M;O!L88-ILD&JDYKE:6,DUX M()G0"B?K\-LUI9$N)_,J"$5BNN@4L23E3/&"Z_+IE7RJ8E\K>/U8%ZUEV5:"P:7/:T\T^G^6*)ROV9;I0+G>2@SSFN2--&JP,H]- *X_@R:C: M\XJ4&A0#RA)@DYW"0GE&*X_@28C+A"9Y+L[TJX7"O"_84ME%WH(C>-J9!4>5 MDK,*1E?&F923F-D2X4(A<+3/DC%0:0XSBEAE+"1K4SOE.0DJ$!>'*]/+A"ME M"W*9\<9R;4#7['+6H+C4B;.;YJ1*Y2N..FTP#KTL6J,+&-^HYF,NESY^)MT0BLV*RM75CMX55IAMJ]DY!5<>/;/M)3,9J9RN M805&\8SB%*_:&,5ECI\I3K%$%U-7+%, M3C%%(NT*KMPY1&."$=J,\:XVE.! M0W7$U9AHV1VT\@A'6,^I%3O%E8L!)S,2' [3:8!6;G!TX;)X%$-'#?>@S5G2 MX=4E*U"6HY[AMO561X98K8GE6M4:S M]'[3S W&;KVOA-]* K["\KNW"6/49M'O$RVO#X!4F%VSW0#NZXZ[D=>;[7YS MLX@-M(]9(.LJBU0AWVXS_5%NQB]CG->WY+ _Q&WUAT@FGN+DSRQT#&R6)RRQ M:U9U0Q6HQ!,6#_%R>WCYN=TC;ALO:7^X4(B76\-+*,=N$R^X/\@TQ,NMX24= MZF,WB9=0CMTF7D)][#;Q$NIC%\7+)W-3WC7SKP:$;VN7\)X OWA5]PF0W$A% M?.:)C-]T0?PG0=OFDM^?.AL, LJ>MR??+_QR)DXY<;.?D-5-M<$PWF& MHK\R__WJR6O[)[UX_MIFYE8'30U @_6RCJ7HP+(Z0/;G[.U&:&T4F9K/=5QS M@3=-7-)J+,$KUK1>S$XKF:]/(MW$;D_U]7"$&+X:" 6FTYWFM5&[T19%E&H4 M][/>DN3QR,Q0 )Q/ ,1O#PSG$0!7NMSN5@#LZZ,=8"X4 6R$P6S+X4F#Q^$6&0,U,5?"GG)+:?J3KIQ*1K/>,HZQ&U!(DF3XS/#65!J R$ MRL 5DMG?X.)*3.6MFJ33:F=.>S0Y*>4F(@6Y. .O]&242+[5JNN>W(W)6= M "(FP@MS1PGD8MV)B3[2S;XVFM]<=2T3^% M"41X^&!TL&*()R2EFC'GW;:LM]EYN]TK]+U",9-W@Z:&R6@*OTCKHI\I6][. M07G$,[^7WW$-V8(.B1/GZ)'P,ZDXO"%O@8KO\(9DQQ/*&(Z;9;4R3H[3)DZ. MX2WU7?==V+\.Y0^%P^L7)O_ODGZO'(% M7_OTUS560JX([^1;//U-W\F==*^2(E9*3:T0XW*F5^JV@/KG88L_NUFEN<#) M3'-$JLETHRLMTJ)'M=#-FGGW9KVG^ 9VF)-5XTUA?)R0183>G#^1AC&/2&:TN(A+:M5)NS,Q7+CL'S?DTWRLS?6_=X?C"R5D_32*$BL&/E @B/1NT MZGQ[R,S[0W(,W%*_5?US+^*IV6M=E4^NRD8^L:S4;_3VD">; M EXY&VQ0,Z>3@5=,J0TAQ;?S8T-P9U]OTKX1P$W'%,:\!2A!@*BV(4JI7):SY*#-NXD<9Q&&T9P'KLTYEI)9#XKI!-8/[?&:,P5AU4J8DQOFY%Y* JZ9;.]O?VR@-$9\-MXB M!TMLOB3P#-:36U7EV\I51 \H;2"4<&Q.32L<*2^(/N9RJ:!<)4F&Y2IAN4I8 MKA)2<7@UWA05W]/5B+MJ8BC5TPS;2.34?G=>!]G/$ M!+WE,C4T*2GS_@7W$%&1L$[E9APMUXZ,WA:8PN39/Y'%GSX9@W MD I[#LN%XG.S2B+?J;$->!I[&H^E1Y,_S^$ZU>;TO))O3&MT ME6EQ&=\<243)L'W7)6MD'E(0'!?)A(+@'%4R6#6;TG&=D-7"RJDOLH8IUYH7 MR:SOP2=853)CL5[-2XU+>N]9*J,A]F&53*@M$4W,/CP/[6*;]3]2=/AB&ZYY2A\S%-KF MFJP*)K0Y(_(:6Q%(1!%>$)RI ZU2($:4Z8Q73+]\1X,+X=9\E,GW5ZZ6>.ZAK=QH*"_!I-I!-'\(E&3&#-@( F.VI> M- ))QI!\.SX"3?@(.MX%07CY_NRO$U*6TFEG8"1-%:2+LTE+Z62Z4Q?"*1Y- M9S+?24B7A\+7*&ELV;G4=%S 6,>N8CU%,0JJZGZ.DHX&62&2PI^"6^+%G1!, MW=R;+2IH@#>1BC#^]Z'PCB.)>(GAHJ_.*"/(C8:SE<=XZN7$T/_^KX/)J%L_ M;DPP-,/\O5%6]HZUGLA*^'J+#&+!X%5>@F_^S6LN[UD;/2C]1&R-H]];A0+;?^Z-<_7:2R(.*E$:OZZ1YK78"_D#YP- _OW^\,P*.I7)N)%!O57*E> MZ$0CI3K]M)V'=_WMU1M=IA/I-B)TH]YI5$LYJLOD(OE2G:K3):H:Z73A!S6F MWNU$8FA-MU1GF=P-'> O5N<=$=HDXM_?N*N7&M_;6U3TB#TV' O>.58T I8" M@%^TQKP)_+MJ!LS-;U-4"F+M3O*VH#V4$Z<$ ._?$1R6P0DL+>%2XMQ>-<2A)&>)+'T@2?^!5P#;\MZ60ZMMDJ.B4&3,A\:C:CI$JBA>(Z+U>" MZ2)GRN*04+W"7"$\!ECS6:$RPF>=8HN+(Z?# MX-JL00&093LI-8=YR1XPF MZO$.U8(:B])5BP:M"4L*KCQ"_9"+Y8<5>LY@1+H^RZ<\W-)MM#+]YYM)2L"^/1(M'7,$><"&.1D:IQX"\](NC20)URF6)S MRO!-FV[8B3H#>O[28SJ5!7MD5W-R%2/:^&C8U9\3TQ@\5_QX!\^8Y@"NVAFI M#@/*^O.@MFK*,EIZ!-AJ?%K'":;9PT WJ]32:T'A\*&7:ZHO4T,6;C[O*T8",2V=6TVLD9 M6$'$2!WDVPLN<5*PI3KNLM'(.QS#\RL)YZM>#(X M6MF]*QPRJMJJW3@DVKFITTU:Q2ZO]1"6! M5^=%BVZXIP3;?+ M_51%/BG8%LI"JCD".U3Y\4+NS8KY2B%%G11LF*,5JJNQ%6.5(MM<+%G>S)FG M!5MAELIUGQ?/#CL==^+"_%D:YI$(.B'8*EV58!M>DRGNEJH M/V=CXZ7*]Q*E61+$8XW1:<'6FJWF_4F_K#( 2DJQ-%&R5-KO$Y5I" M9BO#?J,[,4"]IK5."K9Q/EVL<(4QQO+Q2IVQC80#RJU]P08M;>1W4'0GR&7W MOSCB8K4FEFM5:S0S[V3H7*QNY%)]F4-+\!L)8-S1#5L!Z01#T?_&'0-"WB.PVLB&U$(' =B1=L9VV'6$#3UKO8.8@V M!P@V+0(P11YL"%I)T5$D"&U/#%SUH$O:>; M1CYD$DNQ$ (,"9TG(AF:9KB*+K_JR7HV? M&":MP1/['I0NW%)6,P3UUT;<:".IUS;H80,C1EF=LU;%:GLN_X+4*? S^'K; M=,#Y7$0[1Q3V=.@S>AD9VGT3^WA0R ]L;7U]08!2@$CE9Q;XO?EA?U/(.[;> M$#*RA<"YM/%L^HXXWK&-S0>!&\[_Y,!9MQ?C7*\Y=H;:YF9C&U=<<.B/910F MDD\X\58\?<]SL/=\)&XD2-,;J&U^CZ%P[N_ L^E".+WK5%P[>?T7;Y;R(\O0 M'!M\AS?Q]7]%/(+C>(%BC& MWDQ8#_$2BK$0+_MB+)4,\7)[> GEV*WB)91CMXB74!V[2;2$8NPV\9)^(D(Q M=CF\?++,]EVGV-6 D/X$$"[J?OJF!*F/PN0H9^J30!(,#7WX?[]P[-<7(482 M3_AUIUNE/P_1MY+.7BWP'OWSHO CY*Q;XJPSDT& ^>-_#^G@8@K\C0F:[VJM MQE--F2C6Z:9;V*CMWUI/Q$F(=N$;/-0MT_(-=_/->]Y*VX-''W_ M-R"> D)HP-R< ?,8ZNE=72S7 =)]W30/:N<\!I!";KN^.73F6WNO@<&9=?Z0 MHT*."N^O\/ZZ&2#=FT%%P?/Q,@CMJ?NQIZX=6"6^&E?-/,73CQ16];M4W94J MB-%!,0 >OW& A 5%4D< YKX,9F*.76I?"1H%.!LBV&MWZ?3?V_L2-O2/Y< MM\1MG>XJP]*N H5/#7,ZC!2?2:C?&.I#PKZ([1!2]M5Q'U)V*+)#POZ ZGV7 M*+TGM[H_;N/7/_3)GF>/YS!_H'CL6V<^T]2O;XT%7G]^SV:F5_YCS=3\"5^; M[VP8J+W//^LI7W.>P&D%HSDUF6_GATI*Q&OQKX\A>6-[)Z=JH'; H\E@5B-+ M#-M?E B*K!8GM;&,CNX/:,E@Z4N,_[J^(_;,>M;]L_0W%UE<82CQXS'U7FX5 MM16O*<6I23\:77I5DYOFQ-^/2]4Y&_#A9!Z$G M%'3:DC2SS)8HG#+CC#?I3J?8U"OQ371)H4[NNR'5NS%D#Q*H6IOW.7*V#T,*[%A2^3L82*[:I*E(I(;2:1017&"O*#9_ZBL]>B"(]0I M'DILG'8?:!Y#Q0H29K.5NI!KQOHQIOZ,)C=F?OU#1M/QXP'MH5RX@PCUS?H8 M/L85=1>,:\2RJV,5MMZ.MQ:].I6YD+>AZ6FMNAF3:*QAU+BDH-8:_+P%.0!Y M&]+G=C9[^'E_E'Q1;BG#KBG+6$RIDQ-M-HESMJ MG[<,0BNF.\3R6T/WJ0%?Q@BIH[&58IGO4RS%%QIHDG+\US_)*)FYX,W]$ SP M4+P5@"S19&!KO\6@J'@]#]C^(T\-; M^R[X_+2U+<;D>K7[;&19D",+?"IC%[R8"UD96MM$-)4(8_5AK/Z+I&VN['RU MWP>*FFQIG7'N)#)7&\T)+P^'&H8GYQ0?&F4D'HK=",ADYE\]/A\W=!C M@C&= 1M$>-E$H[!U^WP6]9\VB M-C/=ZK=:M9J2R"^3"M;#DIUGS\K6XX4>1G$XYN>M8YEH_$00*_1\/R+S_;Q M]?>QWQ>LP#K+F=5V!)V^+GN)=),+Q3*\SRE&#IC,]ZJ'([%4WAV&/>B=?H G>#8>.O0N'.@ZC! M*TJZ^//Z\=Y0*/4A;MY;+%%ZY;1A<\>07N^D%C2E,E=^9CQ,8QL3K)W"\NZ7?3[O M[(M9"IJ#4%0P#-%5-.V$%VA)M9KDT*7*;*>(Q26R1HF :7$XX8=&4E$R><&D MOX=@FQ\E(:X\X^\&,FH> I$_BF;#6^W'W6JC9;6MII?44BVH6-:DQH*HQ5UT MJV7"6^UN0Q8[PGB8: 1!!F::8?-:&';XY@JN.+P'1,.!DN4FKKRSA=%O\> W M=0.>.?1^A@NKT*H6<_$8T\$(J]%U^86)<169P^.^&48DHVGL@M'X&Q,8WUT1 M\9!RX$.%5SD"VYHXEJU(WCXD7EANN^]FMOC:>M10M/'8M-N'M 3_!T7)26O//]3F/6MI M)!B:QL\L\'OSP_[FD_!U8X!$Q>\IOXSY[*QO-Z4!R?[-.[:Q^< 7*L$G:_0& M:_;PO5Z#/EES H;]"X' -C<;6[\0#T!SIABPJ"Q./-^ SY0TP]T #7F0CC]>V98"N+]W\%XU 5X\2 M=DZ[!>#1MO]>-)8=XN5:>'F[FB'$RW7P\DY]1HB6JXFQ-R,.(5Y",1;BY>,% MH"%>0CD6XB648[>.EU =NTFTA&+L-O'R7C9+B)<_PLL]%4:\"83T)X!P!Z44 M?U 1?@@3_S,*OF\F9_CQ$1P?OW ?@ MKW]R0/#3)P,_?QR/!C\0&('_YW]'C],/[1&YZ\RDL!_P.0S^C,X#CN_H$',V M8?--+3E^DOR]T73FD(WNGXV^N:':'< D9)N0;1[J]@FYYONYYN+U-V<&1]__ M#8BG@! :,#=GP#R&>GI7%\MU@'1?-\V#VCF/ :20VZYO#IWYUMXK2CFSSA]R M5,A1X?T5WE\W Z1[,Z@H>#Y>!J$]=3_VU+6#J\178ZN9I_AUVP&=F7?\.3!W MIY1-P>RJW=..S.'\7LE["&CA8QV,R"[=KNW,_-9'=CWPE[I]TCE M_6C*66,GCT,$P6S- $1HPN8YK($;*_'/_;QI+(\] ^ :0Y;"80$W@?J0L"]B M.X24?77!?:L>"&@!D)"L\,W1HKLW#4RRW' M8]\ZG?Z+[Y:C/[#0>U]QEHW==^;#\[N9XZ[*K3 MG#-1EZ0YJ!#4=PZN+ZBK6='B<(FA#;7SW)&4YS9)H6:%O_Y)D5$LE7[,-O8A M\]]H_M'-M/!]*/;_0F_@_"J3+7=&;)I1)GWI>5H>QDI:"TJ&Y*]_$D0T$4]> ML#7P0ZBJC\+QX75_=_Q>!_8)EIXRU5R])/8\9AH?V=J"[BWR.+KL,[_^(?!H M@B0>\[)_Z)DU:V:H.Y#H%.& L'..Z=,@AW-KRNX:WT'G5%E+*E3=J&(TA\OJ M7"FUXZ/6 67'+"#\%AW3 [SY<;H.XE0H0K6E:4.3TPF3@V>QXEJ;<:O F&L&YHA>X\:Q;JAX3X/(L-NSR5Z7U?\CN>R MO'7\O;40+)8<86Q*YE!U6+$_Y')D9F6WOM.VG\^?Z]:\EM99HIIUTU;9;%7Z M,I?R)_[@TH53R6W#CM0L"GGLTJ\VZ?Z11'CM/(QJ>& MXT+1D/GU3R833A"\RWCV[7H9/L84;:GLZJFQ4U)Y>44/BW.ZU6K*E_$WK$IS MDDE/!0HC.&K1+PF95 (@!D#^AM2YW0W7]2V@,=P(5&&\_UX# .>]W\/+_,L3 M[)?"I""46X3#@EYUH<^HWQKI;PX*Z2*(,PZ3K(EY=]R:S-6>S*61-R 9 M)5/'DSY#W__#,G,8Q+\7=OZ"^3Y;C/G15!XTF49ED 1+0G(=H04Y'9KO\2B1 M),/ _0]B]?#>O@]&/VUOFZMT-1:CY1);R/4=R>@5EPR!;NV,S\M8)KRUPXC] M%VF[])S/.^EBHE$+@+Z1B9 MS>2C1^GKAAX3C.D,V"#"RR8 4T@EY[.J;^:XUS6TWQT\?UN=#2[N>[_VX1]' M+8#\NV9?:LN]:R&*ETMC<>ZZ&N:5:^9HE9B, "=_IV%?5^TQW>/T!J9(0R[# M=XDA5Z"XC!_FCV+Q5.B4#^7)6;( KGWZ!_(HW(1$^8)O86*WS%VLPRW52G@_KS MR$Q7.@+N7L98UPQO(=@D+JE$IE5M6OE2.3.2H9"_B+'^TTS5, X>%L+=BEZ&&'O!'9+X?&++^/O;[@B6H9=)8XMD:SEBGUVV)@U592V9]SH2F8#(5 M31.),,[\,U@SO!1N,(#\52C<>30U>$5)%W]>+]\;BJD^Q-5[B_5*KYPV; P9TNN=5.:& M!!L2;"A@'Q:C=Q&Z>9C6NV'YW<,/-SJSM+VKB/EW9>?LS,4_3)?FV)S4RBS+ M@EHQBI+,=MT\9WT]+^>=?3%+07,0C@J&(;J*IIUP Z5:\ZG#/G=)IM^J5H=. MK=;/CEH^$'[]@R>CR=1QJ<]#N('.K8/]#!%QY0&!-Y!5\Q"(_%$T&UYK=W>M M'04P/G*5)=J"6:US;%=-ZBTZQW4$LL)0Z."9\"J[VT#%CD@?)@9!D(%Q9MB\ M%@8;OKF *PZ%OV@X4+CM%?%H@09MD,+!<&YJZYN3!(<@>*'9\4M;+Z&Q]1QF2W0LR9A M=3M3+T$AJ? =67&A5'@\J1"J!]=0#[YDQ H5,SZ:E)YS#$BN:@*;7F*ILL_\ MT(@EB2B)'S-_R/MW$';\HX&?_VOSD)#^.2J;.OLN)XYE*Y*W#Y@7MMS>=[?H MVSK64-3QV-C;![P$_P=%RTG[[V*G\3]2H+ZNVW#-4_J [EX>\ &.Y-,6VOF: MLKIC$*&-*=R5%S&!@.2^&.'WU)$(6,Z ;H&((47^WYD%[;;8D0R*'0E4[)CD MXECP2Y(:QV)#/19GD_79B)),O.36OMX=:U_):D@OA?!+@5OG39.KVY.!1I&R MP!*%]KBM%_#",$G]^HV5'1U$XE@T@DC AR@Z9Q02IS4#\!D+H'E11(Q0I OC.R=)VK#LAH3N?(O2 MQ0XP%XH K(ZAO;0(CL&^R&2SBEE8R"KA @J4LR1(+%J__L'C#TF8?P"I[*3S MW'63Z0*6M$2CVC7=9[Z*F!@[ 2F7MR**CI0Q/_4;GMBR$;7)Z,TH-.1_B@@8 MPL*/%"'[#8IR^!^_H!HM-F8@@(WE0QX579M@#*4HI%[T=&,*(G]IAF7]O66' M'7E'X)<5^+*G"'5*#&^^8"G+R <8QS_0Q5"/GV028E&4DV!2XUBGX0*R&%/S MJOEU=?D+,DDFIX.E+;1FF),:8WE:$#QE &42&8UGCGN(7)8]\)/L4:GC+5T% MTSY+4V0[JZ23N.U^J]QND O2F)FQ#!MCVQ)'95=+W'!]&"6/#8GO%\#?0EM_ M(%:&1F/ED"2:8$OT)GTY)3IM PG@]'<+X&^AL#^ E%,MTUIBR%B, FJ0N(9+ M0\Q# 1S/'$_ZN24!'%A:<(,(ZHKN\&N36E06__P'_K-1X 4-\":R-,L;XJ0H?AC!=O__-Z+'X!S^KOU___N_]G>_LU=B@J$9YN^-CV?O M6&. 3-3?A&\,RR V,@&OQG@)OODWK[F\9VW,:6A/DYNDBM];/Q$"1"3QE$[_ M*[+[$8'C")93?AG;@]C:](YI0+)_!]_:?.1;S9O/#$M!R/EM^O-"%P ]^^"I M/EIL8_:;P)^2R"*"OZY/A9-/Y(7P],+NBN^P\A\^ A5@R,7_TVW0)^UH]#-D M#6O!8-]CN^B-HNB'#'U$[C82"W_%S;5WR%[(PCV+RZ""C@[>L-SF"? K_ M2%.Y-A,I-JJY4KW0B49*=1IRU>A6ME=O=)E.I-N(T(UZIU$MY:@NDXOD2W6J M3I>H:J33A1_4F'JW$XFA-=U2G65R-W2 OUB==T0%"L"_OW%7+WT(;V_1E]:& M8T%!;$6A&BL ^$5KS)O E\U0V&Y^FT(A9%N[D[PM: _EQ"D!P&\\IR6O1&G% M3)M1Z55E6DKTO&5N*<-;$_L5<,MV99=;=;N3MBRS?8:J:--:=A%KN.A^/5I9 MPFB#8]P61B?,T4R:#*W1@.*(XV>68XW$U./A7>[H&3H>[U86_%#FXLR,N5FMBN5:U1C/S3H;.Q>I&+M67.;24N,2-]V4_%X#?F_K:PDD'%]($@JA] M[&7E;X3W]>@]96'*PY6ZC,RP R<&%,=(3XWZRW2X0_@=QPR6H,Y9@4("_PAO M4'1]1A3X"7JPIAGNNL#XX]W!/J@N[T+?Z4!#[@KJ0QL\L\'OSP_ZFD :QWA 21$)P 6^T/U]9X1W;V'P0J"K^ M)P<*S5YP8;UFIS"F SW$-C?[VF@KP9D_EMZ6)I\RJ;?2]O:$Z][S#?A,"=+C M!FB;WV,H+.4'T&MW;'!=RA='<8J/IJ%MM.A M_S#L1#PE,R%>;@\O^%/(+K>(%NPI^6;!9(B8/T+,)[.FU]?*C>4$M'VE#-[= M&R7L#.D!@9R^L8/N9P.0F'OJ=A(_RG#*@/WN>F-D!Z_#=CM0 %?-V(2_H+T+^U(8=^=E*5TD5D+5,RRM1I)!W M.1+)GW@42[W53?I1-*EDJ$F%FE2H2=V-+,L;SBG?5(%-V&V"]D2,3X)NOYA- M=32*XA)(E!'19/+\HNR:5-W=IBF$"M4?B*J?T$MK([?";EIG%V*":((W)!@2 M6L*+'@(4XMDWQ%A9!?,:-N=I;$[TV$P#E\FLC9+"4',1,IHBSV\2WMB%_?VR M(-3>WM3>KMYRX'HAR*L?_1&EYI>G'YEN)9M5$J*"%>:)/)'-CG"BAM)@D;6: MBJ;PM_HN/4!)_FF>/ZJ"N<)AOK[];8YSIO',%[HQF<$ZLSHG\Z0MM*V3^=TJ M/IFR]DJE&*4HI*O-'M&M3U 4.O%R)9%0\&TRWV2FS-,8,6C.)Y9)#ZE0FN-HU1+$J>465SR6Z*Z&?'*_**&?\:)^,6QS, M6+X]43O9-.&-TE/)A2>*'^^SG:"]95:C734&>KVB.:+E08.W\[,8M*DU,1L9 \=O7W4S(X7S41M MC-%3R?&JM6)]Q8MZI27/KX[0ES/*G$BZ4)UHA+]0PN4*Z'HV'U1RMY2TJS5FH,F#ZH MEQ)\L;Y.P)],A5C)'$&IE@C M(<:2E7%GJ <3$H]@SR:6O65LF7>Q6*:JNFV^8PHF7'JB ((>M-*,3G5XM1// M%!4O/LRG\BYJAG.T5#';7;79!1([51-,4W4'!5KTEQ[M-=-52U.N%',QVN%[ MI)HK3I^7?O_5H[UJ Z5224GEA$JSLU4F(]*Q-'^R5H,;TDS13+1CC*+U)V)E M4BB68_(I7A:(X9PH3GH3E5>(5&%D3+%$ZV2M!JNW1SD^9B94ON?E.*OE9+&6 M>XI#ZV5C, //&,4Z4V$RS]@F;K=.UFIDIN*XR2P2-4P!I;Z)N7U\QKBG:C4, MDFYHS\,,QWC5I&@]"Y!N2NXI'JF9]5YKM%K66=I:BJPTFZAYVCW%(YWQTF15 M05JJ!=4UK4JQI,^R+ZHZ+EEMD ,C.Z=8@F98CGFBD$!T,_T.I%]=)?JZ;?*0 MKK&D&Z@(\+:!=HW]QCJ_R@2_4-G!4373Z^4ER:?7DO)R3+9[F_U>_/;GJ7]; M4+,:V5>H0^D(8R Z&FA(B$9>J3,Q$SFB"R45Q1)]ERDUQT(VCAX5UIFG 0?XB648R%> M0CEV\W@)Y=@-%&'6I.&$ KCD6#'X(*S5%(22$E M?09V.2#XD\76U(3OJ D_!-_71/2-Q><[8\.T8Q!@4]]+]_MLS')CYSQC 3/2 M1V_L=%?(LO#5OQO+(GT%ZV?#?4C9(67?-&7?D]6 I_UWE'3+,7E= )&9"::* M,T4MTN#O/RM\*[439!*5+,W:%:M*Q M:R>T8YI MR,S5/H *<.0(KZMK!F\_J@&Q;4DV[N)ZP]&*>WJPB$PRZ;-UH5%:,:LNQ-"'HX9.I9; M&0"WX[F!')2FXU@4.S$B*)0KH5P)Y45< MGUQ:-RLF%EW/&E%QMM)-#[(5JL4L "JV2'Y L-R3G^A:PN/GFIA7+Q?\'AOT MZL>\ 3EXL:K(CPFQJK<::])P)*G]I6(T$IWVV*/EH-L%%&*A\RCD[)"S;VVZ M_,=8.TV4IZW1,PF8AOX\&J>7'4KL(-9&^LF#.X^"5U0-7?X!F14W9-8]MMEV M!_'GD+)#RGY,RKXGBWD=NVB#A:$MSM1:[:=JS _$>+>E]/K%X<3Y[HZ0.$/B MO!QQWKE!LKX1NF'H.M38[EYCNUKH&1GT]LD T8N D-5TEV32(!U,6;!T:U8' M$X'Y>J09O:^D6[;I3(%NT[QI>A#@E#_-^H3G)5YMELA%;I;'YDILG*)II>U4 M4(,IO_=F/)I(ON5Z"05"*!!"@?#!F/&')<*8JQ'E5%/ML,E5HZTK@^1RJ7W= M!?M)B9"RVZ.!EDOTF.2H.4OW$P9#S%M0(B!?+)E^1R+G;0///0]/B;)&B MQ\Z0"=-A/J/K^+R%_KS)E5F+N)7A3C/5/M5GE:)7;%@K#"\6OTW$=45<=NQI MG<0Z?<][)@V.0HOI28E"!C],AIC89#Q9Y69=1>VO=3D%$L%>;&A[P=\O9-)'U] MDKFY7G]F@VYGH8+G0B>]G,:6ZMQ%S/UP+H?@%2P$ES\>"8A!NVM1L00$G A$ MY*8!MN7XC0X$P[*MT )#9![-T".SA[YZYY5ECT>SJVY=UV-3>FBOW3-P31B MX-/#?09,3P>\C-MJ+"57:P238!I(\.&^5A--$\>NB+]#41"*@E 4W):&85W=^%L@R, MIRD\Z]A_$[K+HOXR'9X.?L=9M^CV &]:_L-19@+@T6CR;YXO5^-MQU1L!5@- M:9\-7IDYU^QE.PJ6\2P5D*N4HEI+>=H+9\[Y;'26F7/I< M7&M4$QIT'^+EUO""/X7LHP$2+F8HCYI*-N?:W'=O5*VS M&.)(3M_805\?C7,&B_OV\'HN>YKXJ2D5W^)'V]D/;;"QKAI245 M9$X/H5X\N3-D1*_&Q2 MZJ?Y!J^,N[-&1M]4;D)!=$9!5-+K<%-=%V@+4/,],Z=2(.*)#!AXY)AUJI6R MZ_:U%.M0'/&AELIZ(@TI4UW7.-6\W:.' M57G9H=6D-2K1L44N45U1P6 ;*,EP(O5H"E4B5*A"A2I4J+Y;^HQ- $[(GYR+ MU3*]$9U7Z1:;KQBSJ9RO4]OA$9>0/S=VST+T)$--*M2D0DWJ7F19WG!.N:9F MWG X[,5F;4Q)2HMA*C/LYO5-IW<\'4UF'LLYU=VF(H0:U1_(JI^2W$]<_ZR/ M*,50PY+/B# *,>P;4HR3DF7);J4KJI?N4\TTD97!]/&@FS^ MXT2P4$.[M(9V])R,WI>;#])$]I)A! W>+H@;QO\^?$L<[>,2V3![)Q<@ M]H"Y.3A!;IAY2[UXYF6*RW__UT$JSY8]48JG8?[>\.#>L=8I1(3/CC*(!9E" M058NK[F\9VWNN/0306[TGM];/D: B"2>TNE_178_(G LW4G>%K2'2Z:PI,NAI7AP4<-O )&RWUM-G$U. M['&\ F]G17@#VNBIM D@UB-Y7O"OKQLJ/&GH$ NX#>$ MX,A2<&2HT_C4XY,F6JK;1H2/Z/"5#3XM6BD M6J6C$=Z*C/QQ9Y $]S>977]X>H/HM0)4A'E(V*(!80E5XHCEC"Q%5.#S@5_8 M@KZP>8S_(MGA31YNTK0.7E78?KQ[F0!A!(\$"1:]R@0"@/0L1B1X0R- .'Y& M)W]\3LAI$#"\IGF'8($/*COP0R(>( 2^8N:8J%K'COA0RRLFQ!<%'R+Z#X(? MK@F,VCT<57T ;&6Y@4 61]ACQZWRS>'B;B*/8XTZW0DR^MJ-%+W&1%:F91E M&8(2L.5?ZP?!93L@0)#Q(KRD(?9-GZ'A0>&#HYN:H(@%H#6"ZM !@H<5D4QC M&K$A;:/M^_^=\:;M!?5#\*._;$,&Z)?MG@Y.40T>L]WX/H2@@2.,#U *8?WW MAG;$R/^[B'V0AG;!86?J ,H;IG^U+_5F^6'S@]URB+#@25MT!1R+WK5^A-ZE M35K!H<8?RXEJI=VINK-OZOM:AW_EJ%ICUIW$[3A++&/U42JQD!2EA4)'IW.- MMDQA;Z9A''"9/R,#06B/OB 9_:5 +$YY;XW)B#-#V+XB-C=_"J8\01 =KCD? M?C, G^=(?2ECRH"IMXEZ31]4J:\'%!0=-*07F^67RM39S9.D^1G\B^V=Q'>V M.&B4N=)LQL:&3%' ,PNF69-10/0=?)L;2+VX'SPD#3<5BS>#URJP;93P&RPY M'SIG@BFF0;L]9HE^2LWKK>E@7OV#HM\_12?)MHF\F7+Z3#(WJ-2=L>#2-(6\ M!J>QB6I%-1\V_N6YN=D@BUX==3X*.NC$""I(AEAG9$.B;V%&(K?"^J(U*$RY M1KTV^(.XWI_BK;#D\?J$3]>PI#V0$T)CF6@-Y5M)6^F\O=L/OP5%M.U ^^"%'I-\0BH9A*O@*Y1034(P MC<3Q0,L);G>DG.R>;X*YHYA00[/65;YB9 X5,$AW\+';"FBHUZU-D0A<#U4, M2($?)$"H-0 .$^L5(!(=3RW(M5YR4,[*FD#]^DRM\O??^"E>M+KT<\IA"JD< M5BC$TSRQ.+@1R"]?^"5?&[7L-E3ZX<$ANIK0]C#$+0W&B#TB%(KR8I(>9@:8 MDC>@>H/:(]J*!6H@^ M&_&:7\@N.E#IM /J@]!_BG37!'6D'"M;_1X :%Q,#*AW:X&EL%93D#QK,%A O@[-@\[F+6AE$S*-#/;.CC[D M-U\.UG3@AFW/&BNSW3IH^2.6%R$R1*3Q;P\^16[(CO5C_1$7_?--TQFN MJ0^Z?86-$_DE8!I+'BLX CMJY=ZZB&*0]) (0,6B%M#_6.&OQ5FA'0.Y"=8? MY4B>I%="D7-__?-=0W^N"?R%6>_.)[G!,^.59E/%>!ZFQOFW)HN='?C%D9'3 MR;;+QE1%*"]T-C4WH;6E&R?B.R]U@,U5:3@V$CM[+HH3-WG ^&4'*@OQP#U$ M^!+CZ/9^BE#'2Z.!,1]PY65TPD^QY:74^5)S5A:*SX.$6AG&V':EGQ U\@^L MLT"SWNRSL4/4&S0QJM=M,9:;S%1^DDL.4],2']5! XD%%PP*)9"$[TX7H]+9*#?M;"&VILD,[&JB6K,./=\Q@F\%6*U9F9 M@!<;^OZ&\-.FR5S(MQ8E<9%08QW#D9K=-LM5X46)/26.K>-_7<%N/(&_P/Z_ M'O[DD==8&8:ELM,*OJBOJ+2<:UP)?U+%[>J:7#7S*UT?XMS-LU=!%0_>-_!&OJPU)0K$GM,R7 MENO'Y'F %P>W_#YK[]_U/O(<&83A7;7RX!WT^*UCFZ M@[8Y0QW/X4?K_?FQL=T7K*=(QT'G.GS$GAHR K8+@'YV#GBIO'^#)&.%8;ZD M,<4I0PQ3HN18N;90.+B*$A]-LVP"$Z7%0 Q"[7P+N_Q>Q=\!92IU0S3Z.(8Q M_?&XUE]@B\3"\Q4'/'7*J7F)F^0# #^WC.E,VYR+K[BVJA#MY#C?%/.ESPN' MKP"\VL_U>X:1ZZD5C;;L&L%8Z>$E2$!#]- GXNXZ$%%"AC)R MUMYIN"_3"]),4.X-"@/Y5O_(L93@*4X@4GVY,S,- 0#T0(&?H42G"%C.X!L4 M%-^!GR*SRU0$!,%--&;WX6:_F@*"'U[W:5N^L:9[.Y]V-&+#'RQ^_1C?UX^@ MIBD07^B F^07"XE5PY1Y75EMDE5$0W#6F^$%O^VM'W >(^9!'GI(?CZ$- #I M!:73'KP, =+:Y*>M83E%S NWY4&0@/W $R0 '03\[N]Q$Q'0%'@#B,@)#^G) M%]NO$M*.AM;?W0(0$H3?JG>/*H+4EO7] G$%3_\;);>L&_7"K_N/X"/30!A' M)&4)L0//;LH!>>V(&V'AF%(E>(,J"6Q?JS* MK_3:@69*?%1*'>XBCV!%^Z"BUY!JH].@TG!K;&B[ !BV)[H G1QEE*ZDJ1YA MIS-8;2C)6NN5^!>B5OP)PR 5VKSIT^4VCK6)BJ',IIV+-<#L+DH:4(#BT_T( M$0A*H8&\*_H."E_IV7N0+S 0>4/.@>]"#9NW?QXA=6V;6'-$0;M(ZS2X9SXF M,D.J>D%5?OU&'=A5L$=2)RE):&!T+%67%:;2+RUF0JUAE?M0'XX_G5 Z-I2T M3J3[(/U$D##43BSO@)F]OW[KPC_LZ7UYU/J6U>Z7;]!ZDC5AEGJNL2.L;\5, MN*'.0"/E;\5\/#?MZ[T4O(J(9X)2TVJV*G5DA/D3EM!.AFQEP8&Y^UUW5Q'@F+"ZQ2%"H1U$N^)"/B>CK*USOR;SW=/HY@\@.:@ M!N]C>',%5ROJPS3UBA-U)Y7@9>13 MFN0WR]P0G'4PY0!2[!Y!?$A'VNK9@5Z%R$L$$N]H=D"[@=H,D(9HP'?X2C D M2;C'V%IO0U_9II=$=^$#M&& ],.%8FC\Q@8_T,BA-@EI0O#0'][3\R7(;B@+ M"@)DRJL@LGT[)'SXJO6FUZHM?-(LX*CHEJ4"_7W+.8>Z/O+PF,[,%H(,#@4Q M"MRHL(%+=/?%B2/*@;[J9\+[6G!P,F@+&%K ^Q8ZPU.$W9A.AA",#A'\I= 4 MV#+S>N,;0\9>QV>@8:"86ZCY>?>["(H,@0:0T:888C2RAP>T[B .B3+2WHOZ M^!G *GV0 -FD*"RSHE99X7#LSF:KQ !/SE_;7THYG$&CK615J]9)L?I-D]G M#+!]II"$YG5>5" N;J>:)"@@:0BVL=4<<'*CJ=: &&,@4HM0<_:#96R5#G*2 MX,8E14 %'@"BHFD:HB/85O!]*+B>HB-2'4 M#52<@X"W_]#@TU-U'0$D^4@6G@6*X+UZCO5?#LHZ@H*-5PHLCF%\G*!/Y^H? MS22@J1PW8CS.I1'L_-?4/(W)>=_#J%? M2N=Y$X_]I5AO3@=:0>6+4J[I=&K2O'#%_&X57TAX>L7,U([138)5RQB5\18T M"SZ1EO]:?O>!S-DE>G7W M8?E]6'X?EM__M/)[?M-(AC>\DJO,8PO&FSK)_!+H7%Y"(RRP7P&W;%?F:XPE M%T;CA=IH)*V*F2Y6>J*,O"4O5\9+N27MK?JVZE0[',7GFQ5 H)6)ERL[/6QL M*]U%$^-CY6ESV);:_:S+$<=O'WKVH#.E4@R;U(4LK5 M>H$A1K%<>^:E9K6)S/G#+OV5GV\]0'RJ]4#\$G?9<1.=4_F7KQ@7AT4PFV*7 M8TOGA17S;N'(FX:3=VSZZBL6S6'BZEX&*%!\/PUD6Z3Y(D^ZC4*4 M$1%-70PBF]M';C[;.3A>0<[&M>OG=5PDR_4X16YWI-?.XCNN_/=OM]TT4>4^ MRO&)_(5: .@Z%$JH%\1Q>3^DL)V%^7>P\1UD@"^2X$;\K*7@;!O#E,XUVCM; MV#J(>;W]&K\V4!"@>N57B&U#;:^ _2>E_KYI"'TV:?2YO8A;7-$6,*?( *(! MQKI9O%+2:*,JQRNE#J@RG5%:6_!LKE40Y =*^CTKYGB12E"JHIC,]!D 51Q6 M5S1Q)1Z M*K\8--EYU2G3Z2I9RS!7(A*]H7MEL;B<8]X@WJ8PK5E@QH^4"_P=".T4,B*& MJR-9)1+9.9<=%EM\Z4H(]?I+#LOVW RFN)FQFLH,9[U4ZPQ9P ''YPX^"V[X MUU3BX^3=$]K@.HUWFW3EERGYJ;N^T_33&;V^CK)I8> K%,CS=JDTWFM*H]JL M%.^W>BF=36+8,YW+Y!EE(7\VG_//LFM:R #N&3 M8>8LW_*J-DG51M[JT]1R(F]E/V^<#>#Z:M*X&$O@#+,$";9A+?1^*[W0AK/7 MJ6*-]==:BZ!XZ8TY(QZEH\4?DM+GVBGLBYZ3436\XWDR6.H3MM"W0%-99'D= M517>?>^*M^6[ADNLQSV33"-78>D)Z"82PS]H&?(NF-WE1*5S9-QFD\5XQ]:] MF%T2SMVEXE"3^WB[BMOB\[<5TN\H,GF9+_?1FI/WZTGV5FS=S;LFJ'ZBFHHP MNSC,0L"?%U] _<[UKP7W][6FR%J0!G5$*]^Y9#_5\11KW1?@OL:\T'VZB[K M^LV=[-=T#>Z"S[O78 MD/;[$/JTX*=P=.&KLIHAJ+\V4=I1SYM/"8;DV48W4UATDS5&G4#S"4"M9 8? M"Q4E<+X7^!-8MLE&P=P=U,L;'A_\WORPORF4 MGK/>$(KR"T%VRR:URL\$XAW;V'P0Y 'YGQQD"^V-[EFO.<[&LLW-QC:Y0,&A M/S9/*Q5_2K\Y$7 O=6'O^:@2#Y*\NX':YO<8FEST.TBM0CKJNUE-ZRPS_\6; MI?P(7CJ.#;XCG>GUL59[W_O$F)M=AMH?S_V*OSEM.,3+=?""/Y'I$"^WAY?, M$Q'RRPWB)91CMXF7D%]N$R_X4X(,\7(QO'QRW.Q:/;[B".+T1Q*9#Z'V5BHS M(TE@W<4$&G"[-.6+RO@K "&PW8__/3@MM-P0J?CUW%^>SOI0Y%$W H_RVD/J M._Q_.)'\R?7Z.(3AM^$)H&.>3W"\=]E=C2:^/)]\'TZ#.1N;W]CY+\CH@3_@QLY[CL'C:PGV_0>[J;'BN_"^J2Q\A7D7Y&\K MEGJ0*?#2-[Z.\I.](3:LJE6"\>@>_,!I9SJ5/QD$N-G*YK8^/8*@*W!S3Q"$ M\6*:97F7J],ZOZKU!Q1'^-/'7QD+%\J '\XJ?YS]=EE>^4PZZFXGOOZR_\ZC M[#7(+D9+G-G$,S]DO=FD6&1(;61F4.UB N6OI4^DG)Y-![HQ9OG7"P7H?_T( MV#8G:!UD_);RR9=^@,/V!"@2_%%GP&T$K-EMZ!\5S&VS7PXCNWZ<>#VU>!=K M#O)FU_D+>,R/3*\S[/_B9S/36"HH.P,J=(_!ZI^K=]CL9%/>\":W^]EP.7;2 MZ>1G(HGQA5$W0RUB>D_Q._PE4Z>RRX_C^3=5*1N,!0P&.RO+O>P%:]U/\O5! M4+KQ9@Z"%>1 ^1DPYTU$^=,S]U^D>1RSDM\1T="15([P+^L^#@\-SV=8ZRF9 MIY,Z@JK2Q9K"T*/]7KY/D3[ZNP6/$>2ICQ7KY390)2XJBQFCQ[I!LLE3A'JY MHW7^\SK=3%P7RSI31_.?'"1O"<9T9H(QT"TD'S3#LE#E.&JLQEN6(BD;:&R/ MY[>(1K7'*'?>WXFG $V,\"*"^F9_NPF(VQ+J&:^(**UL.T%]+7W\[8OK1!>4 M)F^)LDL^R- >9X:F M"!XB-K $@H.X$W5I5+82=YWL%P#%A?0T]OQ$OB S3S=\'O#9)" +<2LK(?GJ MO"X$>8"[Q_DS:6?P74&, +4;@)P! CR-@*9 [/E;.R$T]O#@;6KE(UMN<30) M?10T_C-&$#SK-,<@(PX]D]]=@G[NX^Z-[GJH@D\I/CON9]9M/!HOOQN:"Q$X7LYCCYOKLI'RRLY&;$_!D*266L+DXB9%=W)#&#?E4 M9Z,R+HWYR;.DLQ67)TS+4X\GB? M;,J>D85NFF3[2G)>5*Q[087N0LJ\%4R*9-P97'^]1C MU5H;XVG,8Z:Y"DT)G4F6XA+';V>>)>"5!H6)JN2G+.ZEI95HMN#*H[!WXQZM\8 E>2XR+S8M!2WOC,UG=F<(P^/T?O_ M['UK<^HXE^[W4W7^@VN??J=V5QG&-O?=,UU%"+D'D@"Y?:$,"' P-O$EA/SZ MHR79QH A)#'8@*9J^MU)P);634M+2\\#LZAV8?S>\+WF](M'Y?H\JQ7+@X38 MT\;=IG37K!]Z<_JV.\_%9/I .YUBUG(F):4,4T0,%($]0F2*B(,BA&26*2(& MBF"A*2:*8*$I+HI@H2FBAO!E&ODTD=V*(-S'EO"@6X:"'W.&U#<$$X%'RIJ9 M6'SN5P2WT3B^\4;/STI1R[N#YAI=0^@9EY+"REBZG=IAL"N!'!?$LQ\FLI-2 M^6S=C5(JVPL?GRUZ.R6%KW:4T^4EQE<)/HNM1_X"H62W'IR+Q&R%V"=A>8# MT?:J[U#F%;45A'&3AV9/<;R>L/5K/$XJ4H-,Y$IODZ/'F5YEXG4EZG1%XG,N M(7G[?)!Z$;OU0>U6OGWOIT7M^>7[-(33=F7ZEH#+.Y=WCW:K]B:5RK7W1$ZL MW8RO7M_A=#[UZU^)%\6-W$9@X8&%AQB&!P('+OW@6FX$-3JZ@(>\<$=79=RC M&7"A&_A*KY71F'6T/AP4I5[LNE"?=H3[,3+*-Q_9&U]'C\]>WRKPU*F\- +G_AKN.A40_;Y;LR@!=2&=O MK\+''9+#N+N^U%V' _N^7I:$;F#-[9?8:8WN-S5+K!/VK:$(;F\^CF3!T9XZOO&U=1;RM7NFF69+-_HNKC,[@M6_+F>(JG"'\NPF70 MNOP>2$G4/&D?'YG"\<- >2N=O#]?/W7T8>_7OQE>E%(!)$1:9T-2\GGQH/N6 M+]V:1K_Q8-JM_.G[S=73R?>SWC#$='O1[C0OLV]J(Y%.:,9)=?+Q\(S%5!"# MA+0NYQ+O,L3@8:@3WD$1@#/!M9$'XG1GOCX%4,#SG_AM]&)A9@3SAJWRH8MV[K(=75KTCBU3_LG MG:/W43TWQC:<7]S4;<31OWG;+,8B3??+TE%U6+H1AO+PY37;NVPV.K=0V!*R MZ06ASKH[ >X !)C#,]X5,L;!![\]4-C%6L-0K\8?MX.:/4:/)XTS993&,3B@ MA'B(YOL]H=K"(%.ZK%I*X_6YKI5>4#5WV@:"^71V4:HS$#<$BV<]VF6JH]WMR2 W5H&YJW-P!">@>M$_)A0++Y MB07.PS%Q< V#F**&AXYUZC?"91 S&[I+[*V9; M)0!9BW1?F=?KA'K9/;HIG][?GW7&QG7VI>98#1X[ZA2M%9\CE^+%#=V_7N@/ M6.Y*N>2R#KQ2]?KZO$[Q/HJ58P?QX[1<*9V7:Q$1\UVAGJQR-X;>1@B**G&B MY9O9I*O(PH9/2D:D]I,$L"!_G:A+_N\?PN9W+1OMOM?*)_!^5G#.Q$]2L9\! MKVP'@+U,RZ#;::3A\-)VH-9HD.LJ\-'6A#RAD:PEN1/400:66=V0.^2A0\4$ MADKNM\.O=U(ON:1Z'+T!!)U[!=W;/'=U58)/%=_QH\H$_MZLJ3ZSU'R;F*:BP/D044LAUY* -J6,"[D]@HN L91W-CLLS(X<'$E( H M$J\7;86D(_,#2W(WMF':,H4XE DH!['^&;Y;_'F ;NMX?R8-O[.@B8Z+$$-T M /:&PD<7!H*1O^+Q!D/= &5GB+3 #[-E A0X+UAAV&Y "..(AV75YF8N@ M@^/L*#A!L72'.UGOXER<,"9KO".35QM_8NA2'+M@+E/#< 1D(,"EQ#]A2U6Q M8T'.W,5N1>U@@G-I(('VS !G,Q1\U#T^:-(1G;>@$"TY->8X;0>^O_).A;:H$0__4^9*RINB8L4 ];?BT)"]Q]D 5*&)JP_#FFY MXU \EQ+I"L3C(.[PE*=R4B&1RJ52T[R@5)R.!]LS=BKR!K)N.PB69.TV]:[% MM?0.#DC&$/L,O(H$0M/4\';D134#\$GQ6+&WJ7(+D31G&B2L MJ3]59(?V'3"7%-@X ML^S8;3=M.-;;+MAH7\$N,4U&R,K;\?Y,UD79DJE 8 UK(8+%BL..NXL"8FPW M])-XJE@31\!X/T(P.$?^Q4WSK6H&>"3X(;+&\.#@T&KCF*-ZRUD1YS(@#(OF M@44+AT@-3?#HM([JKE!X"&\1"K.,S/<5Y7\'YRE@=[MNJ_ M.)<143',93KZJ2:AXJ'33:PS^K9NT%]V"&*J8P,$(IF*8HH="V6@.:LP[=%( M)4J<%1(HA&(FCR!KPWD>9%%87SVT1$#^.71T'$Y@02>PL$@C(+!^%>"Q#^4! MHASOLFI[F3!1.@["),Q[V,\ N N 6 "*"P##((<>=B)J)GB0CIW,M #,'7ON M&@ZLQ'!@&0XLPX$-&%Z%X<#N,P[L$NS.U67*+Q0UI=@@?7Y_7["8-^(LHB9W M90-OEF'S=76%LV<9)RPZWBHF]#$DA3C/,96. @OY[/:7]R=0+S;^^QO"BRM. MB>0Q767=.\\T4GUOV!L[>BLTG1Z1NH[_36OK^#?]C^+3R]OP>8"W-9>9U[JJ M5(;?/\\D1VQ>Z7UR3.M)19 /ZA!DT\##C9-2X^;DZ"W=$5X?'U)GPU'U_:77 M^_5OCL\$$GW]1,!4262'1>MP2K<[D^S*X+:FDP\3/;=EO!'S5SZG7W3KG\"L M@>. DY=:7DLT_C+=P+DEM3GSH^7"Z?/<%WBU<9Z[-ISB_K'\IG2X,WF@#'G" M>D"V4)VY+] J@K<+2$/-0,SP,RP#787L'=_=:TFW#@F3= M@*+%[+;V7,5/U!4%J?8@O76^O5"4?GVZ]2[7J=*\[4Y@FVY=NURD<8IT"T4:'%GYD6H2"?Z)W M9+2A_HT="+1(:R;P7- +W=9 P;!+SL#JJ-W7<%+9@Y'I5L_6N".RQ8-'U2^K M'+$\TJ3002-5GY#R/UX4X&9=Q].'C/2>RPL#@A_X1.C)!$P>MC^V2LP9#YO:)>3Q+#PL+'(0&:&K3J6-6>^WGNO=7IR@5]Q87=Z4^*8:V^[>"6//5U=7%>O MID73JC:W \R[35YSK_,5OO"B:"6P%+"7#LF[3=[AGJ'2FMFRP>MXYW-DC% S MI5^FY=>A8H$WT2)?$6_L54[,^^B&/(%H4,I;)H2U7T-+?P H0]8-:&!SZ]JP MM#CRP\KKRF\Z$9[/66;"@.Q5,^M]Q>C05*$T M(O)HA/!H=3C-FG!B=MJ"Q[MQA-KG NGFV+>.QB>_G";&96NC#MK7*X*^NV)<=3N5(YO9Y:KA(G:?["G T:@ MB;09 .ZYQ0J/ !M@M7N,=WQU_01/Y0@&[UNF6EF]=C*27U Y^ZQ:DX>VT1J4 MQ]_.4%("U\'O\G8VA]VV%2.*F%3("5R>'-!UW;5((79*F M<]"( 4='\!+T!H5'/!:N15KK.!V..'&*;+N45*:#'@\47GUE[93HU[\P$FW" M03^],V#;*F%_1\'95-I044; MREHNYQ _/1V>%@1M%9;B-HZ%T&9"F(IH)PH)9_BQD'3Q7!\OB6]P-D+&3#\Y M)E]N06VM@X8:/5[!"S7E=3*QJ9(2'S80!0N4\C/AP*8J;5)4(*Q4Y*I:[(Y MZCX181'@_!MZ;]YT]8UV_KI9IDH:*#J*.;(MY)R8D08>^H=IID7_YJ2@1 LR M.>"G9QMX+D3<\+].XDD6)-C[P()GDC6A!0D(,DV:JKK#>U-Z.C9U$RKHD!!U MP!Q,I$X/KG$&AFUZ;-J*4T5U:IC(]//%Z=T@ W)5O=)P2'Y!M<9K$ M*T(T=6\@WQTLEB^4!TQR>NFS4NBD@AR7&K57#99A(HBF#AW\$3PSA!-82+:7 M'1SXF"VFY&AN[8!W!$5>[_1HD)P)IQ>J\FKC':\5:G/@5_J!SEUQQ-05(5MQ M76^J.C>.^//.Q>V?]WF>ZIH<.9#BO-.9X52&()BZ'(+0,X)>P57<3NY-QGD!F#,,RGF_-SK8 MH5C$W1SSAY>9H?(.?LUB8(_I'"?&R&J*)+(H_M&1#38I'XT1G)7RB\&7GSE@ M(_'!=VCD+(W.@5"0[\^^S^_=4\NDRR Y1(03(X-8FV7H-$9SOPFY(+;S\WKQ M[F^G3:9T4_2M+6Z/"7D&-5[_:^$QV%SI"%MPN+BD>V2@Z6,5FF)=(E>9\+A: M)%9/3[#@. M1@L0Y<1!':!AP[ C+GSXOR15-]]&44)PO*8I:,UUW ?G03:92%V'J@#!)_0ZFF>,=;;5_K,6>_(>/L_3SQ;A\]TY$ M(^86K]S,WV4$2;GV]\GUO>T8WG9N[:PMW>H'NI-T5*P*2ON\]7 W5)2'++D* MD=ZZX8F!AG=9$6^U 1H^-$K%]-V1DL^*UG@;AO&MR_4P"G6$L):0EA+"&L).;26D"DU<$$WI5SEUA@\R$/A\O:I M]UYNW.*5:H%V=EBN/];''Y5T(SL>U)!Q4W@;=,:PILU_\CJ%7J2K;G_8D!N# M=*_2D%*9\6T0W7!-/4M==+.].V'R--%OC\;Z^"$;2 W\-CD2'ZO:6ZZ<,":U ML7 [?NXUQT'DO-6+_G/OJ-BME1]ZCV?GQ=<3X_:Q%T2D*^B-8[680T>"_6KE M++S[S;YH1;PV+WSR89B1BA_Y45^0U8?\N=YZ5,[[Q69N\9/Z\>E)UL[K3\*E MU^3M^%G6UHSM9'=,?IO_+A]%,[5RU(<7T[5+]>9PR>&D*SF9P+;#2YALYQ_+]DB5N\HWIZ]G9Q M\W&MO0O264XM*5=M/7-U>^"LOTZ.0S(EV;9T]QVP/02/[V(2>8N<52+D,Q*3#$;4\P7L7Z= M9252G,U%N=R17*Q#._LHTU4(0*H0IV,VT2AP5>.G[K!05J5XPJSZI[II"H*0 M(8=6[BMNG&V,GO"D*P%*]*-OYW/OD(SLX[31?!+WS/&F,H7! MF'M2F7QX$.:?9LN;-VJLCE1H8>L 8U244W:OVH05E5@(VG (.K81P)S5QT#N M3:'. @)0=J"^F8]-Z[)\6CD]&]>O]*/$4;$I4(K/?3 !2SA1;K)\U2 MJ7U.I<*.7"R?BB280095'^L!,:Q5')>N+N[33:%V4JEDC]X&'Y91I/2'*5[( MA<@#$X\D*L.2*)9$L21JBW$'FA(#(L];UFAF1OWNQ> AD:K?-4_'U[7*F!+& MB7Q6#'_[%K.U%2LFR[(GECVQ[&D'HMB);@?5H"JGS];I43\Q&DPZ^;LG&[W7 ME$JQF8$@EDU]RN>S4\E3W>M(8"G4#T(4;2)PSHW$T3M';L)Q;F/G7L6KB.>Z MC\&+7D%?,W(1;H@5X>O-*+S?IU//96#T M9DUP,QG+S#:=FK#(T![;/+&QYGK[M $^VZ72#QZ/5U M:+,0N7 [11CHSK8 F^ W,UW 'H,,A;\+[ 5VOV4&D?CY&;O\;_9>%<1?1W.G M-4CLW%MP$3'/4':INOR^BF>F_G3??\@\&$^#UQ/9*AFOQU?G:%,]O OW$I:; M1'XI<\QYI52]+G/UXF.H1#%A7G0FM] M]@.E(*!(K&UX0\$/,6YIPPP/'C0 )VFF("41JDL DFL@JZ]XZ'X M&])AR( \3?'<)$',DGOP+@@ ,'V\RP H398' '' 4Y%MJP^0XPIR^!VZ6.ST MB@D=#>636N/F*,!YS5]Z]H9:DC492U.;E2N@QZMVAY+8^ <'@ 46F: #+#AE M*L,KAJ)W_*P&/)VKBW[G0GS3OU)V3S%'[Q%0Q!**?(.#1KLO:T!.XH @N*]R MWC2%DX%Q=&P*G0%/RSOQ02S,F ,!/S0!S!^4OCAE"FS?M@VX)JY.G* WKY2^ M[ZMW@-ID(ZY(0*SBA"L$Y!X 46.ZQF$@_+0/%Z,$B\*#^B-FAC\+T.(S@.L4 MG1\@=UYMV<#Q&\MD%I5\W$<$*(+"0@T!MDI5!H +1T"M .+!H1H8 GJ*0;]G M$* @QQ*]8?C\EXZ& @3 ,UKN\ $9P&?P4Y !@@XQ'=OL1'P@*_B!4]03VFOZ MYM 2(8:)7,[/%Q;!9@GX#^&!\/B%@_*;&#E[/4C_!#N* M\"% "(2(]P.$BS7M9(03H:;0J5RBCE2;#$Y[U_?9QXNCGMHNAHQP\16S*;NB M\-(VPM9($T8<2ZH>?(YG/0G)9SYRQS)K+56M-] X4:F?Y]]4M3G^]:^422Y6 M=_Y#!+=I>7T9]F*;\AI.KH:=FV8O/T %V=93;YGB$W#/2MGD8C'_/T%8&!L3 MWW=Q+;8I/NNC-KXW&I>H\?"8.K>RU=OLK8+-+9U.+@:K#9O;=\$NMBDO\0$- M+@KGZGA@5R;*8^:R=ZD5QP"V&NB>7\19F>>A!F"BSV+K.C3L7GCM* !3;5*, M, "TA#V);0$%$WGRR,!",Q1 7;01)82#QP';$4D]WE';]F@&D692FII JI<- M[8I)-;WD>_N-*FOFXH8X=9RX$8>=$[-<>QBVLMW)Z^O=N+C(41#\N;@0KQ8H M_^,2YM4;P$6JGUHHZ,(3"! AX; M-BA0([:A.)6S9FIS*VE9N44&*7I!W2*0VVW9["=H9J_"U.%*.FQ!G*F/\-23 M7)GPZ0&5 =>\H"7I M/V?D?YK=M\>Q\(;ZU<;I\9%B'D^:>KMY&WC+,00,Q>58/H&3=V3GE,R_)#'" MT^FL>[J&*!:@GTZ02LQT^.D(,:9/L&[Q@?HV@9JD9 ?P2U7&[MN1/3(8/Y#T MPAMX?_V.?+K=!_Q@_UO\WQHB(-# *8$)9QR*V9_BM;9T& Q49CQB5#>K\ W! ML9+%D20YOT=Y*(?S(-LD;(U]8/R?2GS+Z(8[%)#R#V*S-NF8ST(I=5TR>CVC MFY&^CH='\R>\()%Q![[0/[:5"(V#J[M^Y[9Z4BZEZKW&_7/AJ9"Y_?6OF OJ M0_B2RY%]1EQL9FY#LD,V<]HJ->\KA<=,XS7S<)N_O^FT2]VO P6&:#/MNVX" M/=F)TP#F-D1?WF@Y=8#([2UX/[1#]M8OO:*7 MLY2::\@?'^*+G@5 $J%V!&Z_$N<#7YJ-R!7@NL,WK( MI*Q!Z4#.IIUM@)_!@9Y1XV\:J(\HY;%S=O8;:"G^_GSNR?CUJ7P^Z*J[L2^L M.G,/2*)Q\FSH;PYK'I;3$$#0+;T]P)H",G8W58=M -0&8$]@NKG[\N) /3AE M)PPN,Z]T>FUF7V9KLZ]3M)FA);EKO0.TU,ZA71M8PLDFA?;36'1+0(^F*'D. M.2O' Z&4(C*E#B'OEQ6#' "BF6T/WANY&Q\@OU.F["!DWGXV0].<#F7F$7M% M+)UF*,(,19BA"#,4X4-#$5Z"9;OR&&8W3C7*WN'83&UL)P\V_%V0+MF3.7N2 M$7P62$M^7<(P2QL;T9"0TZ)9@K>5.13E<][,D08Q:[/93]5'[7;-Z@F)W/DI MNA&DDYN;\>;WY8O[J_6V49YQS1]].ENI5MVHW1XU3^_**'<[R-=>;M12HKCJ MN&*=O=32M[KG&81ZVSREYU6!9QFO _TH4[]3M$;I]O;&NI3/W]5J#W94Z51J M;?[M%:7"WR;.3;$[=, 5<,REO%$XV?1:#-'*8T\CQ'E3889S.E[J*8<(@$+R3=["GX:&RIBE MYD<;:O&GR1[&Z8QU2(]=7FI2+H.M!OX8(>>B;YVV=!&W)3L(CR_;\=TDY]@N M;7*=^Z*SU6C)JMM$V$' M 6?)WV-A!$;VU+;;="$($?'ZYT?3#] ]ZF$BYPR M+\/Q%8YXE% ;ZPVZ8BW"5-Q!73\EW8H Y=&B:U3*E&^*\A+/2RS# R,89>>F MK&KN5\E6&YH\:;QRE.DR38%PH9474;8=Z#!V6D.=A:^[;#*D)Q#V57J;] =W M7)96TM[:(;Q]Y\N_W4*P/S=G^%&#-F;.<%VV4[)AQ7MZ H!.=JPCPZ%M]I]K M.^=6<&0%_[O>$+PJPL*)D?=Z:'_L:=".2@G8X#]8VC%D4=U@]6!(]N'.5MY_ MZN9%%^SV(QRQ88>LJA.WS9BLXH?B&/=VTP?FS8L=LR0%^ M,Y1?X#;!Q%_O(-'4^8$:X%PQ OJ0^BY1,0R6=WS/WZXONQ4(10LL&>C0J&U; M)BSZE)T0WD2:GJ:U!K@#\6H#+RG%XN5,XB*%E[:01.48J^<$:P?ZN>$3V/1J%FD="TA? M>J]GTO/KQ>WCX'1TD>W=2.7+%^B/E%+)]"+CU=IJYK\<;BWR)[]M>I?>\'\B MSY5=$W,9VV-E8\4[0V@J9Y/F()&RBJ74T>BB=K6MY+CL,%?6]7L<]@*-K/8@ M9^Z&_4)?0/=/K?[5:V-4.ND!'HD41H9,@Q=94IW(Z\4O)\< MJ+>=QL-#[[VF7A8*IZ^P<$J\^'.C_-K)I_/PB Y 7=^8R2OI+JZA?6;X,QUU M:#YWCD=KW>'YQ9?FM*['U%N34DX=V,6&7#R7I)=V[J0XA$J9R&?$(&3JKW74 M>=$WP ZW;[FZ_8O> %@89=),ACP8>*M[F_O M$+#$0UY,=.FXJ?M7D@%ACYLZ./G43$L/%#.=KU6ZMGC_(*7/!"4G:J/^6?O4 MS'XC-W/=.WBU\SGXT60A4)%IEDD] ?K[#9M$KRK4,NI]6:M2" 6R 37/M1O2 M11V8SEV,)OUNLW[V4J[>YCZ,$Z6G3CYP&,AG\,+Y@Z8U:BZ&)W=GU^FTA+CE M\;M:T:N..VU'IKWCME9V3J"(#5%%_,S>9$'HH]."\MPH54Y>[_+E\D"['$=@ M;X%6=6K@O"30M.1$)6<_=#2Q(8]/;A\GF?QCQR*7%PM\.A>$?;EN?QNU)9T. MQW=OJ21C87)!X9KF_V!NL]L*VL)+-Q=!MU/<,:UQO3"N86G^SE#'-N;N#/W8 M,,A_[FG'%;4*T6<'K?;DZN7DZ"G#7"/6 MFG'(N61$2K+^ A>MH$+@(32OL2VIQM[(OE8_W?;*]T#:45"GB)U:[J'%NFQ@ M_$I,;OK7]XW7A_)D>/^,'JSGRW?63@! WN]9N)LYM;4F,/-;UGFOR0Z59:I6S=^/$Z.I$?'[MQBW6T?/G M0U9\ZW/%MQ9B#DB-[O2==-K3^L?YR41N2\>0)]I>W!;1RH>1Z+6[NLJ%%G) M #>+N/:'%L]@1UZ<)*3G7?R9O5R0XOLQ&D_5M9:D-<4 M%65./!_EJ M.=LL&\I%>WPAYG%PS"8#<5._M-.$'E)JBLG9P!8)B.:Q8HYT4U;QYL@>8:DY MUYT 4M,%!)E"OZP"VC1?Q/K-8['S)%P^OYN5FT3M9*#& &A3%)9#A11KM7*] MQA4KQ]S5>?'H_.J\?EZN<6?EJV/NI'K'U8I7Y9TJG9UK7+5MZ1ZPXR+\1@>9 M^/TD> +,S;$,33#&A.<:ESCT#84@U](& MVMG&EOG!RD M9E_I6NX92PN6(V1"ER_!:/^1/ B$<&0'&_/ @MY)AC^&E&9D.[/PS'SN#.L, MZP(T5M&MX'@SMRQ1:*J:>R!U1#LI:WVLXZ+6*3I=6;(Z#5/FT>1+ 6ZZX+FR M;PQ.'.$[@WD?]7J3\W[]I%'5CQZN&OU6]T:\_?Y)(C&':G=FF*M'6:+8J(%G M)69V4A)+U>NC\JMT_5RHG;;K$^L64/+$G88>8*87ONE=3<-/:/;7U^0WM7CW M<5S.YON9WFNO/VH\ ?2%\(.#NJ!;OW 'QXF]-'&'U6SFX-IMM#9!24'@H? [ M!V?8C$L@!YX(_%Q?@.5%E:_(G;R;XEW]B:O? M%2NU8@E@Z.**X^X0!ZP9J_$>"\'=.-2\KY3[ULE#>2 D3GJ"_5RO>O5UKRFZ,8DRP=TM^!>. MIC: %OUC$.#UH2C\4>,.3]=I^C#]$21P5:E^=%Z:];*5+9?JEVK[I)UKO+V0 M#I#%W3C1PY:1CSY'_MV"D/J=R>--L2VB1JD[&%0N4\-J?0Q"2@<(Z7LHU$$+ M\9:[ISZ/&UL0]6OA)#,NEPQ=>$AET4=:NS0M";+L5$"\V(:0O@P-O 4A2?W7 MHY3=?+>%TP=!%/*U5\O.%K&0"HM'4C_% [Y;)W@J<*=FBA#C?FP$,_.^O$E, MF- O:WVK<(2S2PL9A.6+D'$E 2@C,._^ JN)OPHTE#LT?>WJ0 @ C_ S&EW* M&J&!^"]Y./K'_1(/71!)($EH3_DB+ ,_@-Y;Q*LY7B#=[_(DVR_U%=3EIK?+ MJUV\]4/&GWV"0\DP.!0&A\+@4!@6"?__'HB1Y M3KBD9)4X5*KRR$1_W'_\$T*@F&$G],4LHA 81$*5)[IM_>DJ[ZCCCUANP*73 MG&6B=>A7\V2!_[5 X_FC<<]Q@!*KP2->P0*:7R#Q_*__5\CF"O_,CVN.Z7.[ M,-?K)SB;3LL%?UHN^/K<@JMG1Q/_7Z8%82?K<5(EG"@Y]>#JL9F_?*X^%P5D M5//B>=VZM+^!?.P6]4JZ25 MW0S?/YC #/^B>77=;+V9[XW+9\603I731/^> M@$*N>[TN3L9 *[K(>,-)I#E_OTANO]J*Z8$)E":RBE-*/IHYX;'2J__1[VBF M-V06>&.W'GD%%GA9X-W%P.M>Z:MV:9N5:=IP#?,^A6W&M-Q* MO1HBBPP2X.J@IY9%L>P0V\M<+JS!&D&=5BD5P>HX.W MV22%]3;XBRUI,K'$9BN%"D*JFVK*.1$UTQVYVVSE4MFFD,D+Z71.[.8[G5]T M1RN[M.2MB[.;^M@:*8/A1;-7R=7S6N7L%IQV_I/]IZXYZ7:.E7+B<7+TG#^= M-!+2;5-JYN<_.;IIO1JOZ7*C=>KWL3>.;"V_,/Q^I+[W5T M7+XL7(S&O?95X?T1/BF*\Q]MCB_K@CUX;@O9=\&R)\7C;OYRW$PWA?E/7D[N M;^7\I/PDV!^C6JHA&<;;50]_KSX(I>J@V'WKC1_36?CDPI0N M+Y[LD2V^- =9\W;\I)1>[HYZM_B3"U/2S N[.S8N7\JOC8>CEZ(ER_#H]1USJIP"<7)S^J"%):.\T*P_>,?FNFM)O+"7QR M8?(/W4M!NQ$:5^6':O[QK/FB9 K&+?[DPN1%X?GASK",TT96:?02#]:+I0_@ MDW.3;Q8Z4EY.B_EF3BY@\QC'(_"^OTN^ER<5+5;#O MKM)GUN#UQGSL!9J_FJO?I>KF\4 N3NX>M<;SF3;J!9E_-Z7?F,;5>Z\QO"SW M!Z6/[O758Z#YH_0@=9.YOU4']EWB,8-,V[PX'@>:OW7_,BE?J@EC(+)S743-75OOT^#C+_N^Y8>IY41\^#A\SY9?M9 MLY6"5 PR_^M$H?KP7!K=-(8M*W^O#(KM#S/8_,]OG^]?U?QYHX3D8J7??1B] M%HN!YG\_U.6A]5Y& Z53&:;-HY.N<3<.,O^R9572[;R2:4QZQT;ZL?&AI[JW M0>;?>JGJQ==S\;K\8#T)'R_21?ZM,PXR_W+Y+#4X>Y;?A41ED"N4$X9RH=P& MF7_^OO.4[>4+X\:K5M(:+Z=VRRCT LT_=2&;XZ9@E$_UXO'[N-'.G=I%O_EO MN+6DAGJ0#-TAPE1-6Y"6M914'FZ']?1Q+C&PZ^5FX[:,\ZA*+P9-(M+R)I%: M^12JDMQQL5Z,L"T$[MG;QLQ6SZ!X=X9""*V[Z[:%F%1AS;)1.'I^3 MGFA?'].&97*ZY>@'IZ4@ Q.^,Y0'R/#NI9>JQ]?NO71Z+$:_.,4PU.FQ&!R9 MOBEH;,YT)?/D<9#KNC0$SH48_"1@7Z7:MP!^F 9G187 M/#28(31* QZB0DF\ 0+6+P/=\#W$*5J8<.;G2)6>FFXZZK3[J&.K"&_!YN+/ M^72H1Q/GCXN1Z.3F"5ER6[H14%NM2LJK\?::'V\H$JW$$ G<]M/O!M>JW[!: M*?+C'TI;2+9D>4E(_;-E^)/YH7]_L%^H/=&QP;&B<^( IQ-M>BKGBHN<8,JV MI;N_H.>7Y#22$M/+YO1"NDIF M.^A^5,6,3 CY+PAAHP'\QQ+(C]:X"3 CDF5'EC.S;>LJB.!_?XGBKV]./55( M9K)N^Z57WA^]K]S%QTQ(6XK'JRL;,9/)CPR' M;9EB%U8V76;XP9*23>]3D6&9V-R6X^5BW8WU*<:&E-XK0_*WI3/C""5QW1_C MH$(ZM]#0)+9AVJ/%U2L;M([C7!AYJ"UPEN%>PI^_[JZ/\'M^BW_C1,>O[ MH?6E]L_Z5O^7P.BO\\$PJNW^"^OM-D+=;J399 59!!3:#,UK(IC@!CSI!Z7S MF&GXK]#JW]N=6&%6L>3RBW^BJ?F)KGN],"3<6-.PFB4_AP=9XF8X JKN+33W MCN TOTLMYG;K\/@\?4F\W;XZTJR%Z>AXT M$E;E^:@I/[6OLW"].?7K7S&?X24I%0 APL)-2(<).QAOUFIU9N%F^^'&OY.K M.=@YSE.>,B_"T\G[2UZ8B$K]Y3)UIKZ\]2(./2\O9;$MIQ^OA=+Q>^_TPCCI MI-X!@R'[Z]]TCL]+B_#9+/*$5C;?S\@C1JW:A=BS,%/N=^R"S[5,V-!4WSD6 M^9 3/;3'DWR]>E80RMF1F#[O&+5"XWS;B0L6+GY/0!AY1^BEEWTQS$8V\S*Y M:11,;7@$&4P!B(;XM+#(V/XWBR,LCGQVAA:S.!)U#A,2U4:X*43C/O'^57)!&[=X (*)"$%%O7.R84]CJ[4#'] MVKGH]AHE(RR5?CUOV+Z,"&;V]RF[= BE!CM:*>9"BCI/"KF\]:4TY6CR>E^Y.SI6!Y/W[2E@>W5Y+2F-QO+KO)< M;)\.AE=YZ4P;W=]8(Z!OR9(MHY1FD6GCF\@8.FAD/5.1SWS'0]-VRU2K8TM3 M+E5'TN2MU$C4SL[%Y\K@/%^'K*?PZ]\-EL!96#G@L+*DA2KRF<'I>SGUUB^]"R4("E!URJ?XM!A$'CM3='*)0QD;$&,#0OL/ M:\K@F?=.+XP-*(9JB9@-B.F%A;$=TPLC_8FC7ACI3RS5PL)87/7"R#*BT,L: M$+]1DOXP,S8@MF7:VS(#8P-B;$!1&Q)C M V+&P=B IN]D;$#QL3[&!L38@'[@-8<-;KV;;$#?!L8XJ'M7HO_>E1@-[D7: M4)I27:N="_)HTC&N'S+U\GO4G!R92D,<9856JI$HF:5,-=4Q[B['#AU00>!% M.*C>SQ 65RBT0>+/0<,H_'>HW+,8L]"S/=.,3JUX//)]@5 M4O,T<=5X3)\,:MW'Z^%YNU>M*K=QX0,:G39SKY-4)RU47[/71YFJW!(*+A^0 MQ&>%14)#Q@=TT'&$\0%](XQ<5L1;;8"&#XU2,7UWI.2SHC4N1IQ"C$N:5NM4 MBK5RMBF5KX\:0N*E/?;X@#*\4%C%3[%[1XB,#XCQ 6U-1HP/*!X;N\T6DKX$ M76V.*Y;VE!CV!JAT\=X:E8_*^8^QRPB MU2#Q5BEVG^\3C6KV]KG>+HC5K.7R 67X=&Z#&*L'%ZQB3C@1 R$Q/J#=*U9] MCP]([%[F3X>&51F7[3YEB@X?D,1G"HM4]XP/B$4>Q@>T+^6M+Z4I M$\ONI%\2/;$LU_6WA*A]O+[F>QX?D,07/H=FW=UN)L8'Q/B &!]0+(+@/I2S M5H-@/SR_9L6N*;T)\M%YXJYUVGVLZ@X?4%[@A<+B82&+1B%7M&+HE%$U144^ M<1:-ME>Z6AV9GE+#?N/J#@T:M4FZ>WM225RW7HL.'Y#$BP%M#"PRA;R)C*&# M;B$R[2 ?$*M3K0XN2PM3^G%/?7NY:%<;#SC/>M;Z_6[-<)B!%MLM=[I/BD68 MN$081@T4>3UJ=>XQ*.<&QV?]NW[YM)&H#4[RF=;M6=&A!BK@Y"/_:1>52PWD MP[G\OFZ24[MTS8/\!O_H7BI-B@4T#(#:G,7/]*-N>@8([#^Z\<>U,A_$Y^+C MR+W59!:YQ3,IDQ3<0BJ( WDVPP$#$"=P KS7CXFY+;*DH,NYN20VX._>QN5\ M*Q>GP-(%!FSB?)D;&=C(##P1Z$53H FUK0]QI)QP2%6PFHAEFQQV">>+FFYQ M'<5 ;0M_1[9HQDV(F;#0=#>+YTPG/4]2ZZ(F5[&'6"3MQ9]WBH8JQ,$J&GX+ MJ#*97XS?,*8?K')AKRD_'49',4>J/*&^]K4Q^^T0#QFD]B,\1J M]%NSU&K.[SY!7G;4 N%/$I/9N24EG4QO2$]S+IJ::N5_9*YO0#KP_^K54J!5 MPK^Q]>-U7IW!67!^]>O?.@FC. Y#'S4$3\](Y= CSY)K!Y]=Y2\5C^_*W%GU MZOB\G=R(]^>-?%2O&T?%VNU+GC\UJI4:N=5RM24K*4;>8*Z4XSWM&DSJQ=;H9F^L6'T.?QSO^F0;3Q5U2"Y,RS_XAZDH M3+?D3--?&"-Q&_PAG 1COV;.!P@'/D.S32 M#8L\PGOW^F]6-+@^@\@TX)M%3;/Q)YR'XOF8!.UM9P5K&CQOC;7!"U?4!R>BG@[+ZLH5ET57Q M+H#KVI:-)XYS.PT"%\Z[\486X7^V\ X"=:GPT/L(?Q:1.$:VNEH;N8-8^AJ( M=ATT0L0?.'N$1P=WC2S\;$,Q!_3)6*]X[X-';"G(&=E0GH#V==LRE0[RS-5Q M?++WL0Q=37)54$7; H&ZE@[?[2C=+H1;'-65+MY5:;#5Z1KZ$"*TB:"WX87. MAFA[U1R2W E^@6ZX(X.XQ;5E&S_%D9O[8KQ[>Z:A]^DP3M:F+XZY9GY&I[D&#T-[=CR;W$&HH2YJ']AC0$+I TT_@TWT#3L<=C!#(=4(^(U% M30KL6X9PPRG8/K']&\3DXS008Y/# W4' M:-KXW0K^_BL."7C^/#=&$-%P7JZ8?2Q?6OC 02'(1P6:$!'$(7HA,#'X;$C MIS$"?T!5O0G!' 8(C>B88>H<-G6BI GQTB'<"=00PJ-*<@_@COC;,GX(CF*& MK/5(+/.>37T&9M?2._" H6Y YCA2<9;WAC]K=&!!(6Z.$S^LCJFJB!786,,] M6"4L1R*0,KIS)!4?S9UP7]8T[)I)O-!SL%T#B?'>]V#*^EA#LY9%I(?E@H#J'^B\=+UZ.A_*(;8/N0\X"%8%$:)EX' M4,=]"?X3CM.DEF9R/6 /@JFW)GA5ZND&F*#C4*932C:=9*IGJZX1'J,A_ ZD M,&,P^(D= []2@^=A:^]K> O?(\XD=]Y G51_4RD8X#=D-$,="U%3/F1?_H:7 M9>%YA>EC 5,#;\(:R?^/^)-_@_]B%?H6;O]L=!SR MH6*H*F1)CRH&/E!+4_#@R.3>@!H>&VT/Y (>9;KZG'HK%K"BO4'" IK4P ZQ M6;3[U#GP(U1]&OLT/&Y7_8JFZ6]3(1,MS6O("0:0:BB0L>&X9LB*28]+B6;")W6<4VI0]AHFW'K?%Z2BN[>- + M3FC:( .3YA/D"ZH.LU/E,7X\'C&=(?4C=YO0MM'JV.-(2:%9XA#AT6(+XX8D M ,_]&6>P?7>MPA&T ^'<_VI'0^#Y5-98MVW=,)SLA?>[1Q='4P-T ^^#E60: M($"DC60-G-%]%#R)9"=\T%^.41=I9O#?SD&H"D3@@#]>0#FZ'?S%,ZP:LE&J M@2.352?@4Z7I],CL-2B=0ZC!0L&9BN;$(2J=Z50Y^"W>'@A8/C;.>O%O(_-1 MO'1@TB\N^/#*3@V= .'T)FBF?^[(:UI)%4DTZYS-MJD@][VT)PM;_$0C*-LW!5)>N3AHALVS(L[LX@DFN, MX@'2]C:41/'Z@<."!*==.RI."Q!I8_X(L@. MKRZD] =!V/T;3LMA"^2*AKBA0B,#R8=,$UM A[AY!U)BFBVYVR^\LLCXQS=9 MM1%)>7!LF^[-2+(Q,VP2>UHO)+O"B5H'SD^<31BX$@WQR$(DA,)3Z1QQ1&SC MS#<9I^.10(UAV[N67;OS51NF BY-\*R&B*M[:RZB=0ULIW6N5JS-5SM 9D%? M(I_]W<9[:[IRXLCO[I+HIVL-,;=GH3 MPNF-WVU$TB&RB9CF-E-\:4V>+3#3#A&RQ.!5SX):"EY/AK 6./NR:?6[C^>C MPIRFFU52ENF8I"#1AN7F#Y&=\U0G<-(F-%AXY9&)_KC_\$\,0HTC+Y!MFWJJ MNTR0J ;-/^XO:$PCOYF)?+X^-NQ M-+_/2"XQA;7V*H M%QS'6#X60[V(27$E3 [3"],+TXN?62S'UOT8ZH7M*^.I%Q;'XJD7%L?BJ1<6 MQS:JER_BPWU61=ZR#)SC3"DE=B5ACFUT*S?W/[/.*%A=-B4ACX4VLXR%]E-I MI9.IW25!#A#E[)%=O6\@Q%WC/_1-KDRN25S8&J)=Y2F!#YEF?74>$;GE16UK M4E**EL5CH[964]ZY(;4TM&%+.Y@8]ZVU,&(#"\F<9KH-_F:&\_V M92B_=. M'BW\^T:C%31)AF=4*_=IS*AFC$I(%O8XXX*+IRR?VHHE%9*%S%X;4H@!BJUZ MS*S"CD\'8U;?R\)C#"$Y*YA?_U:0Q9FRBLRPRU"[)(3EU,/A@6IF@OD-8BN3 MO\*;/.V2BSM+\0II^&VCSED]09]@QZ2QTSC8?B&)$E\-I5G&=EF MEQ7F.OOH.AE>*.28ZZSA.OO4;4$WLHK6UH>(^ZWJ)IP;[59?Q3=GOB5.B-7W MS_8G,GYVHVLWPF":3Z0@&_EEO==0TV^L9^.\,GY,$EN2$OB.,J03VS 5"*2&F^&RNP#S@\ XMBP1/ M#76X\M%Y_;CH"L!'++7L_/='-%,'6$[8XNYR=X3"#D?7"L]Y/I7/'N[9Z!;W MI;LC%'8XNE856^#3&78VNJ.3CH-K[.T!3TKBLT*XI<\:;F9_VCP]$=X M[$HL\+D"#"7GPJ:3."T6;WQ0QT,DF[:!DEP-(90 D_&C88X-WB@<++ MQ+/!H^\@^@E"EZ/BN4/@-FQ@&P/:(/(M>%+;T,>=*7(^ADI$2F86 M)&(&H0"LE,?*;ZR2ANQ,9$38[ @3:*/&G3A42&;?H97"GYR2P%&&/>_SG2E! MV0B<<^J$%.UU0\PI+1VW"4U,U+;T]2%"J%7@! MTDP:DX!&E1!005#"@J.#)?Q/0 )'&+4L0\8?]U%% J1;ZR.8$Z6=8BL+T/Y-=F-:X<(EPN>'58''I -]!U2$/C)%7 M?,Z?5-5\F"4%JK99(B67L0<8BDQOLE.F1(W#"5Z[/_,=Q31MAVO(Q.)SR+IY M*2/P.$NG/Q+:#(?A;8@M@BJ8DRW"A 041WJ7?O(O*97,.-_R"#"S0VA*@ZP1Q_7&[&=_PN\F0O+^-O?2,;;UD:P0)[F4*5O? M?\G#T3_N!"DU%4YJJ#\1M9"HK5+O?) A2+C?Y4D*5>HKJ,N5WU';)D2/5:!_ M1(:3K\0I>!,CQ!XOIOT&Z-,!CA7OR&@K)N7)T@T?,99B$"Z\!#!F.:QZ(X_" MT27- EOT)Y I@5@BM\0(/_>;= )_;0JAT^5/<:^32C.JQZ$K5^_/CA%@(<1!![YRQ0+"_ #W.C OBB<.S MC'<4!)V0L#XYP^7 2?&2J)+5#"L??&VHM F?*_[J@VZH'>X,R:K5YZI&3YXA M;,6[1)>7<\J1Z7R3["[@0V7;T$=(]G,^DN3UFK"78L_ JR1A)O;_?0SO31 J M804B-?R6,"-3]E%GFP)TLL#@VR9_PZG$&U(=BD\@AH-?MK%S?. @HF(/Z.AC M)\DPD=H%/AV\\7'X3[N41QEG(_A9\$7L9"/=I/1P>$.,_0W;>4]V./)DPC2+ M.K-3=00-ZXD^)(Q\V+@->P0?=/YFVJ,1;,/ZP%K/NWRDV)>4;900$%GM0JT]RE)95E?$Z)*LZ_AMYMB^)E,<> MNST/,=20>XBJ#/8D(V)>>'/M,0A.GVU.'PZF\T8V:7C\P#F]G-MVSC9H!D*^ M[9D;#9&VVG&Y>A'=^<\9)N7?A=(#; ??9$5U67IA44 &84_V>,_]$Z4CAS*% MV0>KU?7.E.Z9D 3[HSN0)&+AVB/@HSZQ#> YQ3M0(J6)-RQ'K40UL(8#\Z1) M7XTC@R$[-+A3JEO"L&6K71S?/0)=3^1=6W.) MEI^XF_+=2?4.Z[Q4YJ[+];OS4BV:FDW5(#ML"+QX@8V*W/J!E!,5RSGQT&<& MY>8T8P0'(PJ"U #J83CY'LM&)Z'J^H#N*0EQ)CRCBS?&$(8@K26EZR1777@N MR=Z]+(7F$;!S5%7W@R1S(:E4"R&-U'VQX=%\"NS9&0ZI5;1PZJ08PR1W3+.K MH:TI;66$!^!CK8?]+MZ!D'\;MHI(_C)-K4B%WGFW,QZ2W[L#AG?Z**5;=J>' M-]'R"#\6[[\=BFP\34(<3ZHB.('"C]7:2%7IG_&>S2;[$QRH3;S?09!!\P%2 MQ[G=!.>F4-NBU2/\*!OV"[9E&\B3ZNQW\*M $'VDCG F!F-4M#<$23!)JY## M<@W;+LIX2LZN-%(Y(&-H0;Z-3-//XPWE7H1#"ZEM81L5"$D,RDF29BH DK'%=$O<7JM7R^T4,;\D)'\1:DO75E8GV5OQ%?>Q)3SFEJ'@QYPA M]0W!/."1LF8F%I_[%=_:;/K+9+0E5]MI$7V6,C(1?9[,,1E]FF;%:U';( 0+ M37ABP][VV6W+>8*VW8J\<4ERPF!I2V:CMYNU3[X_9:@)H(T,E0MIEZPK"F,J MY/;(F(Y1&PU;R' ,2IP:5'@L2&SY\B]?4=X$_VS)FN]U"'?)BO'4M[CSCK$4 M0D6(<#;1<82(^!%@EY3E4]DT\XU-[)5C+(6P?0.VO7OG&V**SZ>%L+>^L;:* MKQ%)N+?]8](<'T&#F)-BP,U$0R%71V9;P62NI[PAZ.A32=N;V4?(XCHRW%PV M$&=-1F _<*=%>].5MG.]QVXYK7IN&QF]\3F47W3#N9[AOZ% 'M5#&ER$QX\B ME^Q,T[V$"COD.KG2/$1K086JTDXUK(7*K2<6VV^')?K]' MK[?Z+UI 2QZ]1.\T,DZOS\-OT;L,E[&@,WBDZB9<[< /U\C\.XHYTDVX_?1J MTPO[/&D\M.2!<\^W;1-[+7*>#L^PA\Z%0G*!=H2P]!R)TX]06=#!TU95J(W8 MAD:FTD+3"TK.+3=-)CV4T*;JJHP\B<_UL>+!IK!A3#UKN4 9$RMVG]KF7YQ M%C[":^$EFIJ]KD5N_$T[@MM8J1I2G4M]?XE^E!%X\!2[HH]W]W#S%0\#&H"7 M/-YYGG/_D%ZF7L0\D/&;L,Z\5V'AVN1Z%'TID3I!R,#2),')A=,@VJ&X&W/O M=;J-R0=:^A#OT6W%XN#^[;"E.OXC@^2RR][J GJXC[(]:!+J9HYV@\?%;F6M M63$(NI558+>RV*TL=BN+W5>N-:[J-:YZPE5ORG?%.M9SF%>R/D^7\MY8SMWL&Z]R M. *H[M5L'$5)UMDF:";.)6BXG8[:"F!?X$QP@+]EH#<%C9T5%R"4X%91P'T; M^)5[WX;G2G('VT*? #M@20W)M7-R 4JQR*^M,8P&D 7HG174(PNONRO,2Z+T M#WGF#NQ O?O6S99\9T_ BH@_90?QTZ!'91FXL_#7\@%^[X^)@]9 M/7?>)Q_DH;WH%.V%]R0S.W/XINE<5"+[ 8JN@)^$Y010*FTZ*O=54,JN=T$)9TPR3;5 2G3'0_*UZ7WZ.5PPLF'\!-<*?P3R<&XFX'"VIL(U M+G(5;:R8>+^BXPW0W^'>>MKRE::TD%Q)F<,Z0K?7K0M)0=R= MF[P!#6SU8):YN;OA(5WCW3/[V4Q=^B"$\$D.L?%[:C$0P9XY0PC!-)=,[W0L MK07U\!UF)%V0SI9"Z^HM8M128:&5A=8- X3$:U<231C8)_6' CB43V8V*Y"? MKIPA8D]]UAIXB,K?+'92",H/"R=JSSQ_/S>8T2P*\4Z+V$(9BUB92Q9B'RO# M6RB9\G=.^8>R4++Z :L?L/H!JQ_L9UJTB &^*NPO1X=K;6"ON$,HUP&R^MW0 M9+NCP"7X7:DGQ-D8LLP8]B(R_*20L,,&\!^NU.^%!T%^.)K?53L/:Q.XPS;/ M@AXS!F8,H:V ^1TBZMCQ%9 5!C9C_=^J $2-EUY!%F?**C)#TUK4,_H6Q&T( MN%%1S_NO$&9"@9=VA^I@.;E!GI=24I@J)@O4(9IV#%PZ)-..1H.AFW::SV3% ML-?:J%6\?=/.1&7:(1M$*AEBG".Y9ZQE\A]F\C]$'8AZWN%$<[BV'VM#76\BK< XOPF*HU8)M MM&Y&;^4QL(2-67FT1VV;L/)LED^E4CMT_A0'*]_Z_:50RI^I9(C1+.JCUHTE MCWMNNLYN?T\#--G_[U> %E,%7I)"KW,Q,V=F'B\SE_B"*# SC_=UL#!4G4Z& M&,U8'K)[%:O(ZW.K.M9.#=TT@5R]JUBA=J1&/NL#[>X*N\H5YQKZ>O$WA1/* MT M;4:OY4#N\PBYO[;YYYS>Q7XI:S:S+ZVN'IT(RS4Y/F:7O4 =,V/6!.%OK M6DZ<3_'I\"L"4:N9F3!8D7\ZS)Z[";O K)#$M3#LO0X]_D%<56>G=* MGC\LA^WY)&F1;,\G>4"M7'L^25KTVO-)'D1TW4Y/5L23C/JTDYGO9C?I>S[) MSRB#]V*2S%SW99+,7/=EDMOIDV+) 3/?O6N6JHZ0(5OX'1QZ'R'-9'A7.]\1 M%555Z/#FS5JC#FO>D?501:[OPXSGD?5(Q2'5C-=!([/[@VLIB:HB<'CS9G9^ M6/-F=GY8\XZLAXKE,2R/.826JAI25?P&GNLA#1FRRLE:AY,[0T533 OJ:V_H MP(JAN]1&%?(5POBT8ZX'DRSQN72!=4_%O7LJY)N NV:E(I].IP_S8"GF35.A MXT>$#=L>'P$<&G[$+C6@A'R#*3Y&M]YMO"R?+82:!3 K958:MI5F"GRZD&%6 M&L/NJ+"S@$PRQ,N3+ W8O0).U.6J.V1:AMVV; .ZHZ"@8QFR9LIM2]$UKJV; M%FN5VO56*08>-8_3R&,ULP:I_6B08MA1B]8MAK['B5K+!]06%0[O3HI!,C!# MWZ'^$ :MLQ#&\T*H%,;,NIEUQ\BZ,VD&B[:[/4]AFP.V:Y:O')3-Q[_?Z0ZI MLH4ZW$@VK(E[<_# BIJ,*G!Y'6S/R$MX40PUWSR8!JFH#6&CY; ],_)TZ%NJ M/3?QG>RNRN893R"S74:@%B.C7??H(L7:7YF1[[612ZRWZQ!ZNU)B/AEBDP'+ M07:O6A5Y;6X51V!=MV25TP.0L5JL(K^!EJ^H5[$MMX1%/=VPHWF&%[*AIJ:L M9RQ6]K+EGK*HIQO^]=J\$'I:>WCN$<>FLV\5X)(A=B"RX]Q]-OFE#3I1A\@M M-_!$/=VPKUH6^%R*K0C,/9A[!"Z0(I]*L08XU@#GW@3-AEXLC+506,:T PUP M*^N'4TQ]16OK0\3]5G73_#O4\N%N*)+UR!U*CUR>%S.ALAVS'KE=-_(][)'+ M\&DIU.O1!Q#*(V^36U>[O].YI!CVW=#X6/BAG4NSMJ%=;!M:VUFS?$K*A.BM MS+29:<S,X/:]Z':N>, M'I+E,3NL__AWBU6M/C(83%KLB2"C*HWM^20/J)EKSR>Y'>K(R#5Y -%U.UU9 M<4CP#C.;VW/-1L"\%]4^?,\GR=+;4=:HEQ MQ_NP&&S5]O3->K,.:=X,MNJPYLU@JV)S$,KL_N Z71B<#[-S9N?,SIF=[VR3 M%\MC6!YS""U?*TD.Z[HEJYP>T!768J5_UAFV1YUA$B\6PFVA8;UANV[:>](; MEN5%(=RVQP.(VI%WAZVOWC0C-&0&RUIG=L)94WR^(+!8S$Q[_TQ;%'$*'>8U M^X.P[<@;P];/,S))B>49^V*PK!WL$,J/K!V,M8.Q=C#6#L;:P0X\GK-V,':, M>HCZ9VTRAS5O9N>'-6]FYX[,!T-PTV EJXD+M3=L'91(&71(:! MR&PSWBN^6."SV12STCWMD1(S$EOS]\=B=[))ZO>-6ZV!^HV&NHJUN;)-U).- M46=4U#V\&[WA%[_IAD-XF!%SC/!PDZC#X49O;,5ONB&7*M)\NI!AZP#SCKWWCK67Q0Q?R(=_ MP_'P?&*GF1O%7"9\P(5XR8(E1[O7N!55+][>3W+KC5M1W7K<\TFR%JY]F>1V M>KTBU^0!1-?M-'/%H7<_1IDM,]\=;I^)ZHK5GD^2F>N^3)*9Z[Y,NH]LM%45SQ//7]KK!(IAJ M^(>?Z5 //UEC6+SL91.NL4Y3V.Z[1I;/BZPOX,#[P]+)/#L"998>9@?,?BP" M:W6_Q&L1^$+[2TX*'[R>.41\K(0YQ'>S(C'%9W,%YAN'W1J6%EE>=&BF3@J$ M_VW).'AM?F#3#^;Q']<<9CB#6J@D^HP"_C\?'##]7]-T8RBK^!/U/N*ZNJKJ M8ZQ4CLB.PYYD(LTR.1/UAO@?7$>V9')SU<*?MOH&0IRL82-3WKDA?FC?Y)#6 M01WNPM80EQ)X3A(DB7P$_T/D?BL:_I9NF_@WYM]__ *A+W0&Z*Q$;3P<>62B M/^X__///XGGUZ1R&\CO^K&;A$;I6F5!1U_*;:8)X#?F-8^*"\!\0C&6X;W6> M)E*!K5=;SN23V55E\X[R%O!X'3^RBR7MFHC[,PE;?UH&D@>),9;!/R/=5"Q% MQSZ/5-E2WM#<,YVUFKS8_:C<,G75MM#6!R+JUY8 M'(NC7E@6!R+JUY8'(NC7G))B>EE[*?.X.M76MC06D]4*[_K93 MB0N+OO&)OJO+%C&3R8\,AVV'XA95-EU#6+J@?.869$'9GP+"C:%W[+9E[M1J M$]MLY,",YU@Q+4-IV5!39@:TM71V?PR(1NAS"PUI #+MT:+DLT&2QQDR2KC' M)7!\8>DC,LLY@>)?X_?\)LBX]F@G+#3&2U]ZKZROKENR&D)=/-([(HMS!B 5 M4U9#HM/*1S/!#3C 3[:&L9= 2%@1P1= ([_8M71]7DIA7>#SJ5 YK)D?,#_8 M/3^04GQ.RC,_8'ZP+WZP>K^V B0BE4J%RZG('.%P'$&*?*HA+0BBF.>EE+3[ M%?"2;EJJ3UL\^XHQ#U8)E&S$0TKXZD%C@TT*6.1!SH(-WH._OS-+A,GLS#]HUX]B2!TDQ%]+W MEJ!&;IK1530CGWGX M82&5Y_,%80\JGLQYF/-LVWG2?$I:+)(RWV&^PWSGT]X+YC?,;S9]\A;YS#>P MYJ1X25JRCPL7R-DW]A?;M)3NQ"^NN>'2OW@;9FFT]A43AF?,\%H8[M0!Z(7A M3D6AEY]>G]^P7A:5 56("+HUX8-#*#1F:P1B%B.S!HY*]# M(XL,&CG>3A-#\#P&*!C^;B9F,ED(*7OD3#LF$N9+S)>8+_T;G/(Q:.1XV\?. M.Q&+O@P:F6V'XA-58HP/N5?PD+L&C>D-9< M^&(LI.^%@TR:3Z?2.W0*PQR(.5"<'$C,\YE,ACD0#G"(>/:'0X>9%KD\]E]*.LSYV'.L_4UE4]E0R^+ M,-]AOA.[F6^"6F8?3M68Y\3%"+ &EV2>Q&:!F^JU9J&;G=Y_ LCAJ@09H24S"!GR(?W1[H]/)](;T-&=X MJ:E6_D?F^@;J_N^O_U>OE@*O&,&_<;PPAK(ZT]OM_.K7OW4"AJUWN9).4*U- MSTAE:JB;[\'XK'VX5#R^*W-GU:OC\\IIC>?.*Z6DUTT<_?"NBY7B:?FZ7*ES MQ^>U4J-6.Z]6N&+E&/]_\>JI=E[;XF 70M.JD?]6-,[JZ[8I:QV3Y]![&^$O MFGW90!S^%3="AOO3$+NV9?X];>)>&;YFO6_!K?QN(R8S=*"[A\J^;$7.Y).9 M/(./"E@;?=\;10.#M_)J.=-+5'J)$D[R8-7R^8EJ.LU@/F.D,!;?=E4O8HKI M)7YZR2696F*H%A;&XJH7D:%(QU O.(R)3"_QTPN+8W'5"XMC<=1++BDQO6Q. M+^OW.WZ[L'D0*&IQ0Z?<)A)[=I]@:6K*^SHX[-)WD6N8&T7G1C%$[_QA%7P? M1?+3"G3,9+(08Y@OQ4=(JTNP,1/2MF[,[9!(F'-M04BA8!=N-K?9!?CV0S*9 MS=1@8B:D;<&W[Y),?F0X;!>U"Y$FQ@BYV?0^E2*6BE\NUMU8LF)L2.F] M,J3-@, ?KG'D]\DX=A0%_G"M;Z^(3Y>)S?]?@A2_S@U 'C9OO+#GXBMR$HCH9BWSB&UAF!5Y*,]_94.H:0Q.*[(0M\IF' M[SRAETB8WQRPWRPYH8M\YAOPFQ2?%H7(4>A77T"AG_.VU "ZOJ8+,"!FABC# MD+$.5"\,B#F&:HD8B)GIA86Q'=,+PUN.HUX8WG(LU<+"6%SUPG!*H]#+&KA) M4>(M,UX,%N#V12\LP,51+PR(F0$Q?U,N#/N( 3$'FDL(0,PB V+>/3>*(0X? M V)F0,S,EQ@0!%. MW';^AF",K)XA,TO%+/ "P$H?LR!&!0S@V)>!XHYPZ=SH>-S M'9S_Q!PB-09"VE\H9HG/%-(,BIFY$(-B_BX4L\07EN%U[=59%8-B9E#,#(KY M!Z$BC[=[A7V@'XV;[S HYIA-? /+K,2+ O,=!BD;HN_L(!3S-[=Y>T&$RCPG M+IYS.&#,!;SLY)>^//CG5G"M \AO\H]N/FQ0+:!@ ;S*+6>)' M.O%4! C+NO''U8,/5F7Q<:3E-YG%KZ(/EC))P=VX8T/0D"=53K8MG1,X =[K MQR$)1YNSS"AXFG HJD!K0%L?8IN9<$A5L!)ED+')R5K'^:*F6UQ',5#;PM^1+=K, M3Z"QL4CU$3+P-_!;3-0;(LVBC:'AB'6A97>Y#$LP!T,Q=0VF5>\;R,'-N-8) MG$;9@]/@4@+/28(DP?#7^: 8XHR(72CX%1JH,YE?C(%^NU!FK0+^_4>QL,+; M_D[<)/<__ZW\Z]S+<=7 :>Z?L8[;!I)-/*O6A/LKE.PJ5C+/Z0:72N;^ MPW-=0Q]R?Q6RR93[1Y#.7X5",N_]HHL_;?6QUD%FBS E4[G*8&R@#OP7_)0U MOB/R/K/LV,2RW&&;H-"_\LGL=" P6&R/,$VY_6HK-"Y0F_U+FO]D']L/,K@. M&L+?81:R,<3_'3DWF?"[9>Q+LDIG/O)R(MI;&F M9,FC!?;EETL4,U>^EKR/&(JAF_FGD!56 MX#_8XCG?30:AH9TGE"\..(RM<3I>X R]"#@&?YIQ%NB:NLAFB0HDQ @54(9% M*@#$I2I@MO5!3@5,4)"R5,#U'X / 8^8XVKWOAM/N+[:L^&%#9T;O)9K/W44 M;2=Y=1=(74>FMT!$P,,IN$H(3^Y,KZ;G6)P10X2H[=+E/L5:?##O7+ISSL4P M(2 GJM5IZ^V<:G6;BJZ5XUU09Y"J$*^!&.(1VG+ 4[L\\-@$) E_ UURT,B! M4RZ#'..]KLWSYT[A((Z3:1 =T4TQ\!3 MQ4&V>XTM2&,!1[U06=I+*T!<&YS MIA"'V^#;-WX&F#)ACH<<"4!9/1Q([(W8O1]0;$\8@/1._2 :^2 FD-:/1BX; ME=G::$39&J2A,@%=YE)!"!;7#L!]\1\6#\FSIGQUO)%+UOE^A3=;JWS-S$=+ MM]9-=<]0XP?JGC%0E/$ENA>"?J"8'1_'LRZ8V9FV4>3*-"U<0?8S=:K76M0I M8(+Y5)V"E+HXG;+&S/.XBUJD/3C1&-X$#!".'>2*QHB,N>/@WX$@2''#.$S\ M/RIBA#[\#LF&M]LP*-L)+:@:D'MU7'AI7+CF+G*OH8$ (*L7+&N?_T[FTP_',*(]_Z?CB4YC698*;P9_)3" M M[.>$FJ67\&)XWW1;D@.3-X!!T<4CWT/=#1 MY$L4'2AK@8%,G#!$M:JHN*\X2#7&<(>$DWGA9LD0 )%'Y*>$N#>X45A.4IB# M:*3MH0?;9F2O+&MQRVF;E&26*$?"S"5_6C"DYBO&IEP\5WME(_H?D,.2U0"B MMZ3>[_((G"FUHZA'IN/Y6DM?@E2)]Z1Q6-&B$1 W90X-_0]0,7#]&CD9[5@X MZH9VYEEZ ^)?XKEE">4*IOEQH!V/'3[23G]P*T8UU"Y'(\@X@@82#W=[7'R+ M0@_R1RD>T4<4?3 .O,?KYW7_?7!XOW1R(W);G!Q/F MYKIM\M*[7VXH<4/C\.DPNS!M,+-?BO:]*Y8K?5JSBO_XZ.3J5/OM\OSD[.+7 M:_ 3%\=ZNAB__.']>71Q].OIGZ<7-]K)V?7QM^OKL\L+[>CB!/Y_=/Z_UV?7 MKSC8A3#VV,@/J-$$G@S<6-B@H@T>#,?@WT19"&F._&U"2?C[; ^$1]U7WOJ6 MF57E(OH9,A+RH'PPG[\ZUVAKSS7:>N $7I@1KZ_ 9%0'2W>2T5$6FPQ-%)%P M/7:IGL; F;42X;8A/,!'4!-Y5I+O!7S*9M3=US!4PA-^'(41_ GOP$:T.H([%M@0P$]OJ0C4;L1X)8K,\CT>R2I[ %(MX+"5:(.7+GZ0)2I_%$N0EZ3%(B76;N!+?#02'0(:&1DMDFIVP&L\00G!7O$QB2) PBG@ M C#7*(8D=";=05([XR\D%7J2I\FS6DDOATC AX#'L,;TH,VA[O.GU+/"X8,Q MV0Y4D)*^+QMWD*)'.-'5!W_;E, E;8(\J30<>+T#.F&EKC"Q.:#, ]&M0(6180\%MF91Q51;>TXFFEW&,!SB.)"4<$7#7*4*$E,%99H*G970J:*F#5 M&GX(R!08N>$3SP=,E[JE+8.ABH*0(G4416IUE#07]:G5FS/29ZI3-:'0=G-1 M4R!M;S]-4_)9^(LTY24P:.VM2X,WS=[\O*F.F#NW98/9#-Y4IMX\']^LJ.0* M12K7]WE>-9"J+1TY0B$=#Y-V)&/$1;Z)32 [18ODEY=#6)65XXM@T673Q;9E M=#4H6H.B+P9%S1H4K4'1&A2M0=$:%,VB>"^;3"E 45,TR[:6?#T#[Y07WQ[H MN3@G^A62X;T!/%^*=RY-$14(-'D_ :#M)5CE&F&M@S^[2^8=/BY-?3U\V6ZK M*QDV:"A4%[QM)K:/=@6ZU-5EQ$QS[)_?W0YYO]NW>N;MP.QU;ML= MUKSMMT>#V]%H:)F]-K#51H(K3):![^A=[!C6T8Q^GGLYN3HX9V9.,Z85 I M<8&$,W\-LDWL!:)U7H$^-+2'L8-RA%S#\SW! !G'F*M-P*_':G4%Q1?I4CR= MNIPDCDHC B.V54$O//P:)#C,PN(.6T*B+ORF7^L:OE]/QN)@DQ4^!O>#/LM0 M@GYJR%$-X8_P0AA'E/2C(!L"7?Q/KG/5R*8HJ1/H#Z2?>Z^XI[Q+U1=X$W!) M0,)203:D9X+/P?K.$&0C"P&RL;[[)J;\0UD$E$QPC# (-/^I"\9]@)LYF,U/ MYS=G7^E'X]-[N62 H60X-CFHB6O[M- ZI8.$8R$KLR76\ -"=BB7K!!/[M]0 M6QZX%!P.8/X9%X$(BTTQN D"P1N0$D'6ZM@B39A[B$:"NK5F "(/DUHIU&\D M\&06CF5/5@B#85",9HE;B['QXG&X$48QB5S09[SEV6$3,8!YS9]A>''*+D2\8 M\YD&T3ZF[C?]KO(Z\R3X]!!8[:%V1)"8V4L8#9J** !F;G@Y<2LHPU1H(DA[ M8R)")"-,['X"@XH>./=D8RY<-'!'XAPPOJRW-?198.,WQ/X$":G )78G= R5 MSD/U ._#<#$*P]O0Q]D<#=;QY@QKB:DO#F9>0 ZJMNO\.W9L)$;*9T$\Y,YL MZN8NE0SYVFRLCD>#$BYT",7'4D[/FX\0D!H<: :$[5@LZ>GA:Q+&$X3[/=?V M"QNBW:QAOP338NPX\%*[4K4,*BUL2^'K2#'(M,5MXAY12P67?>?!].[-7,J\LF@KIR_LQ%%)2"7P9PFN .<,P M O<+[Z1-"[R9\N1"G,=W4:UK,=>*J7F*,.2,WCW,S$UNVT&1+G2 EPSL_1"^ MXZH#!251'0[J##TAVLS8D-7.4AT.QW[L4O8=6$Z(4A<]7VHPTRPT=-T@XC1+ MR1R83W2E ]'F!Q++VG3A\S<4.Q_+>V3LURP.Y@1C$7$V5;_A;$X0DHR47ZFS M01_B@F9[U(D)A=)GIAE0DKRZ@5TWL MH8*MF8]#>5N6T MM&^H=X+Z#VF9_Z"E=2-&J)<$_D!.S,DZH1.0WR=:X_9'8 M+D:;^%RQ=KSU:;GC[H[YG:%.5_ MUO7&:_^SYXJT,_YGW_/Z9PMQ=1*G"O:9:7Z%CS'/>P:Q';-OMQOM=J=(%1^48^^/<>9I#B!O!,4QQJR> M(RS(%OJ5D_CS;*';Z!N%VD(%W?W&JK\M,S#VTPS$=(>*F<'CTE]E!@>=1L]L M%ICWB.JPZKPI//FI%;WB_MYH-;J]P5MR^*\T5:!=3D:P%3;LTL21[OH0?V3; M&HKFXPXA4I74\<<7,[Y6W5Y8,;O?H?B5T;$2*'Q\3=INJ>-VNZ05$%;9_K+( M)'=?]&[=?/7=U[M7!^G*J;EJ;=P1697M!"B:B^Z9*U&O]5]:PCA5NJS/5;V?8$ 6XUVW]AS7U]P];>OU.T1 MT-%KM/K-&L_;.SROUO5ENMXT"]3U2GKP&M-[.YC>)I7K_+%U-;978WL5P?:> M.3.CT6X5.C&C!@!W26=+!@"?I[.=1MNP*X))E4[^- M&K)C]&K<0&GE].\BK_$2Z:=*2/<3R6RB)PU5W92>L M2NHZU>8YS]@"SVC[,1XC6X7 4.#V0663N862VVB8K<)K[DKE1N5M'52VNKR" M52SLBK@?5M%OM(W"MYFH3&18;@2%;QE4MEYL6_UEH5 VF<6K_Z# FN"-X,ZE M:T&M[,]=/])KM-K]O?7U-6B]UZ!UF?L'588))1>_U6+#?B^(W7XPKS'C_=/C MZJUUW;Y(*^BAZV6LN[NT;]L*6^.LM1KOA40KZ'=K"/3M0*";S&*^XF$4Q%84 M!S HVC=>A(E=7?!J-D"D>PV]VW!J]$P]PO6K!>\ M[L_J0;/1+W)"^QL!'FN5+7?!4KOPG8O>6B9;0X?5K10OHS$/DCV*&IK'HVT7 MAF;1A6%E^%UNK5@Q-NPW2OG,?? Z]::]-9"Y8T#F,\^P[>_[J9TUUKF[(-$S M9\UV"]Q+K(9#:TVOK*9WBMR8K)+>NT9,:\14K8.O(]_Z?CAD(;])K\,_=])C!8989B% M"O\M.ORRX=S7IWE7032SV^BT"R^=W[S'K_5_1_2_=O@UC+SG,/+*\GG*9H'O MNKAQ\FN5TNT:8'X+ '-9!?=>-'C?W";,997DM='L#Z:]I3SNS:M()0'PLLJ; MO;"45K/ V1^[@927U &HK69_K*:.+S7R_O:0]_.;LZ_:T/?BK2])[M08^VYC M[&]^2;+1*W0S_\H!Y_6"Y'T#NUOF7NV\62]'WA]8KM,I4#4KB$G7BY'W3&&- MAMFO%R/7*/+>HLA'$Q\(^H] COV1YGCWW(O\8 8/\.EA/-UVA=BMH>/Z:-]* M0+2&[*[.L+5H/=^@=[R$YN?47QD_RL.(VYK]6'%.P]1%W<6 M\>ZY704, M6V:C6_Q,[$HYY'T#N=^RNK:;C>Z@T)5IE?*U-<"]UP#W!M'UG(?A1^V839V( MN6(YM.U$<<##NOU1X\ZOL6=VV=0_O]A:%30.C$;;I,/&:D"Y!I3?$*#\3'/I M&?U"C:6"T6;[.W.7K1>O.$VV@M1OP2K,1GO0+- N=@/^?:7=O1&K)]@6>G!/C>#6 M"&[).CUH]%J%GN-=*:]<([C[#(FUF@W#J!'<&L'=$74=%+VXJU*^MD9PWP*" M^^R)NYKE>T!OB*N7 Q;Q0B?R5HU+JHXLL.8-[TH]7,F4+#N8\CJF4<7-IE_--'9D MN]P2HT9IT.WS32-?0A=E)KO%A-I*Z@#R2@&DZBCMB\HQJN$_1&SH\E_^83OW M+Q^ZG@T^F05!5^#79&I'SJX]=?'@+LL"[=16VTX_07+.,")NWEKG#.=U5#'BP8O?L77PAB# M"7-S[1UYZ=TO5WSDR"S:M<[R MPRBD.XU/&NX^IP$W)AKN9Q<'V""BR3\,FT9A!/^9<"_"K>[\*0]HW[NPH0$' MK;$V#1P0.U"G.9[EQC;0M_ A.FO-QT/7X!4NOV,N#0@_$[L1CF_$.;P1+Z9[ MY\U[BJWRT.51!":"ZD!2U5&=5>W8C1][7(T M-+21'VA SSW\%FKD&3A]"27,K'_'CG :R-#C&7/C"6^4PSF(UD(1G##1 M !M^2,<\94$T2\[4PS\@!9)#M*E&[U.X0N'"O,9)G9E HC"&ER&[X(/^A&L' MKA^&[_4T2"P$B-H=%NH.S=USAY?P/0B[Z=K7\! \?W1..!<9/6H MGZ'S0YO H,:AQCTTA=]C>'VKV=#,IFF2"L,/1D/S%P:TS)6B8L-_8&3@$(!, M<*AQ$'#/FJE>-JQ5_[54O[4CJI\[W33QODHA]%C2L4>6LO5J M6M79$:W" (L5! 9?2*-9.);:X_K>W2%D[!,,E1"=,1E$SR0T2;JXR=3U9QP+ MDC&+2 M]'I_L;6' Y&-O?DI)C:W DZ6"H7N3Z9NI"7S:#%O?BQ?%ID,"P3?1>JV MZ ;R<[8M_$B^>UNX/:'!\R"ARFPG??'4=EIM9=3T M[W_]GXV:R I9LI]LDLN]XX=#T(7OAVP$7_[(W F_#UT^BCZ*IY)+A PEUQ::W.]6N3?3T+MS??>V MWMZ2G.8\6BN3RC^8!AYJ]/.[_[ZY/%Z&7*P/)S=D0]BA@[]B/RM54O9+@?:R M4M@I E3^\/X\NCGX]_?/TXD8[.;L^ M_G9]?79YH1U=G,#_C\[_]_KL^A4'.Q_S'AWY 74Z_3@$3QLVR'G"@^$8/+EP MOI"&RM\F8-I1^#[#_1YU7WGK6V963'/LG]_=MIO=KLUZ[+;%K>9MVVYU;ON, M,?C': Z-=I,9QN"=T,5B>+? A=6L.S_[Z]O9R=G-_Y(LCX^^GMT7 MWZZ.3Z^+%NBF6AX%$L5-$6T_##8/OC!=_QOLFK3 MXQQ5:-DBS@:$_6&4 6-7%Y):B:ZC)!"3!Q*3$-=NX010%SW+&<*;PMA0 @Q M(#"34C]F4$X-.?<$#9 TW#NV!"W$D!%2LD#AX%. M.2ZYP1@1$B+_BM_[[CV^XMQG7I&9PY.$_25+PQ[IV(K.;)X-H\"?+&4$B!\D M!'?\A)!MFO 10XC%I,^]2!I8")(AJ!L&4R@2P@\!^DKC$+19^)B?]P0J(/\DK0"L@*+;0")/, MJ+%Y: 7.$+6"P\??:P\P2/@9JB @!"TDL05\F:M8EF(0F H#&>#?0F$SAIG( M C)35XR-LEM\(=503JC]%4-%Q0/(?Z\X)K%('DAS(K)IHWGXE]#R48Q&DAI. M[LLT6INC*>'C(; T@'N 2"CEND&<8.1[S,(4//VEC_P&I;,R_,(1QSS3/CTAZJ7( 5[#! M H.W,';1-1A2C,P9H=28ZQ9IO$\('R= 6EEN(Y<(+D6(CQ9-G13@!&K_R9 ' M0DU;1D.6B8>C?G-.#20.^EETC+HC!B0@E0P,(]P>=(VK836M+O MPM-TR0G# M-% =! TIAP=%G=G:B4YU]R@UIH+[EG18IF]%BYSD4BCB3K6 M(XS'MQX+5W1T%W"RXP*'DE0M:O_W4<782!THOHO#2 C=%/I@: <*-'GL M0A8'\CP! 4A0\GU#AI7]/+V<$6FB-N1UCLOGO-*^:LEF:V"2I/&9U+G+ T,W.WZB E0\D M9/B! [X1)W?=@;[?83J2%1KB-0L4-X36X;4A CX&%T=Q":I;>!?Q):61CR:,$#IJ)6QI7W M/M?)5_#.KR"@.Z[03IE\\K"XYQH&',W"L3/-[FMH'!5-3&9AZ2C4F+.%N+XV MF/:73Z_+1=<;=%"0'<$_GI^JH9H!"6-?8B]+JJU<"J8EEJ%K2[*UAO"-XM,_ MF7IK50:VW$_\-.@I21LBER*G)O?SZ*88NMK%KI8D,KU%#TP5"FHI=0J6"0#X MD/F:3$Y+S7C(69"9$E86&J*\M#@9*QFFG9]]OKRBW[$R$RH-A2W\-G5CM&>- M3:>0/E*1(H8NW,;"Y01]"97J5U:#8$A@810NFWJG^3?AZ_"'*9FK%T\:R01& M_#B*-AMG]C81LHSD%>::5PC:U,=5"C6!=\=37SSE@E]+/"@B!H"#FLLI>$D[:U>2P8B_&86(U+I6>!HO"SS6? MKF.D*_\*A?E#'CU@VZFI&SV(,!Q9@1'"2^=1L!,%K(C-%^-W#P(R_6/X]AZ(B MRC4[7 ! MFB6-NXW<5$J1CR#77)S A 0F^;_H!P=WS)-3 V"0MF_% M6-E*1BW[!3@*HG1I K0'4&D"M =1B -3M9=[K,@ E)HO>BDS& M(%)"[/F8=5T&3>*+1Q$",/,&=".Y95H,FA%6[R&B;4.9 "1-0 MI$JK[Z26%QC8REYULM0'WC3$D(%M'(CF-N75E+4J+Z(4 @,>Q%($1! C2?X, MJ9L3+C1W4JJR7@1(C.C;*']#2EMZ+Z54=K\VI$_#\.TNN?T:=$^]/RT491$/ MP0(C!7RZT\R8K*R+4A+Z!&0UJ?K4L0D,S$Q=Q.!#&>R<=94>$/:0I2. MG-""!R7!*NP78JF@#&BCM"9-C44J))"1$8O=2/!.+JS!I,Z';U#>"BSQ?.]0 MIEKX2-JU:F1E*0Z8%BG>.[Z8]$9EOYI$0P(8!\R:X1_6I>8C$#>V]! D9=^Y MEG[=:PCPC@8MLU$)VL#-C52D(N56IN*IZ?F0>=^#>!I9,PE5@J#N:=60X$LC M>_!?L7TG4DQJXE/B*BBCM8I"]T*QYNE;4FCYEER&1+="7$^520X\J3TB6?=# M+N\$*=<(,L@J\SM@&D>'[OAV0U/D@/?E^BW87EW73: .,2?4TJ6I&G;::I.] M; FSXHHJPA5DP> $BXV],+&65<7$8A1H'!-H+/XBS6UWPA4E9CTUFL0()&$]@%Q@, MMC71D="L'-(Z"5,N^U+F=P7O3W^,G:$C!0%)J63@(W"3S MO_\[]J-/:WDK;OOT3B:[XRB:AA\_?'AX>-#A"_J=?__A*+#&D%J$'[A]QX(/ MX##9!Z/?;7;:K0]0AAA&L]WM#$S#,-J]0>M#-($?.ZU>US:[M_R'T3PTV_HX MFBS+H9^H 6LS;J,)U8V290NNR6E01YZ'$,"*21=_I!.;<4W%7)Q-&Z[2'UD^ M*@$9)UH$R%H5[W8AYF6)62X+.V8>LQW@M%2M+Q(ZJEI;]M+3+JW(3],2HYVD M:7]R^_ 4C/,WR*6IP?GM_%C "$#*R+$0]T6;^BJF@TM+$'S2 HUH17(=MG[\_>D<*> M6117++\C5>/"C^0B!O6EXNHRI%=PDFF?@1;P40K"*_^2 WH%A+L"PYH>:P MP 3S6]2>.WQ8@G$6T)2-I%2V4/=/WTV%_#7#2PQ6.!"3\G@QC MD<22B1'$7O1DFV!7A>-5\]-CD+0IB%I":^F<#3$2^:55DS(P;%71WSVC8LKK MRY+I %6D\W$M?PW\;[XOLBD#.R*?H+J13';DH\13=?GNX_X) M[LYR1%6.=:_J;?6J5FG(8KLJWT#27M@[RGU7WTEXMUO#NS6\6\.[-;Q;)7AW MRSWT5>%B*VWT-17^#G;26X;1[:B=]+[LI/=?LY/>W[].^F8+](YQT>D77)-: MUC(]86#I$E*YFPEEN9 ]:F$\H=1;KLA6U]!*UHL4#XL,&U(_8.]'(N4)^T&) MD6.LEG$:G9,E0EV29U%:@)LX)Q=$4D!7*>[+4K"\B?A0DXU)VEWZW MZ2E7/7/-\9^*PU7>C_-,D'')ABS)[[25^T>19CT F]9F.,KV5^FM; BU0!S- M;[!=QC[EXCG]#(?U]XT$.KEDL%Y6+H[4>/@*[E4HY9B8E_2.*T;O3P40)IJOE3^16%7_ M56<0FYU&T^@7J>-F.0?R/L::1Y6^&$5O[:NBET/8%A2]W^@U>WN@Z!M'O"32#CJ]1L? M8VJ+=6J5XL160O6^J.TKD+(%M34:G69WY[2V0G&WREG'1G7V@8S+[[.C&]Y. MQ5U6K*X8&PH.W_M1I/0:K4YG#XJ4\D/\'FM[]4KRYR8"[<:@U2H\$ZB8Z.NB M7&0"IZ,1'3OLCVA1$(P?%T2)Y:T![6[A>ZL/"ZNK]0(R@/+@NE=/!THFM?C< MP&BW=ZUDJD 6\$8TO@*D%J_Q;7/7%+Y":4"5DZ#YS.!8) '.*X;_*K.G[@GL M9T_@F542%$F#SCX4215(!_97W:O7%'AFFFLV6D9S#[2]0KE 94A="/RKPGU# M&W)XI2E=L-R/N3%O@3VX]Q^Q!G*1#[0+H&OLN_A_%C% M7W);T6\X_&T=MS3'9F6/QBQBX=;ATX$W'8(IW804<^^*%X O<439YH: Q>T=5; MZ2O 1C1QPK2?/8;;68:1;WT_%&=/X$:QW M9E+RBI[?7O\'&'>(M1VR*3KNE M3_"(C/]D%^2)UXA4*01G6^:[#B,=3(AOZ]WDL[IV_(2':?_SC$EVX-QSVO.4 M>=GQE/)(%=H@'0;.(5F66TW_U,JST.;9(W3>-E2$=/!X*$_3%'O79^<&P NZ M&EGIVQ&W\S>,<^"EMY)6; 3&FXTM)RO$2=!D4\GYZR;],XG6D%? M[\GO;F *N-_M1 C2:,T]*-6YN:C.:U68'FVK@LT_.N)!P.WDZQ'[P<-G:;VA M#W)#WK+JK]?!@6[FF>^/1B'Q&1X.(GQY\N;P,:LR]7;^/6)S8CQIP0^2C_5T M(W>3C#[;/>UO@_#S^%*X'3!,DP[K)3)^ZO0RMT)G8R"%*XAKT"%#CKA,^CE0 MHD&R$[)RV@G>=,5L%C3 ?77TWJI[CF?,C2="\4 W.KEW3N, ["842@$^ M1> M'L"&;8UIT:>N;=4?IFPWGL_U5^;'BS.T=4M4=D!RJW*U900)_Z:F2:L"%+P) M*A<[%+^%',1LBTW&(7XD)M8>@-FD$0N=K,-<=Y8X7AA$=CR7/%Y&G%[$@TER M+!*\1LD=&S(@4>Z",X5\S^-T_I$XD8=/IJX_XUSD@>)0(Y:RY J[:\3#D:B@[,6?52*6;G;LKS-D?B M;-DT0>AU]#K3 M**;,A$(E9A.'/KA*.OQ<'#R#U^7WD_,7V3US7%&KS^2Y?OAA_D-F& MQELZA M5,X'#,$D\*AW/.HZ:5/(TX=6\4\<5#SV@6+(_.3IZO+(W@U/+!)7EAQ;)+>M ME6<7Z5MJ/&^F_I>CT>%GYI* K\<<$INC@ Y)G@B?7XX5_!.X[M/17MR[8V+2 M/^1=AT,YTI!&JB2ARI@;XLCI$9TW#<^=17R2;!3<.F#O#]KOLS."L8;G=[$\ M&/3Z\(^R#HFZ.KLY.SXZUXZ.CR^_7=Q 0-.^7IZ?'9^=7E/(N#[[]>+L"]P" MT>3W;R>_8E@1?SF]OCG[\^CF]+HL85T*,\H.:)9R 1,)\3QRX2[$.>QX*#2U MED4+<>&P[V_ZM:[X+CP)=(JOE+TVE+7,VUTNSC>G)WX].OJJ:U_IQ>EII6BJ M2X>2GI$=A^DYKNEQJA#NP*M,:*4I.9\PC"=3X13$4;03J)@B>GM 'H#;RMG1 M6$J'S)4/)]WSQJHV)OZ.;Y(^!D^6E6>X JET:.[2YW3MGUS46#8=J*WR)Z$D M(X3.#D[)2$[)"QQ")K6',1=N;<7M3BA/U/N! O-81(,,,BY"K@DJ#B:'9^7A M\),1B,-SD]?'XIQSVZ$CX^&O&[$E*!#&(&.!'LD6]D=K+Z NJX(;\@:(211'@ZE\Q MU(\\ #5?$4G^HI[:D+L.!_))^:+<46ZKQB_BUL2'N)Z*61YOF#\V..-[K,2W M:=Z.D-"E7*UNCB3"?^9RUN0 "8^6\C/,J\/*(PNU=:<5YL/^MAK^F\6;*XX5 M JC>D>T+!PO:< 9V!S\>95SX&O@>_&R5FPVD@W7$ ,E').-6 X,ZV$5#%I8K M9F<*!TUG&MA-C_Q9'QW M8GR6&%^#_FQ\FLO@T)Y^AX@ 0@$>8[KQ.0X=/#%=N\9+\30$I:7P:S8-4SO M!^27?K_\?(U_E&]^3P>*A[$U)M]*]0DD_0[V.M!T^0^>1!ZJ .Y9X$ =+",] MCEB&/:ECV6'HJ%<$*TYC*",L21)Z$'+74D[=4Z%H\+>&-HPCNMMU M)HXHG1K)B9W4T_1 Y:('/ZLPJ+68Z/0R-6[0^X9<(8$J,@KM,Y%\$7B%[\ $ M( )CB40,R)$,W[D6'77Q]7:SG21;URP8,A#+X>4/E\\RD33-!KS#CBUNYQ(= MI=P*^!T+Z-QVD( 58S=@?GH&&KV7"2BIT'A^>"B&(<1J2(F 8N]PZ(CCX)E] M[X1^,-/N?76>,8SQ%6JHM7"WI@-F>$O3L)_2MT9P:% M,]@()K% )(0WK)=0&Y#&2(0@PCD$(BFF1I.R"]GC"TG\'@R<\CK@5-ZS@B(@ M>F-380U^CV"BD!KI+AT4^\C@0" V=]E,:!=Z[01*X(&0TY+O:'C!E7E,=O6! MDD$RLP<8(YD??0%J@GO,7%-KH@29XC]WT^X#]1'0^X?"XKK0D\"+#?W$K$A.$UK).D]E;R'#6A(. L2G*;2(S<(U3VL)G(^\@KT5J5JIG':UP?M#-W(6PE2 #3QYZ1G;6_7\.(;L&,?5KB*F&F&J(J>H0TQ91 MI=<9_((*J^,OQ+>NQ[^8YM@_O[OE V,X,EGOEO=Y^[;=;W5OA_VV<6LTAUUS MU#>Y.1R]$X8BGCB[.?VS]=>WHXN;LYNCF[/_=PI* +^>R]]0.\XOK[]=R8=> MO2+%\"C7D) =*)3K9&AJ\-QC< MCIIF][9MM*S;86_8NS6;9HOW!U:[;707=+)]?'EQ7QZ@H*] M[72;@VZW?&5LZUHR0%+$;(@E-6[NF1NGG=>3K%@FF-IW1=OV*TXXLN%RA6%J MJ$V2MA.Z2:/W"CD6,17&++OWU):R3YMP8H?ZC,#,N:!+[R 4*:BT'%GC61H:?%#32MYT>;8DU8!]]6T*&T32]6$::H)V@$3C2TQ MAT_-&Q\;?N(1#,]9? ^&!P*A.D^U794,'?9+JC[0# MV6M3;TSZ;>]E-3@WXW0*17B,K7CP3;GWXTC5@>K:-=*T ?VRWPLL%2Z/>W2[ MP.R6N3R!@V7H_G"FLA[9)MPK+C8 2;N$>D'1/W$B14=SHP>N'R30=G03K!$P=FTK]@@I9=-4&H;"$\/L@8UQFWX<0M(D]N"+LE-"O9HISNP('.RK*(:+ MIJ@-6>C(#@$,9X)&@V/#A1@PJ'"NI9<)3]<^T\JK>(HX)#ZN&GY!1HP:(EOV M*6;V#'M:HK=B0DEJS.5".,IJF3-,9CW@@(P2&IZHKC#F*DD3R@H72C 0RR/0 M_FCQA';.&37!3ASIZ*_U0'?UU*G078DW0>W[G7DQSB0WC,29,+10U\7_<@;. M0EET<<.ML>>[_AUUV,\\JZ$=WVC71]?:;\!=X(BXJ@M]6O(0W7M@^:Z;./4$ M69!WJT/[D\VTMA@5->"D-FA@P2J*/=EH>^!CYQI MKO.=BT;PPOV-IPVZ)%L^1YQ'0B$@F=/Y=.&5LK\75$.(RF510@&SY!S!%V14 MM@^44"><9A)*O<+9C$N<.&(ATX#?T_03\ D\"/Q 3BN!7T;8R(L( 0@G@"0$!97E7@C6 5]CFHLAP$;?H[R+9N& M"(#1 OA(TF="NF8)\^3D*6$K;NBCHQ"+O9/U&I1ZI-B3,M.(#;$6P5&0.W'& MOD\K?48QS7@BE4HG;*'*"3) <>:DC,.1@R.X"))R7!XBIKM!RD)K0S!E(F#& MUNY\&*G,*%&B4Q^;H8[P5H*#0/+GC.&"4RM4PILMZ#8(1,& [)@0GU1<9!*$ M# G)(H42([)Y1"ZW2*]8?,MM&[C,IB#,=MJ$U8-@!C4$4T,P>]QY5T5IZ)V$ MO:+OV1T8+=8=W/;;K'_;;MO]VP$;=F^'MFD9([/5-=N=7-_SZ]'5S=G9YZ1H/3E-$IC5[LCAKGI[\> MG5,W])2@KUNCV3'[%>C8&KI&8].4P56W"WJ%VV6(@4/,O<"Y1[UTY0'&\8MD M4N*Q.GDC*]VOETQ$A##_%5.9LP8M;M",=";+J@F)FIQ-/':@/';H57X -]#' M,)%P:.^,@-/4;(LO:_]W.K;1X=W>+;?X\+;-C-;MH#?LW/;:9A^LLM/L\/Y" M^]\X0M3FR]'QS>75]>W [+:;1@5TZ$@G-$F3 ZNN_BR9R)Q.@E !M6])N?-\-92R8WI^L:YM_[J(*FK_ZWN$N^_4\6@-;* M5YO+5-,TVG;3;HYN#8.-;MM#D]T.VT/K=MCJV<-1J]]KF<:":G9/_^>WL\]G M-^#:6JU.?U"^6G9U+1D344<[IZ7J(7;/PTX4FX;\8_*#^F5,2F04PXAGB9B> M3X":%-WR"9"XED]>-M]!%@)F<_#TIN]U:33M$M[RF5M?BF0=DN=G;RA= M&O4GM"Z "O^G;)P,N7]>YRM&EJ$;&\@OHT)H[RL2L:K5N+H:R._]G&='(7L> M9]R0JEPY=K#D,X.&8VY%MY;$@ DR%W73&AV[>^CW&) *19'IMP MV0]TY!J%!('Z[(^.%!1=@9E^Y[0'$I![?GY,Z%7 Y>(.EFL,A_P>U\&*UB#2 MM/!)[0!Q::)+QC,-?$""X"Y@J0*"FD^]^IC4T6OF$/!TNH4R&0 )2"%ON!%[ MBP0F>8*MAL2_WNOSG80]\;$M8/#_K;UL[65?Y&4M<#.':"?-;JOY@_]H&?:K MN;A'A<6U$]^*L5FZ;RI[??Q;K;)[I;(W[(?O M^9,99(D1]\2J$6O,)VQO=?CXZ+S6X7W7X6/F6LE6M.>.]QTGKN^M1I^M\U^@27(#MO0Z'/CS[7"KWO"GW.AMS=?UW^>G5:Z_*^Z_+7=,[),O>L[9=. MMVM]WGE]/J95VU_9G000:=L#)C:5/&$1T[[@)AT'.!7=QHGCRLX9JBG84L/? MKSBI6EE"]'QQZCCD_$H^NJ*L,]*- 9\L68N4GX>]R2J[Y(THIX77X8*UIM[E MR8Q=/&HY75U'2R43)FLLCGRMJ36S577BW\TFHJ<+]M;-'B60B-E#>8+3\URO>]WC%>[:^ MO=T:M7A[Q&Y;K-N^;=N=_BTS[.9M=VBWC29K6[QEYE9/XEED1S>TCV>KVVX. MMKRF_2G'6F9#V^[>2(^LLU>F#BR<3I%,'5@195=LL-B0+[K#(ZCQU;@SEAWC M,8N:-D>0=%W62?1$Q'8HS2]#XH ,8^;4^H M%[H"57H2\D=89"07A#>B*_E%JEEZF2Q17? U49 ,3"E_WFU6WH,WZZXJ;^>< MH/)R+#]'KO^0&&7R^R%FQA^%=W\ )JUUK.G?DYVB/B7)8YY$M0;;M'0W>WK' MV ':7F4W(7'C$_HCSV!X7S=6]HHJQ._GD 8%1W=E&ZC*M#VE8[G6&;RBIC[E M$(^B_$&UR8,@@Q=_?F>^6TMJNZGW7YW4)YP>(;N6%\>ZEIV7O0OJ>@*%]4?M M*+Z#[$=.F)2[<>R6*A;=)5_C^;= SN?9QZY7\PJX- MM1G49E!YW.A''PR5_/[(L/$<=)][6I7YM5CM#SNZ5^GLYY?N9R]&, ME(*T/'W"O(\2AE[V8'=1W,_GV:ZM S *70>@3H05D_!S,V%SE[ R;0GO-[]X MX-YW[!5K![+I<$/?GL%_QM'$_>7_ U!+ P04 " WA M5Q9RNZ]<' "0 M)@ & &-DU:?V_;.!+]*KP4UR: M;=GYT4OM-$#B)E@#;9(-7!SN3TJB+5XD44M2=GR?_MZ0DBT[R3;MI;GL;@+$ MMJCA<#CS^&8HZNAO[?99GO \$C'[9?SE,XM55&8BMRS2@ENTSJ5-V%@5!<_9 M%Z&U3%-VJF4\%8Q]Z/3V.]W.A_?M]O$15 VK/BKOL\.@UPMVN[N[K+O?W_W0 M[_V#77UAVU_'PQTG_>ER./[7U9D?]>KKZ>?1D&VU@^"?>\,@^#3^Y&] ?8^- M-<^-M%+E/ V"LXLMMI586_2#8#Z?=^9[':6GP?@Z2&R6[@>I4D9T8AMO'1]1 M"SX%CX^/,F$YBQ*NC; ?M[Z.S]N'D+#2IN+X**B_O6RHXL7Q42QGS-A%*CYN M95Q/9=ZVJNCO=0L[0,\ MS=D;MMS&=NDW^MV_SXH>!S+?-I.Q<3V#SJ'AZLF M+:?)LDWYJ?6U2+F5,T&Z&UJC5'#=#Y5-!IL#W->SJ/M-5&[;$Y[)=-%_-Y:9 M,.Q"S-FURGC^KN5;\&V$EI-W R=MY'\$5&-Z5MS:-D_E%,K)UH&??[^:>K@V MR%RXZ80JC7'S[#:1H;1LK]?I'04A_%3\!*LB0%3H#;-(_$'+9M+ KE3:13^1 M<2QR]'C[YG"WNS;?@,\_RX-S73=LEZ'C5C"9X)I,9-B#L*UB33LUY)K0"U=L&M1*&U!P^Q< MZ8SUNNU?F9JP(8^U8+\ 9B A^'&41YW!,QK^W]&2L,FBOD1F@')!G/%ZS,K2X%K$3FD$C&;P3&;>@T:(MA#(9,B2IH#!*(I$:VAACRMX$EL=!L MGL@H8::DCU5_+!Q1*:$)9-(@K1 ,?'[7PA0B<@:2W@*FJ1C3G*%;S,)%TPVO MB"'+]GX',8)-9(Z84'A7,6@!+A#';=VX+_,)EBBG/([?45K&T(DX-QS> D8D M+>L"82*$$?)0A2TA5$7/; P-E,:N0&B11)E" +A1"*X;SCA[(FX2-DG5W-2@ MTF(JC47)91FG1F\WK&PUL&%J8^Y8^PH/LFR_P\9KOGS[9N_#P%3AKQ(8+3\U MF4A<;IL=Y^81XUJX@") ,DP%.9X)H"A,I4FH!XEE8!]B(+J.I8E294KT(U[2 M*O61+;1"58]FP[81R%@ &3Y:9['F_W#K:%MZ)W$/NK M'3?\)BH@0>GG*5/O'S32K/X_V'=F;O,=.-I &)YV'/SMZ+0H/42\-(_O0CP= MBM5(GOE5J:$ ZY/\0ZL>4B)W>JA26O%%DW/\W@$PJJA_%>=6Q4=T4X([8(M1 MJ8S=#L^4H9&QY%K2!*1/4(X%<])4&DH:#NS&91C'$=B7P2#LM%RG M6*C,J4 M$[5A6LZ(5?)!#Y_*FAD8OT)!@F ?]!?QL['-9J37 %GM#MU.CS2]8("&.TS, M>%JZ*)*[Q62"W('=8XX*Y&X.J'CK$9CTE_C$\]H2KMP^,_9M7P MI;2@O#KY=N7"PCICNW56^0'V#$CY*Y*^#TG13AVFN^&FPKC*,>[./8B2M"W. M?9E" 684LD;UXC5Y4@!YJ2@J-86TP11W=&;*6+32EAN:3 0UO_E-$=N^M\,$ MN$3YNR%;F8S22+AJG@K]O%S:M.,M2KA94BH8C#LQL '/UQQN:WT$LJM%4L0:34AM2(,@L6C8]2ZFULK MVSBRJU7:AXMIQ7BQAFU.Q#=B!_0RQ*[XIP]?K1/Q6 M2ICN5D691Z[XWWFMWNZMWFAC1565!$BHV*6R.9("(:U2W+**F@M^0SE+F)HP M?#WF=OOU)NN[@%(5/'X'< ][\!@=C5B2QP.@\LZE#L"&TD"T2YL&.=.4&:8/ M[[BI5&1][V;T-27^6'%%F6^BL8Y;B*9PW ,\N&A(5W0ELB)5"X&[\T1Y@N)KL 2,GB"U=E[2PU-WG$+[7%%W# %>H=N12E-> M&-&O?S2'?H_Q$O_\G(Y':,;PY* )&EY:53?XDQ?7LG8^0V:OG\Y02^.P98LY M%'S<\L_SZ>1(UW96X_?\U&V\G#@E'106%8"L*BJ-!U#8\%*"WO\Q#[N=** 9UJ;4ZW/M^J/FW\N(G] M2>>U_X><6& UP?0)(/D3*.(3Z+#_]DWO?7=P4D[!K:S7:S$Z,'9L\"2(^PEF MGR[ZWV4?(:?BL5!9JS)@XY:Y!RGL3=?]/>\$ A-L'*BMYO-T@'FIX;O@F?CA M -*R^S]'[Z\;N3&]H/']H7M6&X>)%!-VOBRT+OU6\Z\4)L_H+SM,VU=:(D % M(G0G5CL;P0I<15JGU1=2*CW4RU*O.82F:E^S5#-5XA6K]152N[ M,"0%K;2KZ^Y:^>Q?4UJKG]>:EN]$%=C&M'U=PR>HD?M\IF1U:\6_;MA+^5[@4:Q/ EFPG*5(Y#="X M+F:L3;/ W=[[D9).%A=)5$G*CM]?_^Y(R9:=9$V[-,NV!(AM4[C=T=1 MQS]TN^,BY44$,?MI^N$]BV54Y5 8%BG@!EL7PJ1L*LN2%^P#*"6RC)TJ$<^ ML5=>_\#K>:]>=KLGQZAJ5/>11<"._'[?'_0& ]8[" :O@D&/G7]@NY^FHSTK M_?;C:/K?\[$;]?S3Z?O)B.UT??^W_9'OOYV^=3=0?9]-%2^T,$(6///]\=D. MVTF-*0/?7RP6WF+?DVKF3R_\U.39@9])J<&+3;QSUX+<& M)9(70RNMQ?\ 5>/T#%R9+L_$#)63K4,W_Z">>K@QR +L=$*9Q7AS?)6*4!BV MW_<&QWZ(?BJ_@U410A34EEDD?JMESQ_=C3H[0^/?9)^ M2$O_R(&C\<5T\FXR>C.=?#QC']^Q\XO)V6AR_N8]&_]G//HTG?PZQF:4&%_< MLX-O=^>#>F_#C$F'_<:5@H*=>NQG7L2@=(=%H(Q(ELRDW 3_/ ^T\/-[I6FF MFY;U/39A*9\#4S 7L$#.-:G0[)>**T1;MF074$IED(G9.ZERUN]U?V$R82,> M*V _(=*0A]"/DR+RA@]H^.-UZ7@..V=&ILB]$8'#(CMJ Q2" 2"A,VBF$*UV@)+@^V2$64,EW1Q[K_ M C#R3@E-(!<:,PO!P*5X!;J$R!I(>DLT3<8XS3EVBUFX;+OA"3%DV?X?( 98 M(@J,"85W'8,.P@7%\;9JW1=%@DN44RK'WU%6Q:@3X]QR> 1"-Z!2,!/:8-5E M&*=&9S=:V6EA0S?&7+/V"1YDV8''IAN^?/YL_]50U^&O$Q@M/YDD B]W]9YU M\X1Q!3:@&" 19D".9X H"C.A4^I!8CFR#S$07<="1YG4%?8C7E(R.EJC,'K:R1ID<,T'"/P9QGE8TB MN1N2!',';B +K$"NYX":M^Z 27=YXDU^R5D=6F_ M)=_YD\YY4.0^WCR, Q]^<\5EM](K*'?6+$&DU8;4FC (%G>.4>=Z;JUMXYA= MC52.VTC"-J#"''>+!N!6.@XE5Y;S8H&V616["#MD/TWLBM^4X9MU I\K@:;; M55$5D2W^]YZJMQNK-]I8454E$"14[%+9' G D-8I;E5%+8!?4LX"W1"&J\?L M;K_99'T54.J"Q^T ;F /'F-'#2ORN 54SKG4 ;$A%2+:IDV-.5-7.4X?O6.G M4I/UC9O1IY3X;<459;Y$X3KN8#3!<@_BP3YSJ8'3<>E#%'.9S8%R2,%G]:,C M5=,5Y&4FEX!W%ZET!,4W8(DPNH?4ZCVFAZ?V1(7VN=!T#!&\H+J1S#)>:@B: M'^VA7^)XJ7N$3B M<8_TZ?!(-7;6X_?=U$V\FC@E'2PL:@ 96=8:#WM>_^#'MLOJL1OWM8Z 6LHI MC/2HIG%C<]U=*%X&(7+&97>!/OOBL=+J/@]Q2U<9&-+9UO:,FU.N^M/$=YO; M/W1>!P?>T=\R9KY1!-;[ >9WX(JWR(O!\V?]E[WAFVJ&),OZ_0ZCPV-+"_>" MN^]@]NDR^"K[:OS4G!9*8V0>]#U*'_:Q"GO6LW\/.PM?^]=/V-;SNE?L/-9( MGO$<_DPL:1W^Y8'\MP=Q2J]P?%,4']3,42H@8>,KB"KB>/;1;4;9ORQ:CNX? M?;1VSY7 DKG$FOE:R/:V0N;;TK7)O(^DIFX7 ^FJ7@UY=#E3LBIBJJVE"AK& M:KUNM'FC+F@&:$@F"NC6U[V-.MN]TK11:&\TK=Z?*G&_TW6E#T^PF [X7(JX MCO/1D3=8R[(M>)_\'4$L#!!0 ( #>$"U66.F4I+@8 L> M 8 8V1R92TR,#(R,#8S,'AE>#,R9#$N:'1M[5G_4]LV%/]7WM+K"G?Q MMX2RX%#N0@A7=BVA8&[KCXHEQUH5RY,50O;7[TFV@Y-"MU&@]#H.0BP]/;WO MGR=Y_R?'&64IR6)&X6WT_AU0&<]G+-,0*T8TCBZX3B&2>4XR>,^4XD+ H>)T MR@#VW&#']=V]7<4'@=?Q.!_R=L+,7XI>S][!U&0VW+?71 M>!A]/!N5NYY='KX[&4++\;S?ND//.XJ.R@ED'T"D2%9PS65&A.>-3EO02K7. M0\];+!;NHNM*-?6B.EGG8]7/=QY4>3F_0 M7#L+3G4:!K[_LI\32GDV=01+=/C:[?5NAA2?IJLQ6:H6*B:(YE?,\&YPC04C M*IQ(G?8W-[AM95ZO2V2FG83,N%B&KR(^8P6H%R"ZV68HGU+2+QEP M.#J/3HY/AH/H9'R*F7%^<3DXC2 :/[$UOR1CT(-+]\(=NG Q&EHY@^YKO_V, M)!Q;)\'BN<(*C18@&871-8)/ MAK")&\]X41@-\-=04D1-2)EB*'=3Q%*;6D+4H0V'@O",(0++!5.HUC#E+(%C MGB&&)#I\P.NX3MYI,!(.) M5)2I-RV_A783HL+IU7.1D[AZQA4*_VB]387'/12@6E4+XVG:)+PR_HB)J!2P MNF [T5^D7#/'[,!"=)(B.'0GSX>Q8]7,8$^AY2QLC)CVY@Y#MPZV@FUKL0V] MGI&$)AZK I#,!5:#&%-B@[K/60-B!N4=P.<:Q0F0X=2W23%5#_ MV?&-%*EL:IF;W?Y/F8=.F<[WD#(\0[2;$9L'B*[: S%46CF$^$&7G/%"I,Z M;3--\"2(RU :Q!VTJQ&(A4!GU-/ X@ +GS/$L/@WW1+"C@&#TJ9)##/ M<<2(R0KM/J 5O[JC,&=WZX4W+1,'K;I@5ES*NNG$4@B2%RRLOS3EV,7-T_*T M8,[\)BG1*>NQVPSF\C[!C#2N!VS=K7>MN 6E5G>76%F7TIV>ZW=>-JVQ4;4: M5Q0-YA(9)D(N:@O5SXZITN%$,?+)6: %_O':8S5/)H44<\WZ=1U;5_&QG=X@ M+(W7:?JZO .J/K\,7C>6=?=VO@/#WDNU7[Z/H/E,-PLTZUW*_3/C$4+R".MR M6)XS!_,I%G<(@O+P>5M_<>_0>P3)#Y?A?Q.Q#*&J2E;=3)!? SJ44WCAVY^G MU<$KO(US]T:+\E"1\XS]>$IF[&L\:1+Q&[OQ1W=A9%YQW,N'3RKF&OPVCWIX M^+"(8.[(;[_U E@#YQ_)N24X/'OG;ITICB[+T6>?>6_[CH-?B=//I+MOM@[I MJKV>D/C35,EY1DUC+U58%[C&V[OUB:K]Z: @ JN24SW7);'YUK ::;XTW'P= MF9,I<\I&B21X(@_)E>2T\G.OYW9V5H6X'/-M.)>O.>U[TX._ 5!+ P04 M" WA M5FLG9)/<% #"' & &-DU9>U/;1A#_*EMGDL",];*!&MEXQA@SH4TPP6+2_'F23M8U9YUZ.F'<3]\] M/6SAA+0EA) V&6+0W=[>/G^[:PU^,HQ)$I,DH"&\\MZ\AE $^8(F"@))B<+5 M)5,Q>")-20)OJ)2,P,Z5-]XMJ$^F8^_]Q:2\]>+J^/79&%J&9;WKCBWKQ#LI-Y"] M YXD2<84$PGAEC4Y;T$K5BIU+6NY7)K+KBGDW/(NK5@M^)[%AJ=%#"L44I\.!5?\N:7T1KH:#D%U#IE:<'K46 M1,Y98BB1NET[57T\:>'V%LV-L62ABEW'MI_W4Q*&+)D;G$;*W3=[O#:X!IT2ZOE!Q?_N"3YU,ZW.12)01D07C*_>EQQ8T@W.Z MA$NQ(,G+=KF"OS,J6?2R7U!G[$^*K%$]16^403B;(W,M:[_4WZU4]V]=LJ2% M.K[@(6Y.;F+F,P7=CMD96#[:*?T*4@48HE1NB:7)[Y3LFF4H%V=JY<8L#&F" M)UX\ZW7L;G]@:>K'E/1S!AQ/+KVST[/QR#N;GF-F7,ZN1N<>>--'MN;G9'1Z M<&7.S+$)L\FXD-/I[MOM)R3A: :CD^F%-SEYHB:L#7=H'\#T%+Q7$YB-+H]' MYY.9,?WM]>0]C,:>WNG8]K=,I&^5-[_GF6+1ZK9D9PD$(DEHH'&O+$TJIO V M)Q*UX"NXI*F0"D0$8Q)*"J_0V(BX61O.DL"$'4VMI>_8_;%88$U;%4].?Q>+ M%IP*N0#'-MY")&3!.44Q10@T"6GXXIES8/=_R1-:_M6UVZ +7/E$,H@8KPNF M/CNC02X1H=$") EAM>P6VHWSJE2OG[.4!-4SGI#X/ZROJ4IR M#P6H3M7"6"IL$EYK?P2$5PH4NF!'T5_&3%%#WT!==)(DN'0GSX>Q8]7/8%NA MQ,)MK.@.YPY#MX8[SFYAL2V]GI"$.AXK#(ARCH 08)9SG8+KM)3TCYQ)JIO< M3 ?J)NQW"** !&=_)]Q=!_5MO$QS<\!A*0S@F M099BW&?MXE3$$AP!]3HR#(NAHBA92)7S,DL$5L+BSJS.C*I^FD\[^A^G[(P@ MPST]^>*XA,;DI9$8P@Z"A\*"G2DT?3%85_@3@K^Z54UCK+@^1=)4BFN&_88N MMPU#%QY9ZO';UR!6^1V9;--$N4Q8%F\8_)-&1 )#1Z.4401YBBM:3)HI\P&M M^,7.U&-QX86CEIZJ6S6X55Q*C#,"P3E),^K6?S3E.,#+X[(1U^.T3B!TRNUA MW=[ 4C6JZY7&Y%U@9'UKQWL]T^X\;UIC"V$:TW^#N4"&$1?+ MVD+ULZ$1U?4E)1^,)5K@;[]16.\3/Q,\5[1?8\YM% #F4A/+.+?X^K@Y59'P^56S7]H8+G";ORG"SHESA3Y^(W M]N0/+PX]_2W^O=SXJ&+>\8T-_/\<5L+^DW?8SH5D.""EV-A_Y+7=.P:@L@(_ MDU MTGS7M?T6+25S:I0M$(EP,G7)M6!AY>=>S^SLK?&U7+.+<"[?SA6O^X9_ 5!+ M 0(4 Q0 ( #>$"U4CL!0 /5 1 " 0 !C M9')E+3(P,C(P-C,P+GAS9%!+ 0(4 Q0 ( #>$"U67]6R]RA( *$7 0 5 M " :<4 !C9')E+3(P,C(P-C,P7V-A;"YX;6Q02P$"% ,4 M " WA M54&#C*M(W JQ@, %0 @ &D)P 8V1R92TR M,#(R,#8S,%]D968N>&UL4$L! A0#% @ -X0+5416"G>U>@ *^L' !4 M ( !J5\ &-D$"U5C+0HIB5, +)L!@ 5 " 9': !C9')E+3(P M,C(P-C,P7W!R92YX;6Q02P$"% ,4 " WA M5S&9=W\1% @#E[QP %0 M @ %-+@$ 8V1R92TR,#(R,#8S,'@Q,'$N:'1M4$L! A0#% M @ -X0+5<6$"U7**H3'Z < +PF 8 M " 5%\ P!C9')E+3(P,C(P-C,P>&5X,S%D,BYH=&U02P$" M% ,4 " WA M5ECIE*2X& +'@ & @ %OA , 8V1R M92TR,#(R,#8S,'AE>#,R9#$N:'1M4$L! A0#% @ -X0+59K)V23W!0 MPAP !@ ( !TXH# &-D